| 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 | |
| 11 | const unsigned MAX_SUBTARGET_PREDICATES = 161; |
| 12 | using PredicateBitset = llvm::Bitset<MAX_SUBTARGET_PREDICATES>; |
| 13 | |
| 14 | #endif // GET_GLOBALISEL_PREDICATE_BITSET |
| 15 | |
| 16 | #ifdef GET_GLOBALISEL_TEMPORARIES_DECL |
| 17 | |
| 18 | mutable MatcherState State; |
| 19 | typedef ComplexRendererFns(X86InstructionSelector::*ComplexMatcherMemFn)(MachineOperand &) const; |
| 20 | typedef void(X86InstructionSelector::*CustomRendererFn)(MachineInstrBuilder &, const MachineInstr &, int) const; |
| 21 | const ExecInfoTy<PredicateBitset, ComplexMatcherMemFn, CustomRendererFn> ExecInfo; |
| 22 | static X86InstructionSelector::ComplexMatcherMemFn ComplexPredicateFns[]; |
| 23 | static X86InstructionSelector::CustomRendererFn CustomRenderers[]; |
| 24 | bool testImmPredicate_I64(unsigned PredicateID, int64_t Imm) const override; |
| 25 | bool testImmPredicate_APInt(unsigned PredicateID, const APInt &Imm) const override; |
| 26 | bool testImmPredicate_APFloat(unsigned PredicateID, const APFloat &Imm) const override; |
| 27 | const uint8_t *getMatchTable() const override; |
| 28 | bool testMIPredicate_MI(unsigned PredicateID, const MachineInstr &MI, const MatcherState &State) const override; |
| 29 | bool testMOPredicate_MO(unsigned PredicateID, const MachineOperand &MO, const MatcherState &State) const override; |
| 30 | bool testSimplePredicate(unsigned PredicateID) const override; |
| 31 | bool runCustomAction(unsigned FnID, const MatcherState &State, NewMIVector &OutMIs) const override; |
| 32 | |
| 33 | #endif // GET_GLOBALISEL_TEMPORARIES_DECL |
| 34 | |
| 35 | #ifdef GET_GLOBALISEL_TEMPORARIES_INIT |
| 36 | |
| 37 | , State(1), |
| 38 | ExecInfo(TypeObjects, NumTypeObjects, FeatureBitsets, ComplexPredicateFns, CustomRenderers) |
| 39 | |
| 40 | #endif // GET_GLOBALISEL_TEMPORARIES_INIT |
| 41 | |
| 42 | #ifdef GET_GLOBALISEL_IMPL |
| 43 | |
| 44 | // LLT Objects. |
| 45 | enum { |
| 46 | GILLT_s1, |
| 47 | GILLT_s8, |
| 48 | GILLT_s16, |
| 49 | GILLT_s32, |
| 50 | GILLT_s64, |
| 51 | GILLT_s80, |
| 52 | GILLT_s128, |
| 53 | GILLT_v2s1, |
| 54 | GILLT_v2s64, |
| 55 | GILLT_v4s1, |
| 56 | GILLT_v4s32, |
| 57 | GILLT_v4s64, |
| 58 | GILLT_v8s1, |
| 59 | GILLT_v8s16, |
| 60 | GILLT_v8s32, |
| 61 | GILLT_v8s64, |
| 62 | GILLT_v16s1, |
| 63 | GILLT_v16s8, |
| 64 | GILLT_v16s16, |
| 65 | GILLT_v16s32, |
| 66 | GILLT_v32s1, |
| 67 | GILLT_v32s8, |
| 68 | GILLT_v32s16, |
| 69 | GILLT_v64s1, |
| 70 | GILLT_v64s8, |
| 71 | }; |
| 72 | const static size_t NumTypeObjects = 25; |
| 73 | const static LLT TypeObjects[] = { |
| 74 | LLT::scalar(1), |
| 75 | LLT::scalar(8), |
| 76 | LLT::scalar(16), |
| 77 | LLT::scalar(32), |
| 78 | LLT::scalar(64), |
| 79 | LLT::scalar(80), |
| 80 | LLT::scalar(128), |
| 81 | LLT::vector(ElementCount::getFixed(2), 1), |
| 82 | LLT::vector(ElementCount::getFixed(2), 64), |
| 83 | LLT::vector(ElementCount::getFixed(4), 1), |
| 84 | LLT::vector(ElementCount::getFixed(4), 32), |
| 85 | LLT::vector(ElementCount::getFixed(4), 64), |
| 86 | LLT::vector(ElementCount::getFixed(8), 1), |
| 87 | LLT::vector(ElementCount::getFixed(8), 16), |
| 88 | LLT::vector(ElementCount::getFixed(8), 32), |
| 89 | LLT::vector(ElementCount::getFixed(8), 64), |
| 90 | LLT::vector(ElementCount::getFixed(16), 1), |
| 91 | LLT::vector(ElementCount::getFixed(16), 8), |
| 92 | LLT::vector(ElementCount::getFixed(16), 16), |
| 93 | LLT::vector(ElementCount::getFixed(16), 32), |
| 94 | LLT::vector(ElementCount::getFixed(32), 1), |
| 95 | LLT::vector(ElementCount::getFixed(32), 8), |
| 96 | LLT::vector(ElementCount::getFixed(32), 16), |
| 97 | LLT::vector(ElementCount::getFixed(64), 1), |
| 98 | LLT::vector(ElementCount::getFixed(64), 8), |
| 99 | }; |
| 100 | |
| 101 | // Bits for subtarget features that participate in instruction matching. |
| 102 | enum SubtargetFeatureBits : uint8_t { |
| 103 | Feature_TruePredicateBit = 67, |
| 104 | Feature_HasEGPRBit = 5, |
| 105 | Feature_NoEGPRBit = 4, |
| 106 | Feature_HasNDDBit = 6, |
| 107 | Feature_NoNDDBit = 27, |
| 108 | Feature_HasZUBit = 157, |
| 109 | Feature_PreferLegacySetCCBit = 33, |
| 110 | Feature_PreferNoLegacySetCCBit = 34, |
| 111 | Feature_HasNDDIBit = 29, |
| 112 | Feature_NoNDDIBit = 28, |
| 113 | Feature_HasCFBit = 32, |
| 114 | Feature_HasJMPABSBit = 155, |
| 115 | Feature_HasCMOVBit = 31, |
| 116 | Feature_NoCMOVBit = 139, |
| 117 | Feature_HasMMXBit = 112, |
| 118 | Feature_HasSSE1Bit = 53, |
| 119 | Feature_UseSSE1Bit = 60, |
| 120 | Feature_HasSSE2Bit = 52, |
| 121 | Feature_UseSSE2Bit = 61, |
| 122 | Feature_HasSSE3Bit = 44, |
| 123 | Feature_UseSSE3Bit = 70, |
| 124 | Feature_HasSSSE3Bit = 113, |
| 125 | Feature_UseSSSE3Bit = 71, |
| 126 | Feature_UseSSE41Bit = 68, |
| 127 | Feature_UseSSE42Bit = 75, |
| 128 | Feature_HasSSE4ABit = 85, |
| 129 | Feature_NoAVXBit = 81, |
| 130 | Feature_HasAVXBit = 62, |
| 131 | Feature_HasAVX2Bit = 56, |
| 132 | Feature_HasAVX1OnlyBit = 54, |
| 133 | Feature_HasAVX10_2Bit = 111, |
| 134 | Feature_NoAVX10_2Bit = 74, |
| 135 | Feature_HasAVX512Bit = 98, |
| 136 | Feature_UseAVXBit = 58, |
| 137 | Feature_NoAVX512Bit = 49, |
| 138 | Feature_HasCDIBit = 102, |
| 139 | Feature_HasVPOPCNTDQBit = 106, |
| 140 | Feature_HasDQIBit = 100, |
| 141 | Feature_NoDQIBit = 72, |
| 142 | Feature_HasBWIBit = 101, |
| 143 | Feature_NoBWIBit = 69, |
| 144 | Feature_HasVLXBit = 99, |
| 145 | Feature_NoVLXBit = 48, |
| 146 | Feature_NoVLX_Or_NoBWIBit = 66, |
| 147 | Feature_HasVNNIBit = 108, |
| 148 | Feature_HasVP2INTERSECTBit = 110, |
| 149 | Feature_HasFP16Bit = 104, |
| 150 | Feature_HasAVXVNNIINT16Bit = 97, |
| 151 | Feature_HasAVXVNNIINT8Bit = 92, |
| 152 | Feature_HasAVXVNNIBit = 86, |
| 153 | Feature_NoVLX_Or_NoVNNIBit = 87, |
| 154 | Feature_HasBITALGBit = 109, |
| 155 | Feature_HasPOPCNTBit = 73, |
| 156 | Feature_HasAESBit = 78, |
| 157 | Feature_HasVAESBit = 80, |
| 158 | Feature_NoVLX_Or_NoVAESBit = 79, |
| 159 | Feature_HasFXSRBit = 45, |
| 160 | Feature_HasX87Bit = 43, |
| 161 | Feature_HasXSAVEBit = 128, |
| 162 | Feature_HasXSAVEOPTBit = 129, |
| 163 | Feature_HasXSAVECBit = 130, |
| 164 | Feature_HasXSAVESBit = 131, |
| 165 | Feature_HasPCLMULBit = 82, |
| 166 | Feature_NoVLX_Or_NoVPCLMULQDQBit = 83, |
| 167 | Feature_HasVPCLMULQDQBit = 84, |
| 168 | Feature_HasGFNIBit = 89, |
| 169 | Feature_HasFMABit = 46, |
| 170 | Feature_HasFMA4Bit = 50, |
| 171 | Feature_NoFMA4Bit = 47, |
| 172 | Feature_HasXOPBit = 51, |
| 173 | Feature_HasTBMBit = 26, |
| 174 | Feature_NoTBMBit = 144, |
| 175 | Feature_HasLWPBit = 12, |
| 176 | Feature_HasMOVBEBit = 3, |
| 177 | Feature_NoNDD_Or_NoMOVBEBit = 2, |
| 178 | Feature_HasRDRANDBit = 7, |
| 179 | Feature_HasF16CBit = 88, |
| 180 | Feature_HasFSGSBaseBit = 132, |
| 181 | Feature_HasLZCNTBit = 9, |
| 182 | Feature_HasBMIBit = 10, |
| 183 | Feature_HasBMI2Bit = 11, |
| 184 | Feature_NoBMI2Bit = 143, |
| 185 | Feature_HasVBMIBit = 103, |
| 186 | Feature_HasVBMI2Bit = 107, |
| 187 | Feature_HasIFMABit = 105, |
| 188 | Feature_HasAVXIFMABit = 90, |
| 189 | Feature_NoVLX_Or_NoIFMABit = 91, |
| 190 | Feature_HasRTMBit = 115, |
| 191 | Feature_HasSHABit = 77, |
| 192 | Feature_HasSHA512Bit = 94, |
| 193 | Feature_HasSM3Bit = 95, |
| 194 | Feature_HasRDSEEDBit = 8, |
| 195 | Feature_HasSSEPrefetchBit = 63, |
| 196 | Feature_HasPREFETCHIBit = 20, |
| 197 | Feature_HasPrefetchWBit = 114, |
| 198 | Feature_HasMWAITXBit = 142, |
| 199 | Feature_HasCLDEMOTEBit = 24, |
| 200 | Feature_HasMOVDIRIBit = 14, |
| 201 | Feature_HasMOVDIR64BBit = 15, |
| 202 | Feature_HasMOVRSBit = 25, |
| 203 | Feature_HasPTWRITEBit = 135, |
| 204 | Feature_FPStackf32Bit = 41, |
| 205 | Feature_FPStackf64Bit = 42, |
| 206 | Feature_HasSM4Bit = 96, |
| 207 | Feature_HasCLFLUSHBit = 64, |
| 208 | Feature_HasCLFLUSHOPTBit = 22, |
| 209 | Feature_HasCLWBBit = 23, |
| 210 | Feature_HasWBNOINVDBit = 127, |
| 211 | Feature_HasRDPIDBit = 134, |
| 212 | Feature_HasWAITPKGBit = 13, |
| 213 | Feature_HasINVPCIDBit = 133, |
| 214 | Feature_HasCX8Bit = 140, |
| 215 | Feature_HasCX16Bit = 141, |
| 216 | Feature_HasENQCMDBit = 16, |
| 217 | Feature_HasAMXFP16Bit = 120, |
| 218 | Feature_HasCMPCCXADDBit = 21, |
| 219 | Feature_HasAVXNECONVERTBit = 93, |
| 220 | Feature_HasKLBit = 116, |
| 221 | Feature_HasRAOINTBit = 125, |
| 222 | Feature_HasSERIALIZEBit = 17, |
| 223 | Feature_HasTSXLDTRKBit = 18, |
| 224 | Feature_HasAMXTILEBit = 117, |
| 225 | Feature_HasAMXBF16Bit = 119, |
| 226 | Feature_HasAMXINT8Bit = 118, |
| 227 | Feature_HasAMXCOMPLEXBit = 121, |
| 228 | Feature_HasAMXFP8Bit = 122, |
| 229 | Feature_HasAMXAVX512Bit = 123, |
| 230 | Feature_HasAMXTF32Bit = 124, |
| 231 | Feature_HasUINTRBit = 19, |
| 232 | Feature_HasUSERMSRBit = 126, |
| 233 | Feature_HasCRC32Bit = 76, |
| 234 | Feature_Not64BitModeBit = 0, |
| 235 | Feature_In64BitModeBit = 1, |
| 236 | Feature_IsLP64Bit = 137, |
| 237 | Feature_NotLP64Bit = 136, |
| 238 | Feature_NotWin64WithoutFPBit = 138, |
| 239 | Feature_IsPSBit = 147, |
| 240 | Feature_NotPSBit = 146, |
| 241 | Feature_KernelCodeBit = 148, |
| 242 | Feature_NearDataBit = 150, |
| 243 | Feature_IsNotPICBit = 149, |
| 244 | Feature_OptForSizeBit = 57, |
| 245 | Feature_OptForMinSizeBit = 55, |
| 246 | Feature_OptForSpeedBit = 145, |
| 247 | Feature_UseIncDecBit = 30, |
| 248 | Feature_NoSSE41_Or_OptForSizeBit = 59, |
| 249 | Feature_ImportCallOptimizationEnabledBit = 39, |
| 250 | Feature_ImportCallOptimizationDisabledBit = 37, |
| 251 | Feature_IsWin64CCFuncBit = 154, |
| 252 | Feature_IsNotWin64CCFuncBit = 153, |
| 253 | Feature_IsHiPECCFuncBit = 152, |
| 254 | Feature_IsNotHiPECCFuncBit = 151, |
| 255 | Feature_CallImmAddrBit = 156, |
| 256 | Feature_FavorMemIndirectCallBit = 35, |
| 257 | Feature_HasFastSHLDRotateBit = 40, |
| 258 | Feature_HasMFenceBit = 65, |
| 259 | Feature_UseIndirectThunkCallsBit = 38, |
| 260 | Feature_NotUseIndirectThunkCallsBit = 36, |
| 261 | Feature_HwMode2Bit = 160, |
| 262 | Feature_HwMode1Bit = 159, |
| 263 | Feature_HwMode0Bit = 158, |
| 264 | }; |
| 265 | |
| 266 | PredicateBitset X86InstructionSelector:: |
| 267 | computeAvailableModuleFeatures(const X86Subtarget *Subtarget) const { |
| 268 | PredicateBitset Features{}; |
| 269 | if (true) |
| 270 | Features.set(Feature_TruePredicateBit); |
| 271 | if (Subtarget->hasEGPR()) |
| 272 | Features.set(Feature_HasEGPRBit); |
| 273 | if (!Subtarget->hasEGPR()) |
| 274 | Features.set(Feature_NoEGPRBit); |
| 275 | if (Subtarget->hasNDD()) |
| 276 | Features.set(Feature_HasNDDBit); |
| 277 | if (!Subtarget->hasNDD()) |
| 278 | Features.set(Feature_NoNDDBit); |
| 279 | if (Subtarget->hasZU()) |
| 280 | Features.set(Feature_HasZUBit); |
| 281 | if (!Subtarget->hasZU() || Subtarget->preferLegacySetCC()) |
| 282 | Features.set(Feature_PreferLegacySetCCBit); |
| 283 | if (Subtarget->hasZU() && !Subtarget->preferLegacySetCC()) |
| 284 | Features.set(Feature_PreferNoLegacySetCCBit); |
| 285 | if (Subtarget->hasNDD() && Subtarget->hasNDDI()) |
| 286 | Features.set(Feature_HasNDDIBit); |
| 287 | if (!Subtarget->hasNDD() || !Subtarget->hasNDDI()) |
| 288 | Features.set(Feature_NoNDDIBit); |
| 289 | if (Subtarget->hasCF()) |
| 290 | Features.set(Feature_HasCFBit); |
| 291 | if (Subtarget->hasJMPABS()) |
| 292 | Features.set(Feature_HasJMPABSBit); |
| 293 | if (Subtarget->canUseCMOV()) |
| 294 | Features.set(Feature_HasCMOVBit); |
| 295 | if (!Subtarget->canUseCMOV()) |
| 296 | Features.set(Feature_NoCMOVBit); |
| 297 | if (Subtarget->hasMMX()) |
| 298 | Features.set(Feature_HasMMXBit); |
| 299 | if (Subtarget->hasSSE1()) |
| 300 | Features.set(Feature_HasSSE1Bit); |
| 301 | if (Subtarget->hasSSE1() && !Subtarget->hasAVX()) |
| 302 | Features.set(Feature_UseSSE1Bit); |
| 303 | if (Subtarget->hasSSE2()) |
| 304 | Features.set(Feature_HasSSE2Bit); |
| 305 | if (Subtarget->hasSSE2() && !Subtarget->hasAVX()) |
| 306 | Features.set(Feature_UseSSE2Bit); |
| 307 | if (Subtarget->hasSSE3()) |
| 308 | Features.set(Feature_HasSSE3Bit); |
| 309 | if (Subtarget->hasSSE3() && !Subtarget->hasAVX()) |
| 310 | Features.set(Feature_UseSSE3Bit); |
| 311 | if (Subtarget->hasSSSE3()) |
| 312 | Features.set(Feature_HasSSSE3Bit); |
| 313 | if (Subtarget->hasSSSE3() && !Subtarget->hasAVX()) |
| 314 | Features.set(Feature_UseSSSE3Bit); |
| 315 | if (Subtarget->hasSSE41() && !Subtarget->hasAVX()) |
| 316 | Features.set(Feature_UseSSE41Bit); |
| 317 | if (Subtarget->hasSSE42() && !Subtarget->hasAVX()) |
| 318 | Features.set(Feature_UseSSE42Bit); |
| 319 | if (Subtarget->hasSSE4A()) |
| 320 | Features.set(Feature_HasSSE4ABit); |
| 321 | if (!Subtarget->hasAVX()) |
| 322 | Features.set(Feature_NoAVXBit); |
| 323 | if (Subtarget->hasAVX()) |
| 324 | Features.set(Feature_HasAVXBit); |
| 325 | if (Subtarget->hasAVX2()) |
| 326 | Features.set(Feature_HasAVX2Bit); |
| 327 | if (Subtarget->hasAVX() && !Subtarget->hasAVX2()) |
| 328 | Features.set(Feature_HasAVX1OnlyBit); |
| 329 | if (Subtarget->hasAVX10_2()) |
| 330 | Features.set(Feature_HasAVX10_2Bit); |
| 331 | if (!Subtarget->hasAVX10_2()) |
| 332 | Features.set(Feature_NoAVX10_2Bit); |
| 333 | if (Subtarget->hasAVX512()) |
| 334 | Features.set(Feature_HasAVX512Bit); |
| 335 | if (Subtarget->hasAVX() && !Subtarget->hasAVX512()) |
| 336 | Features.set(Feature_UseAVXBit); |
| 337 | if (!Subtarget->hasAVX512()) |
| 338 | Features.set(Feature_NoAVX512Bit); |
| 339 | if (Subtarget->hasCDI()) |
| 340 | Features.set(Feature_HasCDIBit); |
| 341 | if (Subtarget->hasVPOPCNTDQ()) |
| 342 | Features.set(Feature_HasVPOPCNTDQBit); |
| 343 | if (Subtarget->hasDQI()) |
| 344 | Features.set(Feature_HasDQIBit); |
| 345 | if (!Subtarget->hasDQI()) |
| 346 | Features.set(Feature_NoDQIBit); |
| 347 | if (Subtarget->hasBWI()) |
| 348 | Features.set(Feature_HasBWIBit); |
| 349 | if (!Subtarget->hasBWI()) |
| 350 | Features.set(Feature_NoBWIBit); |
| 351 | if (Subtarget->hasVLX()) |
| 352 | Features.set(Feature_HasVLXBit); |
| 353 | if (!Subtarget->hasVLX()) |
| 354 | Features.set(Feature_NoVLXBit); |
| 355 | if (!Subtarget->hasVLX() || !Subtarget->hasBWI()) |
| 356 | Features.set(Feature_NoVLX_Or_NoBWIBit); |
| 357 | if (Subtarget->hasVNNI()) |
| 358 | Features.set(Feature_HasVNNIBit); |
| 359 | if (Subtarget->hasVP2INTERSECT()) |
| 360 | Features.set(Feature_HasVP2INTERSECTBit); |
| 361 | if (Subtarget->hasFP16()) |
| 362 | Features.set(Feature_HasFP16Bit); |
| 363 | if (Subtarget->hasAVXVNNIINT16()) |
| 364 | Features.set(Feature_HasAVXVNNIINT16Bit); |
| 365 | if (Subtarget->hasAVXVNNIINT8()) |
| 366 | Features.set(Feature_HasAVXVNNIINT8Bit); |
| 367 | if (Subtarget->hasAVXVNNI()) |
| 368 | Features.set(Feature_HasAVXVNNIBit); |
| 369 | if (!Subtarget->hasVLX() || !Subtarget->hasVNNI()) |
| 370 | Features.set(Feature_NoVLX_Or_NoVNNIBit); |
| 371 | if (Subtarget->hasBITALG()) |
| 372 | Features.set(Feature_HasBITALGBit); |
| 373 | if (Subtarget->hasPOPCNT()) |
| 374 | Features.set(Feature_HasPOPCNTBit); |
| 375 | if (Subtarget->hasAES()) |
| 376 | Features.set(Feature_HasAESBit); |
| 377 | if (Subtarget->hasVAES()) |
| 378 | Features.set(Feature_HasVAESBit); |
| 379 | if (!Subtarget->hasVLX() || !Subtarget->hasVAES()) |
| 380 | Features.set(Feature_NoVLX_Or_NoVAESBit); |
| 381 | if (Subtarget->hasFXSR()) |
| 382 | Features.set(Feature_HasFXSRBit); |
| 383 | if (Subtarget->hasX87()) |
| 384 | Features.set(Feature_HasX87Bit); |
| 385 | if (Subtarget->hasXSAVE()) |
| 386 | Features.set(Feature_HasXSAVEBit); |
| 387 | if (Subtarget->hasXSAVEOPT()) |
| 388 | Features.set(Feature_HasXSAVEOPTBit); |
| 389 | if (Subtarget->hasXSAVEC()) |
| 390 | Features.set(Feature_HasXSAVECBit); |
| 391 | if (Subtarget->hasXSAVES()) |
| 392 | Features.set(Feature_HasXSAVESBit); |
| 393 | if (Subtarget->hasPCLMUL()) |
| 394 | Features.set(Feature_HasPCLMULBit); |
| 395 | if (!Subtarget->hasVLX() || !Subtarget->hasVPCLMULQDQ()) |
| 396 | Features.set(Feature_NoVLX_Or_NoVPCLMULQDQBit); |
| 397 | if (Subtarget->hasVPCLMULQDQ()) |
| 398 | Features.set(Feature_HasVPCLMULQDQBit); |
| 399 | if (Subtarget->hasGFNI()) |
| 400 | Features.set(Feature_HasGFNIBit); |
| 401 | if (Subtarget->hasFMA()) |
| 402 | Features.set(Feature_HasFMABit); |
| 403 | if (Subtarget->hasFMA4()) |
| 404 | Features.set(Feature_HasFMA4Bit); |
| 405 | if (!Subtarget->hasFMA4()) |
| 406 | Features.set(Feature_NoFMA4Bit); |
| 407 | if (Subtarget->hasXOP()) |
| 408 | Features.set(Feature_HasXOPBit); |
| 409 | if (Subtarget->hasTBM()) |
| 410 | Features.set(Feature_HasTBMBit); |
| 411 | if (!Subtarget->hasTBM()) |
| 412 | Features.set(Feature_NoTBMBit); |
| 413 | if (Subtarget->hasLWP()) |
| 414 | Features.set(Feature_HasLWPBit); |
| 415 | if (Subtarget->hasMOVBE()) |
| 416 | Features.set(Feature_HasMOVBEBit); |
| 417 | if (!Subtarget->hasNDD() || !Subtarget->hasMOVBE()) |
| 418 | Features.set(Feature_NoNDD_Or_NoMOVBEBit); |
| 419 | if (Subtarget->hasRDRAND()) |
| 420 | Features.set(Feature_HasRDRANDBit); |
| 421 | if (Subtarget->hasF16C()) |
| 422 | Features.set(Feature_HasF16CBit); |
| 423 | if (Subtarget->hasFSGSBase()) |
| 424 | Features.set(Feature_HasFSGSBaseBit); |
| 425 | if (Subtarget->hasLZCNT()) |
| 426 | Features.set(Feature_HasLZCNTBit); |
| 427 | if (Subtarget->hasBMI()) |
| 428 | Features.set(Feature_HasBMIBit); |
| 429 | if (Subtarget->hasBMI2()) |
| 430 | Features.set(Feature_HasBMI2Bit); |
| 431 | if (!Subtarget->hasBMI2()) |
| 432 | Features.set(Feature_NoBMI2Bit); |
| 433 | if (Subtarget->hasVBMI()) |
| 434 | Features.set(Feature_HasVBMIBit); |
| 435 | if (Subtarget->hasVBMI2()) |
| 436 | Features.set(Feature_HasVBMI2Bit); |
| 437 | if (Subtarget->hasIFMA()) |
| 438 | Features.set(Feature_HasIFMABit); |
| 439 | if (Subtarget->hasAVXIFMA()) |
| 440 | Features.set(Feature_HasAVXIFMABit); |
| 441 | if (!Subtarget->hasVLX() || !Subtarget->hasIFMA()) |
| 442 | Features.set(Feature_NoVLX_Or_NoIFMABit); |
| 443 | if (Subtarget->hasRTM()) |
| 444 | Features.set(Feature_HasRTMBit); |
| 445 | if (Subtarget->hasSHA()) |
| 446 | Features.set(Feature_HasSHABit); |
| 447 | if (Subtarget->hasSHA512()) |
| 448 | Features.set(Feature_HasSHA512Bit); |
| 449 | if (Subtarget->hasSM3()) |
| 450 | Features.set(Feature_HasSM3Bit); |
| 451 | if (Subtarget->hasRDSEED()) |
| 452 | Features.set(Feature_HasRDSEEDBit); |
| 453 | if (Subtarget->hasSSEPrefetch()) |
| 454 | Features.set(Feature_HasSSEPrefetchBit); |
| 455 | if (Subtarget->hasPREFETCHI()) |
| 456 | Features.set(Feature_HasPREFETCHIBit); |
| 457 | if (Subtarget->hasPrefetchW()) |
| 458 | Features.set(Feature_HasPrefetchWBit); |
| 459 | if (Subtarget->hasMWAITX()) |
| 460 | Features.set(Feature_HasMWAITXBit); |
| 461 | if (Subtarget->hasCLDEMOTE()) |
| 462 | Features.set(Feature_HasCLDEMOTEBit); |
| 463 | if (Subtarget->hasMOVDIRI()) |
| 464 | Features.set(Feature_HasMOVDIRIBit); |
| 465 | if (Subtarget->hasMOVDIR64B()) |
| 466 | Features.set(Feature_HasMOVDIR64BBit); |
| 467 | if (Subtarget->hasMOVRS()) |
| 468 | Features.set(Feature_HasMOVRSBit); |
| 469 | if (Subtarget->hasPTWRITE()) |
| 470 | Features.set(Feature_HasPTWRITEBit); |
| 471 | if (!Subtarget->hasSSE1()) |
| 472 | Features.set(Feature_FPStackf32Bit); |
| 473 | if (!Subtarget->hasSSE2()) |
| 474 | Features.set(Feature_FPStackf64Bit); |
| 475 | if (Subtarget->hasSM4()) |
| 476 | Features.set(Feature_HasSM4Bit); |
| 477 | if (Subtarget->hasCLFLUSH()) |
| 478 | Features.set(Feature_HasCLFLUSHBit); |
| 479 | if (Subtarget->hasCLFLUSHOPT()) |
| 480 | Features.set(Feature_HasCLFLUSHOPTBit); |
| 481 | if (Subtarget->hasCLWB()) |
| 482 | Features.set(Feature_HasCLWBBit); |
| 483 | if (Subtarget->hasWBNOINVD()) |
| 484 | Features.set(Feature_HasWBNOINVDBit); |
| 485 | if (Subtarget->hasRDPID()) |
| 486 | Features.set(Feature_HasRDPIDBit); |
| 487 | if (Subtarget->hasWAITPKG()) |
| 488 | Features.set(Feature_HasWAITPKGBit); |
| 489 | if (Subtarget->hasINVPCID()) |
| 490 | Features.set(Feature_HasINVPCIDBit); |
| 491 | if (Subtarget->hasCX8()) |
| 492 | Features.set(Feature_HasCX8Bit); |
| 493 | if (Subtarget->hasCX16()) |
| 494 | Features.set(Feature_HasCX16Bit); |
| 495 | if (Subtarget->hasENQCMD()) |
| 496 | Features.set(Feature_HasENQCMDBit); |
| 497 | if (Subtarget->hasAMXFP16()) |
| 498 | Features.set(Feature_HasAMXFP16Bit); |
| 499 | if (Subtarget->hasCMPCCXADD()) |
| 500 | Features.set(Feature_HasCMPCCXADDBit); |
| 501 | if (Subtarget->hasAVXNECONVERT()) |
| 502 | Features.set(Feature_HasAVXNECONVERTBit); |
| 503 | if (Subtarget->hasKL()) |
| 504 | Features.set(Feature_HasKLBit); |
| 505 | if (Subtarget->hasRAOINT()) |
| 506 | Features.set(Feature_HasRAOINTBit); |
| 507 | if (Subtarget->hasSERIALIZE()) |
| 508 | Features.set(Feature_HasSERIALIZEBit); |
| 509 | if (Subtarget->hasTSXLDTRK()) |
| 510 | Features.set(Feature_HasTSXLDTRKBit); |
| 511 | if (Subtarget->hasAMXTILE()) |
| 512 | Features.set(Feature_HasAMXTILEBit); |
| 513 | if (Subtarget->hasAMXBF16()) |
| 514 | Features.set(Feature_HasAMXBF16Bit); |
| 515 | if (Subtarget->hasAMXINT8()) |
| 516 | Features.set(Feature_HasAMXINT8Bit); |
| 517 | if (Subtarget->hasAMXCOMPLEX()) |
| 518 | Features.set(Feature_HasAMXCOMPLEXBit); |
| 519 | if (Subtarget->hasAMXFP8()) |
| 520 | Features.set(Feature_HasAMXFP8Bit); |
| 521 | if (Subtarget->hasAMXAVX512()) |
| 522 | Features.set(Feature_HasAMXAVX512Bit); |
| 523 | if (Subtarget->hasAMXTF32()) |
| 524 | Features.set(Feature_HasAMXTF32Bit); |
| 525 | if (Subtarget->hasUINTR()) |
| 526 | Features.set(Feature_HasUINTRBit); |
| 527 | if (Subtarget->hasUSERMSR()) |
| 528 | Features.set(Feature_HasUSERMSRBit); |
| 529 | if (Subtarget->hasCRC32()) |
| 530 | Features.set(Feature_HasCRC32Bit); |
| 531 | if (!Subtarget->is64Bit()) |
| 532 | Features.set(Feature_Not64BitModeBit); |
| 533 | if (Subtarget->is64Bit()) |
| 534 | Features.set(Feature_In64BitModeBit); |
| 535 | if (Subtarget->isTarget64BitLP64()) |
| 536 | Features.set(Feature_IsLP64Bit); |
| 537 | if (!Subtarget->isTarget64BitLP64()) |
| 538 | Features.set(Feature_NotLP64Bit); |
| 539 | if (Subtarget->isTargetPS()) |
| 540 | Features.set(Feature_IsPSBit); |
| 541 | if (!Subtarget->isTargetPS()) |
| 542 | Features.set(Feature_NotPSBit); |
| 543 | if (TM.getCodeModel() == CodeModel::Kernel) |
| 544 | Features.set(Feature_KernelCodeBit); |
| 545 | if (TM.getCodeModel() == CodeModel::Small ||TM.getCodeModel() == CodeModel::Kernel) |
| 546 | Features.set(Feature_NearDataBit); |
| 547 | if (!TM.isPositionIndependent()) |
| 548 | Features.set(Feature_IsNotPICBit); |
| 549 | if (Subtarget->isLegalToCallImmediateAddr()) |
| 550 | Features.set(Feature_CallImmAddrBit); |
| 551 | if (!Subtarget->slowTwoMemOps()) |
| 552 | Features.set(Feature_FavorMemIndirectCallBit); |
| 553 | if (Subtarget->hasFastSHLDRotate()) |
| 554 | Features.set(Feature_HasFastSHLDRotateBit); |
| 555 | if (Subtarget->hasMFence()) |
| 556 | Features.set(Feature_HasMFenceBit); |
| 557 | if (Subtarget->useIndirectThunkCalls()) |
| 558 | Features.set(Feature_UseIndirectThunkCallsBit); |
| 559 | if (!Subtarget->useIndirectThunkCalls()) |
| 560 | Features.set(Feature_NotUseIndirectThunkCallsBit); |
| 561 | if (!((Subtarget->is64Bit()) && (!Subtarget->getTargetTriple().isX32())) && !((Subtarget->getTargetTriple().isX32()))) |
| 562 | Features.set(Feature_HwMode2Bit); |
| 563 | if ((Subtarget->getTargetTriple().isX32())) |
| 564 | Features.set(Feature_HwMode1Bit); |
| 565 | if ((Subtarget->is64Bit()) && (!Subtarget->getTargetTriple().isX32())) |
| 566 | Features.set(Feature_HwMode0Bit); |
| 567 | return Features; |
| 568 | } |
| 569 | |
| 570 | void X86InstructionSelector::setupGeneratedPerFunctionState(MachineFunction &MF) { |
| 571 | AvailableFunctionFeatures = computeAvailableFunctionFeatures((const X86Subtarget *)&MF.getSubtarget(), &MF); |
| 572 | } |
| 573 | PredicateBitset X86InstructionSelector:: |
| 574 | computeAvailableFunctionFeatures(const X86Subtarget *Subtarget, const MachineFunction *MF) const { |
| 575 | PredicateBitset Features{}; |
| 576 | if (!Subtarget->isTargetWin64() ||Subtarget->getFrameLowering()->hasFP(*MF)) |
| 577 | Features.set(Feature_NotWin64WithoutFPBit); |
| 578 | if (shouldOptForSize(MF)) |
| 579 | Features.set(Feature_OptForSizeBit); |
| 580 | if (MF->getFunction().hasMinSize()) |
| 581 | Features.set(Feature_OptForMinSizeBit); |
| 582 | if (!shouldOptForSize(MF)) |
| 583 | Features.set(Feature_OptForSpeedBit); |
| 584 | if (!Subtarget->slowIncDec() || shouldOptForSize(MF)) |
| 585 | Features.set(Feature_UseIncDecBit); |
| 586 | if (shouldOptForSize(MF) || !Subtarget->hasSSE41()) |
| 587 | Features.set(Feature_NoSSE41_Or_OptForSizeBit); |
| 588 | if (MF->getFunction().getParent()->getModuleFlag("import-call-optimization" )) |
| 589 | Features.set(Feature_ImportCallOptimizationEnabledBit); |
| 590 | if (!MF->getFunction().getParent()->getModuleFlag("import-call-optimization" )) |
| 591 | Features.set(Feature_ImportCallOptimizationDisabledBit); |
| 592 | if (Subtarget->isCallingConvWin64(MF->getFunction().getCallingConv())) |
| 593 | Features.set(Feature_IsWin64CCFuncBit); |
| 594 | if (!Subtarget->isCallingConvWin64(MF->getFunction().getCallingConv())) |
| 595 | Features.set(Feature_IsNotWin64CCFuncBit); |
| 596 | if (MF->getFunction().getCallingConv() == CallingConv::HiPE) |
| 597 | Features.set(Feature_IsHiPECCFuncBit); |
| 598 | if (MF->getFunction().getCallingConv() != CallingConv::HiPE) |
| 599 | Features.set(Feature_IsNotHiPECCFuncBit); |
| 600 | return Features; |
| 601 | } |
| 602 | |
| 603 | // Feature bitsets. |
| 604 | enum { |
| 605 | GIFBS_Invalid, |
| 606 | GIFBS_FPStackf32, |
| 607 | GIFBS_FPStackf64, |
| 608 | GIFBS_HasAVX, |
| 609 | GIFBS_HasAVX1Only, |
| 610 | GIFBS_HasAVX2, |
| 611 | GIFBS_HasAVX512, |
| 612 | GIFBS_HasAVXNECONVERT, |
| 613 | GIFBS_HasBITALG, |
| 614 | GIFBS_HasBMI, |
| 615 | GIFBS_HasBWI, |
| 616 | GIFBS_HasCDI, |
| 617 | GIFBS_HasCLDEMOTE, |
| 618 | GIFBS_HasCLFLUSH, |
| 619 | GIFBS_HasCLFLUSHOPT, |
| 620 | GIFBS_HasCLWB, |
| 621 | GIFBS_HasDQI, |
| 622 | GIFBS_HasFP16, |
| 623 | GIFBS_HasFXSR, |
| 624 | GIFBS_HasFastSHLDRotate, |
| 625 | GIFBS_HasKL, |
| 626 | GIFBS_HasLWP, |
| 627 | GIFBS_HasLZCNT, |
| 628 | GIFBS_HasMFence, |
| 629 | GIFBS_HasMMX, |
| 630 | GIFBS_HasMOVBE, |
| 631 | GIFBS_HasMOVRS, |
| 632 | GIFBS_HasMWAITX, |
| 633 | GIFBS_HasNDD, |
| 634 | GIFBS_HasNDDI, |
| 635 | GIFBS_HasPOPCNT, |
| 636 | GIFBS_HasPTWRITE, |
| 637 | GIFBS_HasPrefetchW, |
| 638 | GIFBS_HasRTM, |
| 639 | GIFBS_HasSERIALIZE, |
| 640 | GIFBS_HasSHA, |
| 641 | GIFBS_HasSHA512, |
| 642 | GIFBS_HasSM3, |
| 643 | GIFBS_HasSM4, |
| 644 | GIFBS_HasSSE1, |
| 645 | GIFBS_HasSSE2, |
| 646 | GIFBS_HasSSE3, |
| 647 | GIFBS_HasSSE4A, |
| 648 | GIFBS_HasSSEPrefetch, |
| 649 | GIFBS_HasTBM, |
| 650 | GIFBS_HasTSXLDTRK, |
| 651 | GIFBS_HasVBMI2, |
| 652 | GIFBS_HasVLX, |
| 653 | GIFBS_HasVPOPCNTDQ, |
| 654 | GIFBS_HasWAITPKG, |
| 655 | GIFBS_HasWBNOINVD, |
| 656 | GIFBS_HasX87, |
| 657 | GIFBS_HasXOP, |
| 658 | GIFBS_HasXSAVE, |
| 659 | GIFBS_HasXSAVEC, |
| 660 | GIFBS_HasXSAVEOPT, |
| 661 | GIFBS_HasXSAVES, |
| 662 | GIFBS_HasZU, |
| 663 | GIFBS_In64BitMode, |
| 664 | GIFBS_IsPS, |
| 665 | GIFBS_NoAVX, |
| 666 | GIFBS_NoDQI, |
| 667 | GIFBS_NoEGPR, |
| 668 | GIFBS_NoNDD, |
| 669 | GIFBS_NoNDDI, |
| 670 | GIFBS_NoNDD_Or_NoMOVBE, |
| 671 | GIFBS_NoVLX, |
| 672 | GIFBS_Not64BitMode, |
| 673 | GIFBS_NotPS, |
| 674 | GIFBS_UseAVX, |
| 675 | GIFBS_UseIncDec, |
| 676 | GIFBS_UseSSE1, |
| 677 | GIFBS_UseSSE2, |
| 678 | GIFBS_UseSSE3, |
| 679 | GIFBS_UseSSE41, |
| 680 | GIFBS_UseSSSE3, |
| 681 | GIFBS_HasAES_HasAVX, |
| 682 | GIFBS_HasAES_NoAVX, |
| 683 | GIFBS_HasAMXBF16_In64BitMode, |
| 684 | GIFBS_HasAMXCOMPLEX_In64BitMode, |
| 685 | GIFBS_HasAMXFP16_In64BitMode, |
| 686 | GIFBS_HasAMXFP8_In64BitMode, |
| 687 | GIFBS_HasAMXINT8_In64BitMode, |
| 688 | GIFBS_HasAMXTF32_In64BitMode, |
| 689 | GIFBS_HasAMXTILE_In64BitMode, |
| 690 | GIFBS_HasAVX_In64BitMode, |
| 691 | GIFBS_HasAVX_NoBWI, |
| 692 | GIFBS_HasAVX_NoVLX, |
| 693 | GIFBS_HasAVX_NoVLX_Or_NoBWI, |
| 694 | GIFBS_HasAVX10_2_HasSM4, |
| 695 | GIFBS_HasAVX2_NoVLX, |
| 696 | GIFBS_HasAVX2_NoVLX_Or_NoBWI, |
| 697 | GIFBS_HasAVX512_HasVAES, |
| 698 | GIFBS_HasAVX512_HasVLX, |
| 699 | GIFBS_HasAVX512_NoBWI, |
| 700 | GIFBS_HasAVX512_NoDQI, |
| 701 | GIFBS_HasAVX512_NoEGPR, |
| 702 | GIFBS_HasAVX512_NoVLX, |
| 703 | GIFBS_HasAVX512_OptForSize, |
| 704 | GIFBS_HasBITALG_HasVLX, |
| 705 | GIFBS_HasBITALG_NoVLX, |
| 706 | GIFBS_HasBMI_HasEGPR, |
| 707 | GIFBS_HasBMI_NoEGPR, |
| 708 | GIFBS_HasBMI2_HasEGPR, |
| 709 | GIFBS_HasBMI2_NoEGPR, |
| 710 | GIFBS_HasBWI_HasDQI, |
| 711 | GIFBS_HasBWI_HasVLX, |
| 712 | GIFBS_HasBWI_NoEGPR, |
| 713 | GIFBS_HasBWI_NoVLX, |
| 714 | GIFBS_HasCDI_HasVLX, |
| 715 | GIFBS_HasCDI_NoVLX, |
| 716 | GIFBS_HasCRC32_NoEGPR, |
| 717 | GIFBS_HasDQI_HasVLX, |
| 718 | GIFBS_HasDQI_NoBWI, |
| 719 | GIFBS_HasDQI_NoEGPR, |
| 720 | GIFBS_HasDQI_NoVLX, |
| 721 | GIFBS_HasEGPR_HasINVPCID, |
| 722 | GIFBS_HasEGPR_In64BitMode, |
| 723 | GIFBS_HasFMA4_NoAVX512, |
| 724 | GIFBS_HasFMA4_NoVLX, |
| 725 | GIFBS_HasFP16_HasVLX, |
| 726 | GIFBS_HasFP16_In64BitMode, |
| 727 | GIFBS_HasFP16_OptForSize, |
| 728 | GIFBS_HasFSGSBase_In64BitMode, |
| 729 | GIFBS_HasFXSR_In64BitMode, |
| 730 | GIFBS_HasINVPCID_NoEGPR, |
| 731 | GIFBS_HasINVPCID_Not64BitMode, |
| 732 | GIFBS_HasMOVBE_NoEGPR, |
| 733 | GIFBS_HasMOVDIR64B_NoEGPR, |
| 734 | GIFBS_HasMOVDIRI_NoEGPR, |
| 735 | GIFBS_HasNDD_In64BitMode, |
| 736 | GIFBS_HasNDD_UseIncDec, |
| 737 | GIFBS_HasNDDI_UseIncDec, |
| 738 | GIFBS_HasPREFETCHI_In64BitMode, |
| 739 | GIFBS_HasPTWRITE_In64BitMode, |
| 740 | GIFBS_HasRDPID_In64BitMode, |
| 741 | GIFBS_HasRDPID_Not64BitMode, |
| 742 | GIFBS_HasUINTR_In64BitMode, |
| 743 | GIFBS_HasUSERMSR_NoEGPR, |
| 744 | GIFBS_HasVAES_HasVLX, |
| 745 | GIFBS_HasVAES_NoVLX, |
| 746 | GIFBS_HasVBMI2_HasVLX, |
| 747 | GIFBS_HasVBMI2_NoVLX, |
| 748 | GIFBS_HasVLX_HasVPOPCNTDQ, |
| 749 | GIFBS_HasVPOPCNTDQ_NoVLX, |
| 750 | GIFBS_HasWAITPKG_In64BitMode, |
| 751 | GIFBS_HasWAITPKG_Not64BitMode, |
| 752 | GIFBS_HasXSAVE_In64BitMode, |
| 753 | GIFBS_HasXSAVEC_In64BitMode, |
| 754 | GIFBS_HasXSAVEOPT_In64BitMode, |
| 755 | GIFBS_HasXSAVES_In64BitMode, |
| 756 | GIFBS_In64BitMode_UseIncDec, |
| 757 | GIFBS_In64BitMode_UseSSE2, |
| 758 | GIFBS_NoNDD_UseIncDec, |
| 759 | GIFBS_NoNDDI_UseIncDec, |
| 760 | GIFBS_Not64BitMode_OptForSize, |
| 761 | GIFBS_NotWin64WithoutFP_OptForMinSize, |
| 762 | GIFBS_OptForSize_UseAVX, |
| 763 | GIFBS_OptForSize_UseSSE1, |
| 764 | GIFBS_OptForSize_UseSSE2, |
| 765 | GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES, |
| 766 | GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode, |
| 767 | GIFBS_HasAMXTILE_HasEGPR_In64BitMode, |
| 768 | GIFBS_HasAMXTILE_In64BitMode_NoEGPR, |
| 769 | GIFBS_HasAVX10_2_HasMOVRS_In64BitMode, |
| 770 | GIFBS_HasAVX512_HasEGPR_In64BitMode, |
| 771 | GIFBS_HasBWI_HasEGPR_In64BitMode, |
| 772 | GIFBS_HasCRC32_HasEGPR_In64BitMode, |
| 773 | GIFBS_HasDQI_HasEGPR_In64BitMode, |
| 774 | GIFBS_HasDQI_HasVLX_NoBWI, |
| 775 | GIFBS_HasEGPR_HasMOVBE_In64BitMode, |
| 776 | GIFBS_HasEGPR_HasMOVDIR64B_In64BitMode, |
| 777 | GIFBS_HasEGPR_HasMOVDIRI_In64BitMode, |
| 778 | GIFBS_HasEGPR_HasMOVRS_In64BitMode, |
| 779 | GIFBS_HasEGPR_HasUSERMSR_In64BitMode, |
| 780 | GIFBS_HasFMA_NoAVX512_NoFMA4, |
| 781 | GIFBS_HasFMA_NoFMA4_NoVLX, |
| 782 | GIFBS_HasMOVBE_HasNDD_In64BitMode, |
| 783 | GIFBS_HasMOVDIR64B_In64BitMode_NoEGPR, |
| 784 | GIFBS_HasMOVDIRI_In64BitMode_NoEGPR, |
| 785 | GIFBS_HasMOVRS_In64BitMode_NoEGPR, |
| 786 | }; |
| 787 | constexpr static PredicateBitset FeatureBitsets[] { |
| 788 | {}, // GIFBS_Invalid |
| 789 | {Feature_FPStackf32Bit, }, |
| 790 | {Feature_FPStackf64Bit, }, |
| 791 | {Feature_HasAVXBit, }, |
| 792 | {Feature_HasAVX1OnlyBit, }, |
| 793 | {Feature_HasAVX2Bit, }, |
| 794 | {Feature_HasAVX512Bit, }, |
| 795 | {Feature_HasAVXNECONVERTBit, }, |
| 796 | {Feature_HasBITALGBit, }, |
| 797 | {Feature_HasBMIBit, }, |
| 798 | {Feature_HasBWIBit, }, |
| 799 | {Feature_HasCDIBit, }, |
| 800 | {Feature_HasCLDEMOTEBit, }, |
| 801 | {Feature_HasCLFLUSHBit, }, |
| 802 | {Feature_HasCLFLUSHOPTBit, }, |
| 803 | {Feature_HasCLWBBit, }, |
| 804 | {Feature_HasDQIBit, }, |
| 805 | {Feature_HasFP16Bit, }, |
| 806 | {Feature_HasFXSRBit, }, |
| 807 | {Feature_HasFastSHLDRotateBit, }, |
| 808 | {Feature_HasKLBit, }, |
| 809 | {Feature_HasLWPBit, }, |
| 810 | {Feature_HasLZCNTBit, }, |
| 811 | {Feature_HasMFenceBit, }, |
| 812 | {Feature_HasMMXBit, }, |
| 813 | {Feature_HasMOVBEBit, }, |
| 814 | {Feature_HasMOVRSBit, }, |
| 815 | {Feature_HasMWAITXBit, }, |
| 816 | {Feature_HasNDDBit, }, |
| 817 | {Feature_HasNDDIBit, }, |
| 818 | {Feature_HasPOPCNTBit, }, |
| 819 | {Feature_HasPTWRITEBit, }, |
| 820 | {Feature_HasPrefetchWBit, }, |
| 821 | {Feature_HasRTMBit, }, |
| 822 | {Feature_HasSERIALIZEBit, }, |
| 823 | {Feature_HasSHABit, }, |
| 824 | {Feature_HasSHA512Bit, }, |
| 825 | {Feature_HasSM3Bit, }, |
| 826 | {Feature_HasSM4Bit, }, |
| 827 | {Feature_HasSSE1Bit, }, |
| 828 | {Feature_HasSSE2Bit, }, |
| 829 | {Feature_HasSSE3Bit, }, |
| 830 | {Feature_HasSSE4ABit, }, |
| 831 | {Feature_HasSSEPrefetchBit, }, |
| 832 | {Feature_HasTBMBit, }, |
| 833 | {Feature_HasTSXLDTRKBit, }, |
| 834 | {Feature_HasVBMI2Bit, }, |
| 835 | {Feature_HasVLXBit, }, |
| 836 | {Feature_HasVPOPCNTDQBit, }, |
| 837 | {Feature_HasWAITPKGBit, }, |
| 838 | {Feature_HasWBNOINVDBit, }, |
| 839 | {Feature_HasX87Bit, }, |
| 840 | {Feature_HasXOPBit, }, |
| 841 | {Feature_HasXSAVEBit, }, |
| 842 | {Feature_HasXSAVECBit, }, |
| 843 | {Feature_HasXSAVEOPTBit, }, |
| 844 | {Feature_HasXSAVESBit, }, |
| 845 | {Feature_HasZUBit, }, |
| 846 | {Feature_In64BitModeBit, }, |
| 847 | {Feature_IsPSBit, }, |
| 848 | {Feature_NoAVXBit, }, |
| 849 | {Feature_NoDQIBit, }, |
| 850 | {Feature_NoEGPRBit, }, |
| 851 | {Feature_NoNDDBit, }, |
| 852 | {Feature_NoNDDIBit, }, |
| 853 | {Feature_NoNDD_Or_NoMOVBEBit, }, |
| 854 | {Feature_NoVLXBit, }, |
| 855 | {Feature_Not64BitModeBit, }, |
| 856 | {Feature_NotPSBit, }, |
| 857 | {Feature_UseAVXBit, }, |
| 858 | {Feature_UseIncDecBit, }, |
| 859 | {Feature_UseSSE1Bit, }, |
| 860 | {Feature_UseSSE2Bit, }, |
| 861 | {Feature_UseSSE3Bit, }, |
| 862 | {Feature_UseSSE41Bit, }, |
| 863 | {Feature_UseSSSE3Bit, }, |
| 864 | {Feature_HasAESBit, Feature_HasAVXBit, }, |
| 865 | {Feature_HasAESBit, Feature_NoAVXBit, }, |
| 866 | {Feature_HasAMXBF16Bit, Feature_In64BitModeBit, }, |
| 867 | {Feature_HasAMXCOMPLEXBit, Feature_In64BitModeBit, }, |
| 868 | {Feature_HasAMXFP16Bit, Feature_In64BitModeBit, }, |
| 869 | {Feature_HasAMXFP8Bit, Feature_In64BitModeBit, }, |
| 870 | {Feature_HasAMXINT8Bit, Feature_In64BitModeBit, }, |
| 871 | {Feature_HasAMXTF32Bit, Feature_In64BitModeBit, }, |
| 872 | {Feature_HasAMXTILEBit, Feature_In64BitModeBit, }, |
| 873 | {Feature_HasAVXBit, Feature_In64BitModeBit, }, |
| 874 | {Feature_HasAVXBit, Feature_NoBWIBit, }, |
| 875 | {Feature_HasAVXBit, Feature_NoVLXBit, }, |
| 876 | {Feature_HasAVXBit, Feature_NoVLX_Or_NoBWIBit, }, |
| 877 | {Feature_HasAVX10_2Bit, Feature_HasSM4Bit, }, |
| 878 | {Feature_HasAVX2Bit, Feature_NoVLXBit, }, |
| 879 | {Feature_HasAVX2Bit, Feature_NoVLX_Or_NoBWIBit, }, |
| 880 | {Feature_HasAVX512Bit, Feature_HasVAESBit, }, |
| 881 | {Feature_HasAVX512Bit, Feature_HasVLXBit, }, |
| 882 | {Feature_HasAVX512Bit, Feature_NoBWIBit, }, |
| 883 | {Feature_HasAVX512Bit, Feature_NoDQIBit, }, |
| 884 | {Feature_HasAVX512Bit, Feature_NoEGPRBit, }, |
| 885 | {Feature_HasAVX512Bit, Feature_NoVLXBit, }, |
| 886 | {Feature_HasAVX512Bit, Feature_OptForSizeBit, }, |
| 887 | {Feature_HasBITALGBit, Feature_HasVLXBit, }, |
| 888 | {Feature_HasBITALGBit, Feature_NoVLXBit, }, |
| 889 | {Feature_HasBMIBit, Feature_HasEGPRBit, }, |
| 890 | {Feature_HasBMIBit, Feature_NoEGPRBit, }, |
| 891 | {Feature_HasBMI2Bit, Feature_HasEGPRBit, }, |
| 892 | {Feature_HasBMI2Bit, Feature_NoEGPRBit, }, |
| 893 | {Feature_HasBWIBit, Feature_HasDQIBit, }, |
| 894 | {Feature_HasBWIBit, Feature_HasVLXBit, }, |
| 895 | {Feature_HasBWIBit, Feature_NoEGPRBit, }, |
| 896 | {Feature_HasBWIBit, Feature_NoVLXBit, }, |
| 897 | {Feature_HasCDIBit, Feature_HasVLXBit, }, |
| 898 | {Feature_HasCDIBit, Feature_NoVLXBit, }, |
| 899 | {Feature_HasCRC32Bit, Feature_NoEGPRBit, }, |
| 900 | {Feature_HasDQIBit, Feature_HasVLXBit, }, |
| 901 | {Feature_HasDQIBit, Feature_NoBWIBit, }, |
| 902 | {Feature_HasDQIBit, Feature_NoEGPRBit, }, |
| 903 | {Feature_HasDQIBit, Feature_NoVLXBit, }, |
| 904 | {Feature_HasEGPRBit, Feature_HasINVPCIDBit, }, |
| 905 | {Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 906 | {Feature_HasFMA4Bit, Feature_NoAVX512Bit, }, |
| 907 | {Feature_HasFMA4Bit, Feature_NoVLXBit, }, |
| 908 | {Feature_HasFP16Bit, Feature_HasVLXBit, }, |
| 909 | {Feature_HasFP16Bit, Feature_In64BitModeBit, }, |
| 910 | {Feature_HasFP16Bit, Feature_OptForSizeBit, }, |
| 911 | {Feature_HasFSGSBaseBit, Feature_In64BitModeBit, }, |
| 912 | {Feature_HasFXSRBit, Feature_In64BitModeBit, }, |
| 913 | {Feature_HasINVPCIDBit, Feature_NoEGPRBit, }, |
| 914 | {Feature_HasINVPCIDBit, Feature_Not64BitModeBit, }, |
| 915 | {Feature_HasMOVBEBit, Feature_NoEGPRBit, }, |
| 916 | {Feature_HasMOVDIR64BBit, Feature_NoEGPRBit, }, |
| 917 | {Feature_HasMOVDIRIBit, Feature_NoEGPRBit, }, |
| 918 | {Feature_HasNDDBit, Feature_In64BitModeBit, }, |
| 919 | {Feature_HasNDDBit, Feature_UseIncDecBit, }, |
| 920 | {Feature_HasNDDIBit, Feature_UseIncDecBit, }, |
| 921 | {Feature_HasPREFETCHIBit, Feature_In64BitModeBit, }, |
| 922 | {Feature_HasPTWRITEBit, Feature_In64BitModeBit, }, |
| 923 | {Feature_HasRDPIDBit, Feature_In64BitModeBit, }, |
| 924 | {Feature_HasRDPIDBit, Feature_Not64BitModeBit, }, |
| 925 | {Feature_HasUINTRBit, Feature_In64BitModeBit, }, |
| 926 | {Feature_HasUSERMSRBit, Feature_NoEGPRBit, }, |
| 927 | {Feature_HasVAESBit, Feature_HasVLXBit, }, |
| 928 | {Feature_HasVAESBit, Feature_NoVLXBit, }, |
| 929 | {Feature_HasVBMI2Bit, Feature_HasVLXBit, }, |
| 930 | {Feature_HasVBMI2Bit, Feature_NoVLXBit, }, |
| 931 | {Feature_HasVLXBit, Feature_HasVPOPCNTDQBit, }, |
| 932 | {Feature_HasVPOPCNTDQBit, Feature_NoVLXBit, }, |
| 933 | {Feature_HasWAITPKGBit, Feature_In64BitModeBit, }, |
| 934 | {Feature_HasWAITPKGBit, Feature_Not64BitModeBit, }, |
| 935 | {Feature_HasXSAVEBit, Feature_In64BitModeBit, }, |
| 936 | {Feature_HasXSAVECBit, Feature_In64BitModeBit, }, |
| 937 | {Feature_HasXSAVEOPTBit, Feature_In64BitModeBit, }, |
| 938 | {Feature_HasXSAVESBit, Feature_In64BitModeBit, }, |
| 939 | {Feature_In64BitModeBit, Feature_UseIncDecBit, }, |
| 940 | {Feature_In64BitModeBit, Feature_UseSSE2Bit, }, |
| 941 | {Feature_NoNDDBit, Feature_UseIncDecBit, }, |
| 942 | {Feature_NoNDDIBit, Feature_UseIncDecBit, }, |
| 943 | {Feature_Not64BitModeBit, Feature_OptForSizeBit, }, |
| 944 | {Feature_NotWin64WithoutFPBit, Feature_OptForMinSizeBit, }, |
| 945 | {Feature_OptForSizeBit, Feature_UseAVXBit, }, |
| 946 | {Feature_OptForSizeBit, Feature_UseSSE1Bit, }, |
| 947 | {Feature_OptForSizeBit, Feature_UseSSE2Bit, }, |
| 948 | {Feature_HasAESBit, Feature_HasAVXBit, Feature_NoVLX_Or_NoVAESBit, }, |
| 949 | {Feature_HasAMXAVX512Bit, Feature_HasAVX10_2Bit, Feature_In64BitModeBit, }, |
| 950 | {Feature_HasAMXTILEBit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 951 | {Feature_HasAMXTILEBit, Feature_In64BitModeBit, Feature_NoEGPRBit, }, |
| 952 | {Feature_HasAVX10_2Bit, Feature_HasMOVRSBit, Feature_In64BitModeBit, }, |
| 953 | {Feature_HasAVX512Bit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 954 | {Feature_HasBWIBit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 955 | {Feature_HasCRC32Bit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 956 | {Feature_HasDQIBit, Feature_HasEGPRBit, Feature_In64BitModeBit, }, |
| 957 | {Feature_HasDQIBit, Feature_HasVLXBit, Feature_NoBWIBit, }, |
| 958 | {Feature_HasEGPRBit, Feature_HasMOVBEBit, Feature_In64BitModeBit, }, |
| 959 | {Feature_HasEGPRBit, Feature_HasMOVDIR64BBit, Feature_In64BitModeBit, }, |
| 960 | {Feature_HasEGPRBit, Feature_HasMOVDIRIBit, Feature_In64BitModeBit, }, |
| 961 | {Feature_HasEGPRBit, Feature_HasMOVRSBit, Feature_In64BitModeBit, }, |
| 962 | {Feature_HasEGPRBit, Feature_HasUSERMSRBit, Feature_In64BitModeBit, }, |
| 963 | {Feature_HasFMABit, Feature_NoAVX512Bit, Feature_NoFMA4Bit, }, |
| 964 | {Feature_HasFMABit, Feature_NoFMA4Bit, Feature_NoVLXBit, }, |
| 965 | {Feature_HasMOVBEBit, Feature_HasNDDBit, Feature_In64BitModeBit, }, |
| 966 | {Feature_HasMOVDIR64BBit, Feature_In64BitModeBit, Feature_NoEGPRBit, }, |
| 967 | {Feature_HasMOVDIRIBit, Feature_In64BitModeBit, Feature_NoEGPRBit, }, |
| 968 | {Feature_HasMOVRSBit, Feature_In64BitModeBit, Feature_NoEGPRBit, }, |
| 969 | }; |
| 970 | |
| 971 | // ComplexPattern predicates. |
| 972 | enum { |
| 973 | GICP_Invalid, |
| 974 | GICP_gi_addr, |
| 975 | }; |
| 976 | // See constructor for table contents |
| 977 | |
| 978 | X86InstructionSelector::ComplexMatcherMemFn |
| 979 | X86InstructionSelector::ComplexPredicateFns[] = { |
| 980 | nullptr, // GICP_Invalid |
| 981 | &X86InstructionSelector::selectAddr, // gi_addr |
| 982 | }; |
| 983 | |
| 984 | // PatFrag predicates. |
| 985 | enum { |
| 986 | GICXXPred_MI_Predicate_alignedload = GICXXPred_Invalid + 1, |
| 987 | GICXXPred_MI_Predicate_alignedstore, |
| 988 | GICXXPred_MI_Predicate_ffloor_nnan, |
| 989 | GICXXPred_MI_Predicate_imm_su, |
| 990 | GICXXPred_MI_Predicate_loadi8, |
| 991 | GICXXPred_MI_Predicate_loadi16, |
| 992 | GICXXPred_MI_Predicate_loadi32, |
| 993 | GICXXPred_MI_Predicate_or_disjoint, |
| 994 | }; |
| 995 | bool X86InstructionSelector::testMIPredicate_MI(unsigned PredicateID, const MachineInstr & MI, const MatcherState &State) const { |
| 996 | const MachineFunction &MF = *MI.getParent()->getParent(); |
| 997 | const MachineRegisterInfo &MRI = MF.getRegInfo(); |
| 998 | const auto &Operands = State.RecordedOperands; |
| 999 | (void)Operands; |
| 1000 | (void)MRI; |
| 1001 | switch (PredicateID) { |
| 1002 | case GICXXPred_MI_Predicate_alignedload: { |
| 1003 | |
| 1004 | auto &LdSt = cast<GLoadStore>(MI); |
| 1005 | return LdSt.getAlign() >= LdSt.getMemSize().getValue(); |
| 1006 | |
| 1007 | llvm_unreachable("alignedload should have returned" ); |
| 1008 | } |
| 1009 | case GICXXPred_MI_Predicate_alignedstore: { |
| 1010 | |
| 1011 | auto &LdSt = cast<GLoadStore>(MI); |
| 1012 | return LdSt.getAlign() >= LdSt.getMemSize().getValue(); |
| 1013 | |
| 1014 | llvm_unreachable("alignedstore should have returned" ); |
| 1015 | } |
| 1016 | case GICXXPred_MI_Predicate_ffloor_nnan: { |
| 1017 | |
| 1018 | return MI.getFlag(MachineInstr::FmNoNans); |
| 1019 | |
| 1020 | } |
| 1021 | case GICXXPred_MI_Predicate_imm_su: { |
| 1022 | return true; |
| 1023 | } |
| 1024 | case GICXXPred_MI_Predicate_loadi8: { |
| 1025 | return isa<GLoad>(MI); |
| 1026 | } |
| 1027 | case GICXXPred_MI_Predicate_loadi16: { |
| 1028 | |
| 1029 | auto &Load = cast<GLoad>(MI); |
| 1030 | LLT Ty = MRI.getType(Load.getDstReg()); |
| 1031 | // Non extending load has MMO and destination types of the same size |
| 1032 | if (Load.getMemSizeInBits() == Ty.getSizeInBits()) |
| 1033 | return true; |
| 1034 | return Load.getAlign() >= 2 && Load.isSimple(); |
| 1035 | |
| 1036 | llvm_unreachable("loadi16 should have returned" ); |
| 1037 | } |
| 1038 | case GICXXPred_MI_Predicate_loadi32: { |
| 1039 | |
| 1040 | auto &Load = cast<GLoad>(MI); |
| 1041 | LLT Ty = MRI.getType(Load.getDstReg()); |
| 1042 | // Non extending load has MMO and destination types of the same size |
| 1043 | if (Load.getMemSizeInBits() == Ty.getSizeInBits()) |
| 1044 | return true; |
| 1045 | return Load.getAlign() >= 4 && Load.isSimple(); |
| 1046 | |
| 1047 | llvm_unreachable("loadi32 should have returned" ); |
| 1048 | } |
| 1049 | case GICXXPred_MI_Predicate_or_disjoint: { |
| 1050 | |
| 1051 | return MI.getFlag(MachineInstr::Disjoint); |
| 1052 | |
| 1053 | } |
| 1054 | } |
| 1055 | llvm_unreachable("Unknown predicate" ); |
| 1056 | return false; |
| 1057 | } |
| 1058 | // PatFrag predicates. |
| 1059 | bool X86InstructionSelector::testMOPredicate_MO(unsigned PredicateID, const MachineOperand & MO, const MatcherState &State) const { |
| 1060 | const auto &Operands = State.RecordedOperands; |
| 1061 | Register Reg = MO.getReg(); |
| 1062 | (void)Operands; |
| 1063 | (void)Reg; |
| 1064 | llvm_unreachable("Unknown predicate" ); |
| 1065 | return false; |
| 1066 | } |
| 1067 | // PatFrag predicates. |
| 1068 | enum { |
| 1069 | GICXXPred_I64_Predicate_AndMask64 = GICXXPred_Invalid + 1, |
| 1070 | GICXXPred_I64_Predicate_BTCBTSMask64, |
| 1071 | GICXXPred_I64_Predicate_BTRMask64, |
| 1072 | GICXXPred_I64_Predicate_i16immSExt8, |
| 1073 | GICXXPred_I64_Predicate_i32immSExt8, |
| 1074 | GICXXPred_I64_Predicate_i64immSExt8, |
| 1075 | GICXXPred_I64_Predicate_i64immSExt32, |
| 1076 | GICXXPred_I64_Predicate_i64immZExt32, |
| 1077 | GICXXPred_I64_Predicate_i64immZExt32SExt8, |
| 1078 | GICXXPred_I64_Predicate_i64timmSExt32, |
| 1079 | GICXXPred_I64_Predicate_immff00_ffff, |
| 1080 | }; |
| 1081 | bool X86InstructionSelector::testImmPredicate_I64(unsigned PredicateID, int64_t Imm) const { |
| 1082 | switch (PredicateID) { |
| 1083 | case GICXXPred_I64_Predicate_AndMask64: { |
| 1084 | |
| 1085 | return isMask_64(Imm) && !isUInt<32>(Imm); |
| 1086 | |
| 1087 | } |
| 1088 | case GICXXPred_I64_Predicate_BTCBTSMask64: { |
| 1089 | |
| 1090 | return !isInt<32>(Imm) && isPowerOf2_64(Imm); |
| 1091 | |
| 1092 | } |
| 1093 | case GICXXPred_I64_Predicate_BTRMask64: { |
| 1094 | |
| 1095 | return !isUInt<32>(Imm) && !isInt<32>(Imm) && isPowerOf2_64(~Imm); |
| 1096 | |
| 1097 | } |
| 1098 | case GICXXPred_I64_Predicate_i16immSExt8: { |
| 1099 | return isInt<8>(Imm); |
| 1100 | } |
| 1101 | case GICXXPred_I64_Predicate_i32immSExt8: { |
| 1102 | return isInt<8>(Imm); |
| 1103 | } |
| 1104 | case GICXXPred_I64_Predicate_i64immSExt8: { |
| 1105 | return isInt<8>(Imm); |
| 1106 | } |
| 1107 | case GICXXPred_I64_Predicate_i64immSExt32: { |
| 1108 | return isInt<32>(Imm); |
| 1109 | } |
| 1110 | case GICXXPred_I64_Predicate_i64immZExt32: { |
| 1111 | return isUInt<32>(Imm); |
| 1112 | } |
| 1113 | case GICXXPred_I64_Predicate_i64immZExt32SExt8: { |
| 1114 | |
| 1115 | return isUInt<32>(Imm) && isInt<8>(static_cast<int32_t>(Imm)); |
| 1116 | |
| 1117 | } |
| 1118 | case GICXXPred_I64_Predicate_i64timmSExt32: { |
| 1119 | return isInt<32>(Imm); |
| 1120 | } |
| 1121 | case GICXXPred_I64_Predicate_immff00_ffff: { |
| 1122 | |
| 1123 | return Imm >= 0xff00 && Imm <= 0xffff; |
| 1124 | |
| 1125 | } |
| 1126 | } |
| 1127 | llvm_unreachable("Unknown predicate" ); |
| 1128 | return false; |
| 1129 | } |
| 1130 | // PatFrag predicates. |
| 1131 | enum { |
| 1132 | GICXXPred_APFloat_Predicate_fpimm0 = GICXXPred_Invalid + 1, |
| 1133 | GICXXPred_APFloat_Predicate_fpimm1, |
| 1134 | GICXXPred_APFloat_Predicate_fpimmneg0, |
| 1135 | GICXXPred_APFloat_Predicate_fpimmneg1, |
| 1136 | }; |
| 1137 | bool X86InstructionSelector::testImmPredicate_APFloat(unsigned PredicateID, const APFloat & Imm) const { |
| 1138 | switch (PredicateID) { |
| 1139 | case GICXXPred_APFloat_Predicate_fpimm0: { |
| 1140 | |
| 1141 | return Imm.isExactlyValue(+0.0); |
| 1142 | |
| 1143 | } |
| 1144 | case GICXXPred_APFloat_Predicate_fpimm1: { |
| 1145 | |
| 1146 | return Imm.isExactlyValue(+1.0); |
| 1147 | |
| 1148 | } |
| 1149 | case GICXXPred_APFloat_Predicate_fpimmneg0: { |
| 1150 | |
| 1151 | return Imm.isExactlyValue(-0.0); |
| 1152 | |
| 1153 | } |
| 1154 | case GICXXPred_APFloat_Predicate_fpimmneg1: { |
| 1155 | |
| 1156 | return Imm.isExactlyValue(-1.0); |
| 1157 | |
| 1158 | } |
| 1159 | } |
| 1160 | llvm_unreachable("Unknown predicate" ); |
| 1161 | return false; |
| 1162 | } |
| 1163 | // PatFrag predicates. |
| 1164 | bool X86InstructionSelector::testImmPredicate_APInt(unsigned PredicateID, const APInt & Imm) const { |
| 1165 | llvm_unreachable("Unknown predicate" ); |
| 1166 | return false; |
| 1167 | } |
| 1168 | bool X86InstructionSelector::testSimplePredicate(unsigned) const { |
| 1169 | llvm_unreachable("X86InstructionSelector does not support simple predicates!" ); |
| 1170 | return false; |
| 1171 | } |
| 1172 | // Custom renderers. |
| 1173 | enum { |
| 1174 | GICR_Invalid, |
| 1175 | }; |
| 1176 | X86InstructionSelector::CustomRendererFn |
| 1177 | X86InstructionSelector::CustomRenderers[] = { |
| 1178 | nullptr, // GICR_Invalid |
| 1179 | }; |
| 1180 | |
| 1181 | bool X86InstructionSelector::selectImpl(MachineInstr &I, CodeGenCoverage &CoverageInfo) const { |
| 1182 | const PredicateBitset AvailableFeatures = getAvailableFeatures(); |
| 1183 | MachineIRBuilder B(I); |
| 1184 | State.MIs.clear(); |
| 1185 | State.MIs.push_back(&I); |
| 1186 | |
| 1187 | if (executeMatchTable(*this, State, ExecInfo, B, getMatchTable(), TII, MF->getRegInfo(), TRI, RBI, AvailableFeatures, &CoverageInfo)) { |
| 1188 | return true; |
| 1189 | } |
| 1190 | |
| 1191 | return false; |
| 1192 | } |
| 1193 | |
| 1194 | bool X86InstructionSelector::runCustomAction(unsigned, const MatcherState&, NewMIVector &) const { |
| 1195 | llvm_unreachable("X86InstructionSelector does not support custom C++ actions!" ); |
| 1196 | } |
| 1197 | #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ |
| 1198 | #define GIMT_Encode2(Val) uint8_t(Val), uint8_t((Val) >> 8) |
| 1199 | #define GIMT_Encode4(Val) uint8_t(Val), uint8_t((Val) >> 8), uint8_t((Val) >> 16), uint8_t((Val) >> 24) |
| 1200 | #define GIMT_Encode8(Val) uint8_t(Val), uint8_t((Val) >> 8), uint8_t((Val) >> 16), uint8_t((Val) >> 24), uint8_t(uint64_t(Val) >> 32), uint8_t(uint64_t(Val) >> 40), uint8_t(uint64_t(Val) >> 48), uint8_t(uint64_t(Val) >> 56) |
| 1201 | #else |
| 1202 | #define GIMT_Encode2(Val) uint8_t((Val) >> 8), uint8_t(Val) |
| 1203 | #define GIMT_Encode4(Val) uint8_t((Val) >> 24), uint8_t((Val) >> 16), uint8_t((Val) >> 8), uint8_t(Val) |
| 1204 | #define GIMT_Encode8(Val) uint8_t(uint64_t(Val) >> 56), uint8_t(uint64_t(Val) >> 48), uint8_t(uint64_t(Val) >> 40), uint8_t(uint64_t(Val) >> 32), uint8_t((Val) >> 24), uint8_t((Val) >> 16), uint8_t((Val) >> 8), uint8_t(Val) |
| 1205 | #endif |
| 1206 | const uint8_t *X86InstructionSelector::getMatchTable() const { |
| 1207 | constexpr static uint8_t MatchTable0[] = { |
| 1208 | /* 0 */ GIM_SwitchOpcode, /*MI*/0, /*[*/GIMT_Encode2(55), GIMT_Encode2(358), /*)*//*default:*//*Label 82*/ GIMT_Encode4(235828), |
| 1209 | /* 10 */ /*TargetOpcode::G_ADD*//*Label 0*/ GIMT_Encode4(1222), |
| 1210 | /* 14 */ /*TargetOpcode::G_SUB*//*Label 1*/ GIMT_Encode4(6684), |
| 1211 | /* 18 */ /*TargetOpcode::G_MUL*//*Label 2*/ GIMT_Encode4(9976), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1212 | /* 46 */ /*TargetOpcode::G_AND*//*Label 3*/ GIMT_Encode4(13393), |
| 1213 | /* 50 */ /*TargetOpcode::G_OR*//*Label 4*/ GIMT_Encode4(23469), |
| 1214 | /* 54 */ /*TargetOpcode::G_XOR*//*Label 5*/ GIMT_Encode4(31357), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1215 | /* 70 */ /*TargetOpcode::G_UAVGCEIL*//*Label 6*/ GIMT_Encode4(43304), 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), |
| 1216 | /* 130 */ /*TargetOpcode::G_CONCAT_VECTORS*//*Label 7*/ GIMT_Encode4(44990), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1217 | /* 142 */ /*TargetOpcode::G_BITCAST*//*Label 8*/ GIMT_Encode4(45157), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1218 | /* 166 */ /*TargetOpcode::G_INTRINSIC_LRINT*//*Label 9*/ GIMT_Encode4(47793), |
| 1219 | /* 170 */ /*TargetOpcode::G_INTRINSIC_LLRINT*//*Label 10*/ GIMT_Encode4(50971), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1220 | /* 186 */ /*TargetOpcode::G_LOAD*//*Label 11*/ GIMT_Encode4(52191), |
| 1221 | /* 190 */ /*TargetOpcode::G_SEXTLOAD*//*Label 12*/ GIMT_Encode4(58407), |
| 1222 | /* 194 */ /*TargetOpcode::G_ZEXTLOAD*//*Label 13*/ GIMT_Encode4(58740), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1223 | /* 210 */ /*TargetOpcode::G_STORE*//*Label 14*/ GIMT_Encode4(59383), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1224 | /* 226 */ /*TargetOpcode::G_ATOMICRMW_XCHG*//*Label 15*/ GIMT_Encode4(84846), |
| 1225 | /* 230 */ /*TargetOpcode::G_ATOMICRMW_ADD*//*Label 16*/ GIMT_Encode4(85082), 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), |
| 1226 | /* 314 */ /*TargetOpcode::G_PREFETCH*//*Label 17*/ GIMT_Encode4(85330), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1227 | /* 330 */ /*TargetOpcode::G_INTRINSIC*//*Label 18*/ GIMT_Encode4(85649), |
| 1228 | /* 334 */ /*TargetOpcode::G_INTRINSIC_W_SIDE_EFFECTS*//*Label 19*/ GIMT_Encode4(98196), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1229 | /* 346 */ /*TargetOpcode::G_ANYEXT*//*Label 20*/ GIMT_Encode4(106931), |
| 1230 | /* 350 */ /*TargetOpcode::G_TRUNC*//*Label 21*/ GIMT_Encode4(107360), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1231 | /* 366 */ /*TargetOpcode::G_CONSTANT*//*Label 22*/ GIMT_Encode4(108449), |
| 1232 | /* 370 */ /*TargetOpcode::G_FCONSTANT*//*Label 23*/ GIMT_Encode4(109052), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1233 | /* 382 */ /*TargetOpcode::G_SEXT*//*Label 24*/ GIMT_Encode4(109505), |
| 1234 | /* 386 */ /*TargetOpcode::G_SEXT_INREG*//*Label 25*/ GIMT_Encode4(111177), |
| 1235 | /* 390 */ /*TargetOpcode::G_ZEXT*//*Label 26*/ GIMT_Encode4(111419), |
| 1236 | /* 394 */ /*TargetOpcode::G_SHL*//*Label 27*/ GIMT_Encode4(113376), |
| 1237 | /* 398 */ /*TargetOpcode::G_LSHR*//*Label 28*/ GIMT_Encode4(115060), |
| 1238 | /* 402 */ /*TargetOpcode::G_ASHR*//*Label 29*/ GIMT_Encode4(116520), |
| 1239 | /* 406 */ /*TargetOpcode::G_FSHL*//*Label 30*/ GIMT_Encode4(117980), |
| 1240 | /* 410 */ /*TargetOpcode::G_FSHR*//*Label 31*/ GIMT_Encode4(120693), |
| 1241 | /* 414 */ /*TargetOpcode::G_ROTR*//*Label 32*/ GIMT_Encode4(123460), |
| 1242 | /* 418 */ /*TargetOpcode::G_ROTL*//*Label 33*/ GIMT_Encode4(126692), |
| 1243 | /* 422 */ /*TargetOpcode::G_ICMP*//*Label 34*/ GIMT_Encode4(130093), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1244 | /* 438 */ /*TargetOpcode::G_SELECT*//*Label 35*/ GIMT_Encode4(131750), 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), |
| 1245 | /* 482 */ /*TargetOpcode::G_UMULH*//*Label 36*/ GIMT_Encode4(139416), |
| 1246 | /* 486 */ /*TargetOpcode::G_SMULH*//*Label 37*/ GIMT_Encode4(140281), |
| 1247 | /* 490 */ /*TargetOpcode::G_UADDSAT*//*Label 38*/ GIMT_Encode4(141146), |
| 1248 | /* 494 */ /*TargetOpcode::G_SADDSAT*//*Label 39*/ GIMT_Encode4(142832), |
| 1249 | /* 498 */ /*TargetOpcode::G_USUBSAT*//*Label 40*/ GIMT_Encode4(144518), |
| 1250 | /* 502 */ /*TargetOpcode::G_SSUBSAT*//*Label 41*/ GIMT_Encode4(145584), 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), |
| 1251 | /* 546 */ /*TargetOpcode::G_FADD*//*Label 42*/ GIMT_Encode4(146650), |
| 1252 | /* 550 */ /*TargetOpcode::G_FSUB*//*Label 43*/ GIMT_Encode4(152564), |
| 1253 | /* 554 */ /*TargetOpcode::G_FMUL*//*Label 44*/ GIMT_Encode4(156746), |
| 1254 | /* 558 */ /*TargetOpcode::G_FMA*//*Label 45*/ GIMT_Encode4(162660), GIMT_Encode4(0), |
| 1255 | /* 566 */ /*TargetOpcode::G_FDIV*//*Label 46*/ GIMT_Encode4(168648), 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), |
| 1256 | /* 618 */ /*TargetOpcode::G_FNEG*//*Label 47*/ GIMT_Encode4(172830), |
| 1257 | /* 622 */ /*TargetOpcode::G_FPEXT*//*Label 48*/ GIMT_Encode4(172953), |
| 1258 | /* 626 */ /*TargetOpcode::G_FPTRUNC*//*Label 49*/ GIMT_Encode4(173885), |
| 1259 | /* 630 */ /*TargetOpcode::G_FPTOSI*//*Label 50*/ GIMT_Encode4(174271), |
| 1260 | /* 634 */ /*TargetOpcode::G_FPTOUI*//*Label 51*/ GIMT_Encode4(175652), |
| 1261 | /* 638 */ /*TargetOpcode::G_SITOFP*//*Label 52*/ GIMT_Encode4(176208), |
| 1262 | /* 642 */ /*TargetOpcode::G_UITOFP*//*Label 53*/ GIMT_Encode4(179584), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1263 | /* 654 */ /*TargetOpcode::G_FABS*//*Label 54*/ GIMT_Encode4(181831), 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), |
| 1264 | /* 742 */ /*TargetOpcode::G_SMIN*//*Label 55*/ GIMT_Encode4(181954), |
| 1265 | /* 746 */ /*TargetOpcode::G_SMAX*//*Label 56*/ GIMT_Encode4(185275), |
| 1266 | /* 750 */ /*TargetOpcode::G_UMIN*//*Label 57*/ GIMT_Encode4(188596), |
| 1267 | /* 754 */ /*TargetOpcode::G_UMAX*//*Label 58*/ GIMT_Encode4(191917), |
| 1268 | /* 758 */ /*TargetOpcode::G_ABS*//*Label 59*/ GIMT_Encode4(195238), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1269 | /* 770 */ /*TargetOpcode::G_BR*//*Label 60*/ GIMT_Encode4(197119), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1270 | /* 786 */ /*TargetOpcode::G_EXTRACT_SUBVECTOR*//*Label 61*/ GIMT_Encode4(197135), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1271 | /* 810 */ /*TargetOpcode::G_VECTOR_COMPRESS*//*Label 62*/ GIMT_Encode4(200064), |
| 1272 | /* 814 */ /*TargetOpcode::G_CTTZ*//*Label 63*/ GIMT_Encode4(202046), |
| 1273 | /* 818 */ /*TargetOpcode::G_CTTZ_ZERO_UNDEF*//*Label 64*/ GIMT_Encode4(202352), |
| 1274 | /* 822 */ /*TargetOpcode::G_CTLZ*//*Label 65*/ GIMT_Encode4(202739), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1275 | /* 834 */ /*TargetOpcode::G_CTPOP*//*Label 66*/ GIMT_Encode4(204043), |
| 1276 | /* 838 */ /*TargetOpcode::G_BSWAP*//*Label 67*/ GIMT_Encode4(206305), 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), |
| 1277 | /* 894 */ /*TargetOpcode::G_FSQRT*//*Label 68*/ GIMT_Encode4(206805), 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), |
| 1278 | /* 934 */ /*TargetOpcode::G_STRICT_FADD*//*Label 69*/ GIMT_Encode4(208974), |
| 1279 | /* 938 */ /*TargetOpcode::G_STRICT_FSUB*//*Label 70*/ GIMT_Encode4(213904), |
| 1280 | /* 942 */ /*TargetOpcode::G_STRICT_FMUL*//*Label 71*/ GIMT_Encode4(217594), |
| 1281 | /* 946 */ /*TargetOpcode::G_STRICT_FDIV*//*Label 72*/ GIMT_Encode4(222524), GIMT_Encode4(0), |
| 1282 | /* 954 */ /*TargetOpcode::G_STRICT_FMA*//*Label 73*/ GIMT_Encode4(226214), |
| 1283 | /* 958 */ /*TargetOpcode::G_STRICT_FSQRT*//*Label 74*/ GIMT_Encode4(232202), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1284 | /* 994 */ /*TargetOpcode::G_TRAP*//*Label 75*/ GIMT_Encode4(234371), |
| 1285 | /* 998 */ /*TargetOpcode::G_DEBUGTRAP*//*Label 76*/ GIMT_Encode4(234384), |
| 1286 | /* 1002 */ /*TargetOpcode::G_UBSANTRAP*//*Label 77*/ GIMT_Encode4(234420), 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), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1287 | /* 1206 */ /*X86::G_FILD*//*Label 78*/ GIMT_Encode4(234436), |
| 1288 | /* 1210 */ /*X86::G_FIST*//*Label 79*/ GIMT_Encode4(234895), |
| 1289 | /* 1214 */ /*X86::G_FLDCW16*//*Label 80*/ GIMT_Encode4(235759), |
| 1290 | /* 1218 */ /*X86::G_FNSTCW16*//*Label 81*/ GIMT_Encode4(235795), |
| 1291 | /* 1222 */ // Label 0: @1222 |
| 1292 | /* 1222 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(25), /*)*//*default:*//*Label 99*/ GIMT_Encode4(6683), |
| 1293 | /* 1233 */ /*GILLT_s8*//*Label 83*/ GIMT_Encode4(1329), |
| 1294 | /* 1237 */ /*GILLT_s16*//*Label 84*/ GIMT_Encode4(1712), |
| 1295 | /* 1241 */ /*GILLT_s32*//*Label 85*/ GIMT_Encode4(2171), |
| 1296 | /* 1245 */ /*GILLT_s64*//*Label 86*/ GIMT_Encode4(2630), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 1297 | /* 1261 */ /*GILLT_v2s64*//*Label 87*/ GIMT_Encode4(3187), GIMT_Encode4(0), |
| 1298 | /* 1269 */ /*GILLT_v4s32*//*Label 88*/ GIMT_Encode4(3529), |
| 1299 | /* 1273 */ /*GILLT_v4s64*//*Label 89*/ GIMT_Encode4(3993), GIMT_Encode4(0), |
| 1300 | /* 1281 */ /*GILLT_v8s16*//*Label 90*/ GIMT_Encode4(4308), |
| 1301 | /* 1285 */ /*GILLT_v8s32*//*Label 91*/ GIMT_Encode4(4772), |
| 1302 | /* 1289 */ /*GILLT_v8s64*//*Label 92*/ GIMT_Encode4(5087), GIMT_Encode4(0), |
| 1303 | /* 1297 */ /*GILLT_v16s8*//*Label 93*/ GIMT_Encode4(5243), |
| 1304 | /* 1301 */ /*GILLT_v16s16*//*Label 94*/ GIMT_Encode4(5585), |
| 1305 | /* 1305 */ /*GILLT_v16s32*//*Label 95*/ GIMT_Encode4(5900), GIMT_Encode4(0), |
| 1306 | /* 1313 */ /*GILLT_v32s8*//*Label 96*/ GIMT_Encode4(6056), |
| 1307 | /* 1317 */ /*GILLT_v32s16*//*Label 97*/ GIMT_Encode4(6371), GIMT_Encode4(0), |
| 1308 | /* 1325 */ /*GILLT_v64s8*//*Label 98*/ GIMT_Encode4(6527), |
| 1309 | /* 1329 */ // Label 83: @1329 |
| 1310 | /* 1329 */ GIM_Try, /*On fail goto*//*Label 100*/ GIMT_Encode4(1711), |
| 1311 | /* 1334 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 1312 | /* 1337 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 1313 | /* 1340 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1314 | /* 1344 */ GIM_Try, /*On fail goto*//*Label 101*/ GIMT_Encode4(1405), // Rule ID 26136 // |
| 1315 | /* 1349 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1316 | /* 1352 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1317 | /* 1356 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1318 | /* 1360 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1319 | /* 1363 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1320 | /* 1367 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 1321 | /* 1371 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1322 | /* 1375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1323 | /* 1377 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1324 | /* 1384 */ // (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) |
| 1325 | /* 1384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rm), |
| 1326 | /* 1387 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1327 | /* 1389 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1328 | /* 1391 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1329 | /* 1395 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1330 | /* 1398 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1331 | /* 1403 */ GIR_RootConstrainSelectedInstOperands, |
| 1332 | /* 1404 */ // GIR_Coverage, 26136, |
| 1333 | /* 1404 */ GIR_EraseRootFromParent_Done, |
| 1334 | /* 1405 */ // Label 101: @1405 |
| 1335 | /* 1405 */ GIM_Try, /*On fail goto*//*Label 102*/ GIMT_Encode4(1466), // Rule ID 22878 // |
| 1336 | /* 1410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1337 | /* 1413 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1338 | /* 1417 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1339 | /* 1421 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1340 | /* 1425 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1341 | /* 1428 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1342 | /* 1432 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 1343 | /* 1436 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1344 | /* 1438 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1345 | /* 1445 */ // (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) |
| 1346 | /* 1445 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rm), |
| 1347 | /* 1448 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1348 | /* 1450 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1349 | /* 1452 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1350 | /* 1456 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1351 | /* 1459 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1352 | /* 1464 */ GIR_RootConstrainSelectedInstOperands, |
| 1353 | /* 1465 */ // GIR_Coverage, 22878, |
| 1354 | /* 1465 */ GIR_EraseRootFromParent_Done, |
| 1355 | /* 1466 */ // Label 102: @1466 |
| 1356 | /* 1466 */ GIM_Try, /*On fail goto*//*Label 103*/ GIMT_Encode4(1494), // Rule ID 22944 // |
| 1357 | /* 1471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1358 | /* 1474 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1359 | /* 1478 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1360 | /* 1482 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src, 1:{ *:[i8] }) => (INC8r:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 1361 | /* 1482 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC8r), |
| 1362 | /* 1485 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1363 | /* 1487 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1364 | /* 1489 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1365 | /* 1492 */ GIR_RootConstrainSelectedInstOperands, |
| 1366 | /* 1493 */ // GIR_Coverage, 22944, |
| 1367 | /* 1493 */ GIR_EraseRootFromParent_Done, |
| 1368 | /* 1494 */ // Label 103: @1494 |
| 1369 | /* 1494 */ GIM_Try, /*On fail goto*//*Label 104*/ GIMT_Encode4(1522), // Rule ID 22947 // |
| 1370 | /* 1499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1371 | /* 1502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1372 | /* 1506 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 1373 | /* 1510 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src, -1:{ *:[i8] }) => (DEC8r:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 1374 | /* 1510 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC8r), |
| 1375 | /* 1513 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1376 | /* 1515 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1377 | /* 1517 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1378 | /* 1520 */ GIR_RootConstrainSelectedInstOperands, |
| 1379 | /* 1521 */ // GIR_Coverage, 22947, |
| 1380 | /* 1521 */ GIR_EraseRootFromParent_Done, |
| 1381 | /* 1522 */ // Label 104: @1522 |
| 1382 | /* 1522 */ GIM_Try, /*On fail goto*//*Label 105*/ GIMT_Encode4(1550), // Rule ID 23034 // |
| 1383 | /* 1527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1384 | /* 1530 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1385 | /* 1534 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1386 | /* 1538 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src, 1:{ *:[i8] }) => (INC8r_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 1387 | /* 1538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC8r_ND), |
| 1388 | /* 1541 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1389 | /* 1543 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1390 | /* 1545 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1391 | /* 1548 */ GIR_RootConstrainSelectedInstOperands, |
| 1392 | /* 1549 */ // GIR_Coverage, 23034, |
| 1393 | /* 1549 */ GIR_EraseRootFromParent_Done, |
| 1394 | /* 1550 */ // Label 105: @1550 |
| 1395 | /* 1550 */ GIM_Try, /*On fail goto*//*Label 106*/ GIMT_Encode4(1578), // Rule ID 23037 // |
| 1396 | /* 1555 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1397 | /* 1558 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1398 | /* 1562 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 1399 | /* 1566 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src, -1:{ *:[i8] }) => (DEC8r_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 1400 | /* 1566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC8r_ND), |
| 1401 | /* 1569 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1402 | /* 1571 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1403 | /* 1573 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1404 | /* 1576 */ GIR_RootConstrainSelectedInstOperands, |
| 1405 | /* 1577 */ // GIR_Coverage, 23037, |
| 1406 | /* 1577 */ GIR_EraseRootFromParent_Done, |
| 1407 | /* 1578 */ // Label 106: @1578 |
| 1408 | /* 1578 */ GIM_Try, /*On fail goto*//*Label 107*/ GIMT_Encode4(1615), // Rule ID 22882 // |
| 1409 | /* 1583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1410 | /* 1586 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1411 | /* 1590 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1412 | /* 1594 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1413 | /* 1598 */ // MIs[1] Operand 1 |
| 1414 | /* 1598 */ // No operand predicates |
| 1415 | /* 1598 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1416 | /* 1600 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ADD8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 1417 | /* 1600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8ri), |
| 1418 | /* 1603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1419 | /* 1605 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1420 | /* 1607 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1421 | /* 1610 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1422 | /* 1613 */ GIR_RootConstrainSelectedInstOperands, |
| 1423 | /* 1614 */ // GIR_Coverage, 22882, |
| 1424 | /* 1614 */ GIR_EraseRootFromParent_Done, |
| 1425 | /* 1615 */ // Label 107: @1615 |
| 1426 | /* 1615 */ GIM_Try, /*On fail goto*//*Label 108*/ GIMT_Encode4(1652), // Rule ID 22972 // |
| 1427 | /* 1620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1428 | /* 1623 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1429 | /* 1627 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1430 | /* 1631 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1431 | /* 1635 */ // MIs[1] Operand 1 |
| 1432 | /* 1635 */ // No operand predicates |
| 1433 | /* 1635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1434 | /* 1637 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ADD8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 1435 | /* 1637 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8ri_ND), |
| 1436 | /* 1640 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1437 | /* 1642 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1438 | /* 1644 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1439 | /* 1647 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1440 | /* 1650 */ GIR_RootConstrainSelectedInstOperands, |
| 1441 | /* 1651 */ // GIR_Coverage, 22972, |
| 1442 | /* 1651 */ GIR_EraseRootFromParent_Done, |
| 1443 | /* 1652 */ // Label 108: @1652 |
| 1444 | /* 1652 */ GIM_Try, /*On fail goto*//*Label 109*/ GIMT_Encode4(1681), // Rule ID 22874 // |
| 1445 | /* 1657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1446 | /* 1660 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1447 | /* 1664 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1448 | /* 1668 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (ADD8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 1449 | /* 1668 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD8rr), |
| 1450 | /* 1673 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1451 | /* 1679 */ GIR_RootConstrainSelectedInstOperands, |
| 1452 | /* 1680 */ // GIR_Coverage, 22874, |
| 1453 | /* 1680 */ GIR_Done, |
| 1454 | /* 1681 */ // Label 109: @1681 |
| 1455 | /* 1681 */ GIM_Try, /*On fail goto*//*Label 110*/ GIMT_Encode4(1710), // Rule ID 22964 // |
| 1456 | /* 1686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1457 | /* 1689 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1458 | /* 1693 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 1459 | /* 1697 */ // (add:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (ADD8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 1460 | /* 1697 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD8rr_ND), |
| 1461 | /* 1702 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1462 | /* 1708 */ GIR_RootConstrainSelectedInstOperands, |
| 1463 | /* 1709 */ // GIR_Coverage, 22964, |
| 1464 | /* 1709 */ GIR_Done, |
| 1465 | /* 1710 */ // Label 110: @1710 |
| 1466 | /* 1710 */ GIM_Reject, |
| 1467 | /* 1711 */ // Label 100: @1711 |
| 1468 | /* 1711 */ GIM_Reject, |
| 1469 | /* 1712 */ // Label 84: @1712 |
| 1470 | /* 1712 */ GIM_Try, /*On fail goto*//*Label 111*/ GIMT_Encode4(2170), |
| 1471 | /* 1717 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 1472 | /* 1720 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 1473 | /* 1723 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1474 | /* 1727 */ GIM_Try, /*On fail goto*//*Label 112*/ GIMT_Encode4(1788), // Rule ID 26137 // |
| 1475 | /* 1732 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1476 | /* 1735 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1477 | /* 1739 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1478 | /* 1743 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1479 | /* 1746 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1480 | /* 1750 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 1481 | /* 1754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1482 | /* 1758 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1483 | /* 1760 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1484 | /* 1767 */ // (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) |
| 1485 | /* 1767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rm), |
| 1486 | /* 1770 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1487 | /* 1772 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1488 | /* 1774 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1489 | /* 1778 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1490 | /* 1781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1491 | /* 1786 */ GIR_RootConstrainSelectedInstOperands, |
| 1492 | /* 1787 */ // GIR_Coverage, 26137, |
| 1493 | /* 1787 */ GIR_EraseRootFromParent_Done, |
| 1494 | /* 1788 */ // Label 112: @1788 |
| 1495 | /* 1788 */ GIM_Try, /*On fail goto*//*Label 113*/ GIMT_Encode4(1849), // Rule ID 22879 // |
| 1496 | /* 1793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1497 | /* 1796 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1498 | /* 1800 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1499 | /* 1804 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1500 | /* 1808 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1501 | /* 1811 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1502 | /* 1815 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 1503 | /* 1819 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1504 | /* 1821 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1505 | /* 1828 */ // (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) |
| 1506 | /* 1828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rm), |
| 1507 | /* 1831 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1508 | /* 1833 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1509 | /* 1835 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1510 | /* 1839 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1511 | /* 1842 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1512 | /* 1847 */ GIR_RootConstrainSelectedInstOperands, |
| 1513 | /* 1848 */ // GIR_Coverage, 22879, |
| 1514 | /* 1848 */ GIR_EraseRootFromParent_Done, |
| 1515 | /* 1849 */ // Label 113: @1849 |
| 1516 | /* 1849 */ GIM_Try, /*On fail goto*//*Label 114*/ GIMT_Encode4(1887), // Rule ID 22684 // |
| 1517 | /* 1854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1518 | /* 1857 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1519 | /* 1861 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1520 | /* 1872 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, 128:{ *:[i16] }) => (SUB16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, -128:{ *:[i16] }) |
| 1521 | /* 1872 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16ri), |
| 1522 | /* 1875 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1523 | /* 1877 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1524 | /* 1879 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 1525 | /* 1882 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1526 | /* 1885 */ GIR_RootConstrainSelectedInstOperands, |
| 1527 | /* 1886 */ // GIR_Coverage, 22684, |
| 1528 | /* 1886 */ GIR_EraseRootFromParent_Done, |
| 1529 | /* 1887 */ // Label 114: @1887 |
| 1530 | /* 1887 */ GIM_Try, /*On fail goto*//*Label 115*/ GIMT_Encode4(1925), // Rule ID 22690 // |
| 1531 | /* 1892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1532 | /* 1895 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1533 | /* 1899 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1534 | /* 1910 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, 128:{ *:[i16] }) => (SUB16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, -128:{ *:[i16] }) |
| 1535 | /* 1910 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16ri_ND), |
| 1536 | /* 1913 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1537 | /* 1915 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1538 | /* 1917 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 1539 | /* 1920 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1540 | /* 1923 */ GIR_RootConstrainSelectedInstOperands, |
| 1541 | /* 1924 */ // GIR_Coverage, 22690, |
| 1542 | /* 1924 */ GIR_EraseRootFromParent_Done, |
| 1543 | /* 1925 */ // Label 115: @1925 |
| 1544 | /* 1925 */ GIM_Try, /*On fail goto*//*Label 116*/ GIMT_Encode4(1953), // Rule ID 22945 // |
| 1545 | /* 1930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1546 | /* 1933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1547 | /* 1937 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1548 | /* 1941 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src, 1:{ *:[i16] }) => (INC16r:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 1549 | /* 1941 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC16r), |
| 1550 | /* 1944 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1551 | /* 1946 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1552 | /* 1948 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1553 | /* 1951 */ GIR_RootConstrainSelectedInstOperands, |
| 1554 | /* 1952 */ // GIR_Coverage, 22945, |
| 1555 | /* 1952 */ GIR_EraseRootFromParent_Done, |
| 1556 | /* 1953 */ // Label 116: @1953 |
| 1557 | /* 1953 */ GIM_Try, /*On fail goto*//*Label 117*/ GIMT_Encode4(1981), // Rule ID 22948 // |
| 1558 | /* 1958 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1559 | /* 1961 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1560 | /* 1965 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 1561 | /* 1969 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src, -1:{ *:[i16] }) => (DEC16r:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 1562 | /* 1969 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC16r), |
| 1563 | /* 1972 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1564 | /* 1974 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1565 | /* 1976 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1566 | /* 1979 */ GIR_RootConstrainSelectedInstOperands, |
| 1567 | /* 1980 */ // GIR_Coverage, 22948, |
| 1568 | /* 1980 */ GIR_EraseRootFromParent_Done, |
| 1569 | /* 1981 */ // Label 117: @1981 |
| 1570 | /* 1981 */ GIM_Try, /*On fail goto*//*Label 118*/ GIMT_Encode4(2009), // Rule ID 23035 // |
| 1571 | /* 1986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1572 | /* 1989 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1573 | /* 1993 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1574 | /* 1997 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src, 1:{ *:[i16] }) => (INC16r_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 1575 | /* 1997 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC16r_ND), |
| 1576 | /* 2000 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1577 | /* 2002 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1578 | /* 2004 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1579 | /* 2007 */ GIR_RootConstrainSelectedInstOperands, |
| 1580 | /* 2008 */ // GIR_Coverage, 23035, |
| 1581 | /* 2008 */ GIR_EraseRootFromParent_Done, |
| 1582 | /* 2009 */ // Label 118: @2009 |
| 1583 | /* 2009 */ GIM_Try, /*On fail goto*//*Label 119*/ GIMT_Encode4(2037), // Rule ID 23038 // |
| 1584 | /* 2014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1585 | /* 2017 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1586 | /* 2021 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 1587 | /* 2025 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src, -1:{ *:[i16] }) => (DEC16r_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 1588 | /* 2025 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC16r_ND), |
| 1589 | /* 2028 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1590 | /* 2030 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1591 | /* 2032 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1592 | /* 2035 */ GIR_RootConstrainSelectedInstOperands, |
| 1593 | /* 2036 */ // GIR_Coverage, 23038, |
| 1594 | /* 2036 */ GIR_EraseRootFromParent_Done, |
| 1595 | /* 2037 */ // Label 119: @2037 |
| 1596 | /* 2037 */ GIM_Try, /*On fail goto*//*Label 120*/ GIMT_Encode4(2074), // Rule ID 22883 // |
| 1597 | /* 2042 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1598 | /* 2045 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1599 | /* 2049 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1600 | /* 2053 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1601 | /* 2057 */ // MIs[1] Operand 1 |
| 1602 | /* 2057 */ // No operand predicates |
| 1603 | /* 2057 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1604 | /* 2059 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (ADD16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 1605 | /* 2059 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16ri), |
| 1606 | /* 2062 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1607 | /* 2064 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1608 | /* 2066 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1609 | /* 2069 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1610 | /* 2072 */ GIR_RootConstrainSelectedInstOperands, |
| 1611 | /* 2073 */ // GIR_Coverage, 22883, |
| 1612 | /* 2073 */ GIR_EraseRootFromParent_Done, |
| 1613 | /* 2074 */ // Label 120: @2074 |
| 1614 | /* 2074 */ GIM_Try, /*On fail goto*//*Label 121*/ GIMT_Encode4(2111), // Rule ID 22973 // |
| 1615 | /* 2079 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1616 | /* 2082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1617 | /* 2086 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1618 | /* 2090 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1619 | /* 2094 */ // MIs[1] Operand 1 |
| 1620 | /* 2094 */ // No operand predicates |
| 1621 | /* 2094 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1622 | /* 2096 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (ADD16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 1623 | /* 2096 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16ri_ND), |
| 1624 | /* 2099 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1625 | /* 2101 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1626 | /* 2103 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1627 | /* 2106 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1628 | /* 2109 */ GIR_RootConstrainSelectedInstOperands, |
| 1629 | /* 2110 */ // GIR_Coverage, 22973, |
| 1630 | /* 2110 */ GIR_EraseRootFromParent_Done, |
| 1631 | /* 2111 */ // Label 121: @2111 |
| 1632 | /* 2111 */ GIM_Try, /*On fail goto*//*Label 122*/ GIMT_Encode4(2140), // Rule ID 22875 // |
| 1633 | /* 2116 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1634 | /* 2119 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1635 | /* 2123 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1636 | /* 2127 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (ADD16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 1637 | /* 2127 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD16rr), |
| 1638 | /* 2132 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1639 | /* 2138 */ GIR_RootConstrainSelectedInstOperands, |
| 1640 | /* 2139 */ // GIR_Coverage, 22875, |
| 1641 | /* 2139 */ GIR_Done, |
| 1642 | /* 2140 */ // Label 122: @2140 |
| 1643 | /* 2140 */ GIM_Try, /*On fail goto*//*Label 123*/ GIMT_Encode4(2169), // Rule ID 22965 // |
| 1644 | /* 2145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1645 | /* 2148 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1646 | /* 2152 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 1647 | /* 2156 */ // (add:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (ADD16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 1648 | /* 2156 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD16rr_ND), |
| 1649 | /* 2161 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1650 | /* 2167 */ GIR_RootConstrainSelectedInstOperands, |
| 1651 | /* 2168 */ // GIR_Coverage, 22965, |
| 1652 | /* 2168 */ GIR_Done, |
| 1653 | /* 2169 */ // Label 123: @2169 |
| 1654 | /* 2169 */ GIM_Reject, |
| 1655 | /* 2170 */ // Label 111: @2170 |
| 1656 | /* 2170 */ GIM_Reject, |
| 1657 | /* 2171 */ // Label 85: @2171 |
| 1658 | /* 2171 */ GIM_Try, /*On fail goto*//*Label 124*/ GIMT_Encode4(2629), |
| 1659 | /* 2176 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 1660 | /* 2179 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 1661 | /* 2182 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1662 | /* 2186 */ GIM_Try, /*On fail goto*//*Label 125*/ GIMT_Encode4(2247), // Rule ID 26138 // |
| 1663 | /* 2191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1664 | /* 2194 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1665 | /* 2198 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1666 | /* 2202 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1667 | /* 2205 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1668 | /* 2209 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 1669 | /* 2213 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1670 | /* 2217 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1671 | /* 2219 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1672 | /* 2226 */ // (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) |
| 1673 | /* 2226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rm), |
| 1674 | /* 2229 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1675 | /* 2231 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1676 | /* 2233 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1677 | /* 2237 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1678 | /* 2240 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1679 | /* 2245 */ GIR_RootConstrainSelectedInstOperands, |
| 1680 | /* 2246 */ // GIR_Coverage, 26138, |
| 1681 | /* 2246 */ GIR_EraseRootFromParent_Done, |
| 1682 | /* 2247 */ // Label 125: @2247 |
| 1683 | /* 2247 */ GIM_Try, /*On fail goto*//*Label 126*/ GIMT_Encode4(2308), // Rule ID 22880 // |
| 1684 | /* 2252 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1685 | /* 2255 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1686 | /* 2259 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1687 | /* 2263 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1688 | /* 2267 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1689 | /* 2270 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1690 | /* 2274 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 1691 | /* 2278 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1692 | /* 2280 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1693 | /* 2287 */ // (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) |
| 1694 | /* 2287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rm), |
| 1695 | /* 2290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1696 | /* 2292 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1697 | /* 2294 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1698 | /* 2298 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1699 | /* 2301 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1700 | /* 2306 */ GIR_RootConstrainSelectedInstOperands, |
| 1701 | /* 2307 */ // GIR_Coverage, 22880, |
| 1702 | /* 2307 */ GIR_EraseRootFromParent_Done, |
| 1703 | /* 2308 */ // Label 126: @2308 |
| 1704 | /* 2308 */ GIM_Try, /*On fail goto*//*Label 127*/ GIMT_Encode4(2346), // Rule ID 22685 // |
| 1705 | /* 2313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1706 | /* 2316 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1707 | /* 2320 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1708 | /* 2331 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, 128:{ *:[i32] }) => (SUB32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, -128:{ *:[i32] }) |
| 1709 | /* 2331 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32ri), |
| 1710 | /* 2334 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1711 | /* 2336 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1712 | /* 2338 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 1713 | /* 2341 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1714 | /* 2344 */ GIR_RootConstrainSelectedInstOperands, |
| 1715 | /* 2345 */ // GIR_Coverage, 22685, |
| 1716 | /* 2345 */ GIR_EraseRootFromParent_Done, |
| 1717 | /* 2346 */ // Label 127: @2346 |
| 1718 | /* 2346 */ GIM_Try, /*On fail goto*//*Label 128*/ GIMT_Encode4(2384), // Rule ID 22691 // |
| 1719 | /* 2351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1720 | /* 2354 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1721 | /* 2358 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1722 | /* 2369 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, 128:{ *:[i32] }) => (SUB32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, -128:{ *:[i32] }) |
| 1723 | /* 2369 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32ri_ND), |
| 1724 | /* 2372 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1725 | /* 2374 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1726 | /* 2376 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 1727 | /* 2379 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1728 | /* 2382 */ GIR_RootConstrainSelectedInstOperands, |
| 1729 | /* 2383 */ // GIR_Coverage, 22691, |
| 1730 | /* 2383 */ GIR_EraseRootFromParent_Done, |
| 1731 | /* 2384 */ // Label 128: @2384 |
| 1732 | /* 2384 */ GIM_Try, /*On fail goto*//*Label 129*/ GIMT_Encode4(2412), // Rule ID 22946 // |
| 1733 | /* 2389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1734 | /* 2392 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1735 | /* 2396 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1736 | /* 2400 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }) => (INC32r:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 1737 | /* 2400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC32r), |
| 1738 | /* 2403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1739 | /* 2405 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1740 | /* 2407 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1741 | /* 2410 */ GIR_RootConstrainSelectedInstOperands, |
| 1742 | /* 2411 */ // GIR_Coverage, 22946, |
| 1743 | /* 2411 */ GIR_EraseRootFromParent_Done, |
| 1744 | /* 2412 */ // Label 129: @2412 |
| 1745 | /* 2412 */ GIM_Try, /*On fail goto*//*Label 130*/ GIMT_Encode4(2440), // Rule ID 22949 // |
| 1746 | /* 2417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_UseIncDec), |
| 1747 | /* 2420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1748 | /* 2424 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 1749 | /* 2428 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }) => (DEC32r:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 1750 | /* 2428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC32r), |
| 1751 | /* 2431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1752 | /* 2433 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1753 | /* 2435 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1754 | /* 2438 */ GIR_RootConstrainSelectedInstOperands, |
| 1755 | /* 2439 */ // GIR_Coverage, 22949, |
| 1756 | /* 2439 */ GIR_EraseRootFromParent_Done, |
| 1757 | /* 2440 */ // Label 130: @2440 |
| 1758 | /* 2440 */ GIM_Try, /*On fail goto*//*Label 131*/ GIMT_Encode4(2468), // Rule ID 23036 // |
| 1759 | /* 2445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1760 | /* 2448 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1761 | /* 2452 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1762 | /* 2456 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }) => (INC32r_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 1763 | /* 2456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC32r_ND), |
| 1764 | /* 2459 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1765 | /* 2461 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1766 | /* 2463 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1767 | /* 2466 */ GIR_RootConstrainSelectedInstOperands, |
| 1768 | /* 2467 */ // GIR_Coverage, 23036, |
| 1769 | /* 2467 */ GIR_EraseRootFromParent_Done, |
| 1770 | /* 2468 */ // Label 131: @2468 |
| 1771 | /* 2468 */ GIM_Try, /*On fail goto*//*Label 132*/ GIMT_Encode4(2496), // Rule ID 23039 // |
| 1772 | /* 2473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_UseIncDec), |
| 1773 | /* 2476 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1774 | /* 2480 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 1775 | /* 2484 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }) => (DEC32r_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 1776 | /* 2484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC32r_ND), |
| 1777 | /* 2487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1778 | /* 2489 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1779 | /* 2491 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1780 | /* 2494 */ GIR_RootConstrainSelectedInstOperands, |
| 1781 | /* 2495 */ // GIR_Coverage, 23039, |
| 1782 | /* 2495 */ GIR_EraseRootFromParent_Done, |
| 1783 | /* 2496 */ // Label 132: @2496 |
| 1784 | /* 2496 */ GIM_Try, /*On fail goto*//*Label 133*/ GIMT_Encode4(2533), // Rule ID 22884 // |
| 1785 | /* 2501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1786 | /* 2504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1787 | /* 2508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1788 | /* 2512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1789 | /* 2516 */ // MIs[1] Operand 1 |
| 1790 | /* 2516 */ // No operand predicates |
| 1791 | /* 2516 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1792 | /* 2518 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (ADD32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 1793 | /* 2518 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32ri), |
| 1794 | /* 2521 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1795 | /* 2523 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1796 | /* 2525 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1797 | /* 2528 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1798 | /* 2531 */ GIR_RootConstrainSelectedInstOperands, |
| 1799 | /* 2532 */ // GIR_Coverage, 22884, |
| 1800 | /* 2532 */ GIR_EraseRootFromParent_Done, |
| 1801 | /* 2533 */ // Label 133: @2533 |
| 1802 | /* 2533 */ GIM_Try, /*On fail goto*//*Label 134*/ GIMT_Encode4(2570), // Rule ID 22974 // |
| 1803 | /* 2538 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1804 | /* 2541 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1805 | /* 2545 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1806 | /* 2549 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 1807 | /* 2553 */ // MIs[1] Operand 1 |
| 1808 | /* 2553 */ // No operand predicates |
| 1809 | /* 2553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1810 | /* 2555 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (ADD32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 1811 | /* 2555 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32ri_ND), |
| 1812 | /* 2558 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1813 | /* 2560 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1814 | /* 2562 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 1815 | /* 2565 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1816 | /* 2568 */ GIR_RootConstrainSelectedInstOperands, |
| 1817 | /* 2569 */ // GIR_Coverage, 22974, |
| 1818 | /* 2569 */ GIR_EraseRootFromParent_Done, |
| 1819 | /* 2570 */ // Label 134: @2570 |
| 1820 | /* 2570 */ GIM_Try, /*On fail goto*//*Label 135*/ GIMT_Encode4(2599), // Rule ID 22876 // |
| 1821 | /* 2575 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1822 | /* 2578 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1823 | /* 2582 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1824 | /* 2586 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (ADD32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 1825 | /* 2586 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD32rr), |
| 1826 | /* 2591 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1827 | /* 2597 */ GIR_RootConstrainSelectedInstOperands, |
| 1828 | /* 2598 */ // GIR_Coverage, 22876, |
| 1829 | /* 2598 */ GIR_Done, |
| 1830 | /* 2599 */ // Label 135: @2599 |
| 1831 | /* 2599 */ GIM_Try, /*On fail goto*//*Label 136*/ GIMT_Encode4(2628), // Rule ID 22966 // |
| 1832 | /* 2604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 1833 | /* 2607 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1834 | /* 2611 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 1835 | /* 2615 */ // (add:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (ADD32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 1836 | /* 2615 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD32rr_ND), |
| 1837 | /* 2620 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1838 | /* 2626 */ GIR_RootConstrainSelectedInstOperands, |
| 1839 | /* 2627 */ // GIR_Coverage, 22966, |
| 1840 | /* 2627 */ GIR_Done, |
| 1841 | /* 2628 */ // Label 136: @2628 |
| 1842 | /* 2628 */ GIM_Reject, |
| 1843 | /* 2629 */ // Label 124: @2629 |
| 1844 | /* 2629 */ GIM_Reject, |
| 1845 | /* 2630 */ // Label 86: @2630 |
| 1846 | /* 2630 */ GIM_Try, /*On fail goto*//*Label 137*/ GIMT_Encode4(3186), |
| 1847 | /* 2635 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 1848 | /* 2638 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 1849 | /* 2641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1850 | /* 2645 */ GIM_Try, /*On fail goto*//*Label 138*/ GIMT_Encode4(2706), // Rule ID 26139 // |
| 1851 | /* 2650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1852 | /* 2653 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1853 | /* 2657 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1854 | /* 2661 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1855 | /* 2664 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 1856 | /* 2668 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1857 | /* 2672 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1858 | /* 2676 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1859 | /* 2678 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1860 | /* 2685 */ // (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) |
| 1861 | /* 2685 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rm), |
| 1862 | /* 2688 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1863 | /* 2690 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 1864 | /* 2692 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1865 | /* 2696 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1866 | /* 2699 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1867 | /* 2704 */ GIR_RootConstrainSelectedInstOperands, |
| 1868 | /* 2705 */ // GIR_Coverage, 26139, |
| 1869 | /* 2705 */ GIR_EraseRootFromParent_Done, |
| 1870 | /* 2706 */ // Label 138: @2706 |
| 1871 | /* 2706 */ GIM_Try, /*On fail goto*//*Label 139*/ GIMT_Encode4(2767), // Rule ID 22881 // |
| 1872 | /* 2711 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1873 | /* 2714 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1874 | /* 2718 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1875 | /* 2722 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 1876 | /* 2726 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 1877 | /* 2729 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 1878 | /* 2733 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 1879 | /* 2737 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1880 | /* 2739 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 1881 | /* 2746 */ // (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) |
| 1882 | /* 2746 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rm), |
| 1883 | /* 2749 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1884 | /* 2751 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1885 | /* 2753 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 1886 | /* 2757 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1887 | /* 2760 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 1888 | /* 2765 */ GIR_RootConstrainSelectedInstOperands, |
| 1889 | /* 2766 */ // GIR_Coverage, 22881, |
| 1890 | /* 2766 */ GIR_EraseRootFromParent_Done, |
| 1891 | /* 2767 */ // Label 139: @2767 |
| 1892 | /* 2767 */ GIM_Try, /*On fail goto*//*Label 140*/ GIMT_Encode4(2805), // Rule ID 22688 // |
| 1893 | /* 2772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDDI), |
| 1894 | /* 2775 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1895 | /* 2779 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1896 | /* 2790 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, 128:{ *:[i64] }) => (SUB64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, -128:{ *:[i64] }) |
| 1897 | /* 2790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32), |
| 1898 | /* 2793 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1899 | /* 2795 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1900 | /* 2797 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 1901 | /* 2800 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1902 | /* 2803 */ GIR_RootConstrainSelectedInstOperands, |
| 1903 | /* 2804 */ // GIR_Coverage, 22688, |
| 1904 | /* 2804 */ GIR_EraseRootFromParent_Done, |
| 1905 | /* 2805 */ // Label 140: @2805 |
| 1906 | /* 2805 */ GIM_Try, /*On fail goto*//*Label 141*/ GIMT_Encode4(2843), // Rule ID 22694 // |
| 1907 | /* 2810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDDI), |
| 1908 | /* 2813 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1909 | /* 2817 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(128), |
| 1910 | /* 2828 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, 128:{ *:[i64] }) => (SUB64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, -128:{ *:[i64] }) |
| 1911 | /* 2828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32_ND), |
| 1912 | /* 2831 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1913 | /* 2833 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1914 | /* 2835 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 1915 | /* 2838 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1916 | /* 2841 */ GIR_RootConstrainSelectedInstOperands, |
| 1917 | /* 2842 */ // GIR_Coverage, 22694, |
| 1918 | /* 2842 */ GIR_EraseRootFromParent_Done, |
| 1919 | /* 2843 */ // Label 141: @2843 |
| 1920 | /* 2843 */ GIM_Try, /*On fail goto*//*Label 142*/ GIMT_Encode4(2888), // Rule ID 22702 // |
| 1921 | /* 2848 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 1922 | /* 2851 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1923 | /* 2855 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2147483648), |
| 1924 | /* 2866 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, 2147483648:{ *:[i64] }) => (SUB64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, -2147483648:{ *:[i64] }) |
| 1925 | /* 2866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32), |
| 1926 | /* 2869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1927 | /* 2871 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1928 | /* 2873 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(18446744071562067968u), |
| 1929 | /* 2883 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1930 | /* 2886 */ GIR_RootConstrainSelectedInstOperands, |
| 1931 | /* 2887 */ // GIR_Coverage, 22702, |
| 1932 | /* 2887 */ GIR_EraseRootFromParent_Done, |
| 1933 | /* 2888 */ // Label 142: @2888 |
| 1934 | /* 2888 */ GIM_Try, /*On fail goto*//*Label 143*/ GIMT_Encode4(2933), // Rule ID 22704 // |
| 1935 | /* 2893 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDDI), |
| 1936 | /* 2896 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1937 | /* 2900 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2147483648), |
| 1938 | /* 2911 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, 2147483648:{ *:[i64] }) => (SUB64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, -2147483648:{ *:[i64] }) |
| 1939 | /* 2911 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32_ND), |
| 1940 | /* 2914 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1941 | /* 2916 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 1942 | /* 2918 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(18446744071562067968u), |
| 1943 | /* 2928 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1944 | /* 2931 */ GIR_RootConstrainSelectedInstOperands, |
| 1945 | /* 2932 */ // GIR_Coverage, 22704, |
| 1946 | /* 2932 */ GIR_EraseRootFromParent_Done, |
| 1947 | /* 2933 */ // Label 143: @2933 |
| 1948 | /* 2933 */ GIM_Try, /*On fail goto*//*Label 144*/ GIMT_Encode4(2961), // Rule ID 22959 // |
| 1949 | /* 2938 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDDI_UseIncDec), |
| 1950 | /* 2941 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1951 | /* 2945 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1952 | /* 2949 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }) => (INC64r:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 1953 | /* 2949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC64r), |
| 1954 | /* 2952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1955 | /* 2954 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1956 | /* 2956 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1957 | /* 2959 */ GIR_RootConstrainSelectedInstOperands, |
| 1958 | /* 2960 */ // GIR_Coverage, 22959, |
| 1959 | /* 2960 */ GIR_EraseRootFromParent_Done, |
| 1960 | /* 2961 */ // Label 144: @2961 |
| 1961 | /* 2961 */ GIM_Try, /*On fail goto*//*Label 145*/ GIMT_Encode4(2989), // Rule ID 22960 // |
| 1962 | /* 2966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDDI_UseIncDec), |
| 1963 | /* 2969 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1964 | /* 2973 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 1965 | /* 2977 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }) => (DEC64r:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 1966 | /* 2977 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC64r), |
| 1967 | /* 2980 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1968 | /* 2982 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1969 | /* 2984 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1970 | /* 2987 */ GIR_RootConstrainSelectedInstOperands, |
| 1971 | /* 2988 */ // GIR_Coverage, 22960, |
| 1972 | /* 2988 */ GIR_EraseRootFromParent_Done, |
| 1973 | /* 2989 */ // Label 145: @2989 |
| 1974 | /* 2989 */ GIM_Try, /*On fail goto*//*Label 146*/ GIMT_Encode4(3017), // Rule ID 23049 // |
| 1975 | /* 2994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDDI_UseIncDec), |
| 1976 | /* 2997 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1977 | /* 3001 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 1978 | /* 3005 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }) => (INC64r_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 1979 | /* 3005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC64r_ND), |
| 1980 | /* 3008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1981 | /* 3010 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1982 | /* 3012 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1983 | /* 3015 */ GIR_RootConstrainSelectedInstOperands, |
| 1984 | /* 3016 */ // GIR_Coverage, 23049, |
| 1985 | /* 3016 */ GIR_EraseRootFromParent_Done, |
| 1986 | /* 3017 */ // Label 146: @3017 |
| 1987 | /* 3017 */ GIM_Try, /*On fail goto*//*Label 147*/ GIMT_Encode4(3045), // Rule ID 23050 // |
| 1988 | /* 3022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDDI_UseIncDec), |
| 1989 | /* 3025 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 1990 | /* 3029 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 1991 | /* 3033 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }) => (DEC64r_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 1992 | /* 3033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC64r_ND), |
| 1993 | /* 3036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 1994 | /* 3038 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 1995 | /* 3040 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 1996 | /* 3043 */ GIR_RootConstrainSelectedInstOperands, |
| 1997 | /* 3044 */ // GIR_Coverage, 23050, |
| 1998 | /* 3044 */ GIR_EraseRootFromParent_Done, |
| 1999 | /* 3045 */ // Label 147: @3045 |
| 2000 | /* 3045 */ GIM_Try, /*On fail goto*//*Label 148*/ GIMT_Encode4(3086), // Rule ID 22942 // |
| 2001 | /* 3050 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDDI), |
| 2002 | /* 3053 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2003 | /* 3057 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2004 | /* 3061 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2005 | /* 3065 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 2006 | /* 3069 */ // MIs[1] Operand 1 |
| 2007 | /* 3069 */ // No operand predicates |
| 2008 | /* 3069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2009 | /* 3071 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (ADD64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 2010 | /* 3071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64ri32), |
| 2011 | /* 3074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2012 | /* 3076 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2013 | /* 3078 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 2014 | /* 3081 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2015 | /* 3084 */ GIR_RootConstrainSelectedInstOperands, |
| 2016 | /* 3085 */ // GIR_Coverage, 22942, |
| 2017 | /* 3085 */ GIR_EraseRootFromParent_Done, |
| 2018 | /* 3086 */ // Label 148: @3086 |
| 2019 | /* 3086 */ GIM_Try, /*On fail goto*//*Label 149*/ GIMT_Encode4(3127), // Rule ID 23032 // |
| 2020 | /* 3091 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDDI), |
| 2021 | /* 3094 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2022 | /* 3098 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2023 | /* 3102 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2024 | /* 3106 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 2025 | /* 3110 */ // MIs[1] Operand 1 |
| 2026 | /* 3110 */ // No operand predicates |
| 2027 | /* 3110 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2028 | /* 3112 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (ADD64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 2029 | /* 3112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64ri32_ND), |
| 2030 | /* 3115 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2031 | /* 3117 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2032 | /* 3119 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 2033 | /* 3122 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 2034 | /* 3125 */ GIR_RootConstrainSelectedInstOperands, |
| 2035 | /* 3126 */ // GIR_Coverage, 23032, |
| 2036 | /* 3126 */ GIR_EraseRootFromParent_Done, |
| 2037 | /* 3127 */ // Label 149: @3127 |
| 2038 | /* 3127 */ GIM_Try, /*On fail goto*//*Label 150*/ GIMT_Encode4(3156), // Rule ID 22877 // |
| 2039 | /* 3132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 2040 | /* 3135 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2041 | /* 3139 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2042 | /* 3143 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (ADD64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 2043 | /* 3143 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD64rr), |
| 2044 | /* 3148 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 2045 | /* 3154 */ GIR_RootConstrainSelectedInstOperands, |
| 2046 | /* 3155 */ // GIR_Coverage, 22877, |
| 2047 | /* 3155 */ GIR_Done, |
| 2048 | /* 3156 */ // Label 150: @3156 |
| 2049 | /* 3156 */ GIM_Try, /*On fail goto*//*Label 151*/ GIMT_Encode4(3185), // Rule ID 22967 // |
| 2050 | /* 3161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 2051 | /* 3164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2052 | /* 3168 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 2053 | /* 3172 */ // (add:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (ADD64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 2054 | /* 3172 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD64rr_ND), |
| 2055 | /* 3177 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 2056 | /* 3183 */ GIR_RootConstrainSelectedInstOperands, |
| 2057 | /* 3184 */ // GIR_Coverage, 22967, |
| 2058 | /* 3184 */ GIR_Done, |
| 2059 | /* 3185 */ // Label 151: @3185 |
| 2060 | /* 3185 */ GIM_Reject, |
| 2061 | /* 3186 */ // Label 137: @3186 |
| 2062 | /* 3186 */ GIM_Reject, |
| 2063 | /* 3187 */ // Label 87: @3187 |
| 2064 | /* 3187 */ GIM_Try, /*On fail goto*//*Label 152*/ GIMT_Encode4(3528), |
| 2065 | /* 3192 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 2066 | /* 3195 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 2067 | /* 3198 */ GIM_Try, /*On fail goto*//*Label 153*/ GIMT_Encode4(3260), // Rule ID 23520 // |
| 2068 | /* 3203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2069 | /* 3206 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2070 | /* 3210 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2071 | /* 3214 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2072 | /* 3218 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2073 | /* 3221 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2074 | /* 3225 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2075 | /* 3229 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2076 | /* 3233 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2077 | /* 3235 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2078 | /* 3242 */ // (add:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src1) => (VPADDQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2079 | /* 3242 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQrm), |
| 2080 | /* 3245 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2081 | /* 3247 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2082 | /* 3249 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2083 | /* 3253 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2084 | /* 3258 */ GIR_RootConstrainSelectedInstOperands, |
| 2085 | /* 3259 */ // GIR_Coverage, 23520, |
| 2086 | /* 3259 */ GIR_EraseRootFromParent_Done, |
| 2087 | /* 3260 */ // Label 153: @3260 |
| 2088 | /* 3260 */ GIM_Try, /*On fail goto*//*Label 154*/ GIMT_Encode4(3322), // Rule ID 23790 // |
| 2089 | /* 3265 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2090 | /* 3268 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2091 | /* 3272 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2092 | /* 3276 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2093 | /* 3280 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2094 | /* 3283 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2095 | /* 3287 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2096 | /* 3291 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2097 | /* 3295 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2098 | /* 3297 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2099 | /* 3304 */ // (add:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPADDQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2100 | /* 3304 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZ128rm), |
| 2101 | /* 3307 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2102 | /* 3309 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2103 | /* 3311 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2104 | /* 3315 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2105 | /* 3320 */ GIR_RootConstrainSelectedInstOperands, |
| 2106 | /* 3321 */ // GIR_Coverage, 23790, |
| 2107 | /* 3321 */ GIR_EraseRootFromParent_Done, |
| 2108 | /* 3322 */ // Label 154: @3322 |
| 2109 | /* 3322 */ GIM_Try, /*On fail goto*//*Label 155*/ GIMT_Encode4(3384), // Rule ID 2541 // |
| 2110 | /* 3327 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2111 | /* 3330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2112 | /* 3334 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2113 | /* 3338 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2114 | /* 3342 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2115 | /* 3346 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2116 | /* 3349 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2117 | /* 3353 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2118 | /* 3357 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2119 | /* 3359 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2120 | /* 3366 */ // (add:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2121 | /* 3366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQrm), |
| 2122 | /* 3369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2123 | /* 3371 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2124 | /* 3373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2125 | /* 3377 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2126 | /* 3382 */ GIR_RootConstrainSelectedInstOperands, |
| 2127 | /* 3383 */ // GIR_Coverage, 2541, |
| 2128 | /* 3383 */ GIR_EraseRootFromParent_Done, |
| 2129 | /* 3384 */ // Label 155: @3384 |
| 2130 | /* 3384 */ GIM_Try, /*On fail goto*//*Label 156*/ GIMT_Encode4(3446), // Rule ID 4658 // |
| 2131 | /* 3389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2132 | /* 3392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2133 | /* 3396 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2134 | /* 3400 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2135 | /* 3404 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2136 | /* 3408 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2137 | /* 3411 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2138 | /* 3415 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2139 | /* 3419 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2140 | /* 3421 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2141 | /* 3428 */ // (add:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2142 | /* 3428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZ128rm), |
| 2143 | /* 3431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2144 | /* 3433 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2145 | /* 3435 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2146 | /* 3439 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2147 | /* 3444 */ GIR_RootConstrainSelectedInstOperands, |
| 2148 | /* 3445 */ // GIR_Coverage, 4658, |
| 2149 | /* 3445 */ GIR_EraseRootFromParent_Done, |
| 2150 | /* 3446 */ // Label 156: @3446 |
| 2151 | /* 3446 */ GIM_Try, /*On fail goto*//*Label 157*/ GIMT_Encode4(3473), // Rule ID 2540 // |
| 2152 | /* 3451 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2153 | /* 3454 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2154 | /* 3458 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2155 | /* 3462 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2156 | /* 3466 */ // (add:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPADDQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 2157 | /* 3466 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQrr), |
| 2158 | /* 3471 */ GIR_RootConstrainSelectedInstOperands, |
| 2159 | /* 3472 */ // GIR_Coverage, 2540, |
| 2160 | /* 3472 */ GIR_Done, |
| 2161 | /* 3473 */ // Label 157: @3473 |
| 2162 | /* 3473 */ GIM_Try, /*On fail goto*//*Label 158*/ GIMT_Encode4(3500), // Rule ID 2542 // |
| 2163 | /* 3478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 2164 | /* 3481 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2165 | /* 3485 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2166 | /* 3489 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2167 | /* 3493 */ // (add:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PADDQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 2168 | /* 3493 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDQrr), |
| 2169 | /* 3498 */ GIR_RootConstrainSelectedInstOperands, |
| 2170 | /* 3499 */ // GIR_Coverage, 2542, |
| 2171 | /* 3499 */ GIR_Done, |
| 2172 | /* 3500 */ // Label 158: @3500 |
| 2173 | /* 3500 */ GIM_Try, /*On fail goto*//*Label 159*/ GIMT_Encode4(3527), // Rule ID 4655 // |
| 2174 | /* 3505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2175 | /* 3508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2176 | /* 3512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2177 | /* 3516 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2178 | /* 3520 */ // (add:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPADDQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 2179 | /* 3520 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQZ128rr), |
| 2180 | /* 3525 */ GIR_RootConstrainSelectedInstOperands, |
| 2181 | /* 3526 */ // GIR_Coverage, 4655, |
| 2182 | /* 3526 */ GIR_Done, |
| 2183 | /* 3527 */ // Label 159: @3527 |
| 2184 | /* 3527 */ GIM_Reject, |
| 2185 | /* 3528 */ // Label 152: @3528 |
| 2186 | /* 3528 */ GIM_Reject, |
| 2187 | /* 3529 */ // Label 88: @3529 |
| 2188 | /* 3529 */ GIM_Try, /*On fail goto*//*Label 160*/ GIMT_Encode4(3992), |
| 2189 | /* 3534 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2190 | /* 3537 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2191 | /* 3540 */ GIM_Try, /*On fail goto*//*Label 161*/ GIMT_Encode4(3602), // Rule ID 23517 // |
| 2192 | /* 3545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2193 | /* 3548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2194 | /* 3552 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2195 | /* 3556 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2196 | /* 3560 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2197 | /* 3563 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2198 | /* 3567 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2199 | /* 3571 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2200 | /* 3575 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2201 | /* 3577 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2202 | /* 3584 */ // (add:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPADDDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2203 | /* 3584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDrm), |
| 2204 | /* 3587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2205 | /* 3589 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2206 | /* 3591 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2207 | /* 3595 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2208 | /* 3600 */ GIR_RootConstrainSelectedInstOperands, |
| 2209 | /* 3601 */ // GIR_Coverage, 23517, |
| 2210 | /* 3601 */ GIR_EraseRootFromParent_Done, |
| 2211 | /* 3602 */ // Label 161: @3602 |
| 2212 | /* 3602 */ GIM_Try, /*On fail goto*//*Label 162*/ GIMT_Encode4(3664), // Rule ID 23808 // |
| 2213 | /* 3607 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2214 | /* 3610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2215 | /* 3614 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2216 | /* 3618 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2217 | /* 3622 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2218 | /* 3625 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2219 | /* 3629 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2220 | /* 3633 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2221 | /* 3637 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2222 | /* 3639 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2223 | /* 3646 */ // (add:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPADDDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2224 | /* 3646 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZ128rm), |
| 2225 | /* 3649 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2226 | /* 3651 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2227 | /* 3653 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2228 | /* 3657 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2229 | /* 3662 */ GIR_RootConstrainSelectedInstOperands, |
| 2230 | /* 3663 */ // GIR_Coverage, 23808, |
| 2231 | /* 3663 */ GIR_EraseRootFromParent_Done, |
| 2232 | /* 3664 */ // Label 162: @3664 |
| 2233 | /* 3664 */ GIM_Try, /*On fail goto*//*Label 163*/ GIMT_Encode4(3726), // Rule ID 2535 // |
| 2234 | /* 3669 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2235 | /* 3672 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2236 | /* 3676 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2237 | /* 3680 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2238 | /* 3684 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2239 | /* 3688 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2240 | /* 3691 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2241 | /* 3695 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2242 | /* 3699 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2243 | /* 3701 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2244 | /* 3708 */ // (add:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2245 | /* 3708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDrm), |
| 2246 | /* 3711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2247 | /* 3713 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2248 | /* 3715 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2249 | /* 3719 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2250 | /* 3724 */ GIR_RootConstrainSelectedInstOperands, |
| 2251 | /* 3725 */ // GIR_Coverage, 2535, |
| 2252 | /* 3725 */ GIR_EraseRootFromParent_Done, |
| 2253 | /* 3726 */ // Label 163: @3726 |
| 2254 | /* 3726 */ GIM_Try, /*On fail goto*//*Label 164*/ GIMT_Encode4(3788), // Rule ID 4685 // |
| 2255 | /* 3731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2256 | /* 3734 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2257 | /* 3738 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2258 | /* 3742 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2259 | /* 3746 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2260 | /* 3750 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2261 | /* 3753 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2262 | /* 3757 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2263 | /* 3761 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2264 | /* 3763 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2265 | /* 3770 */ // (add:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2266 | /* 3770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZ128rm), |
| 2267 | /* 3773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2268 | /* 3775 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2269 | /* 3777 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2270 | /* 3781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2271 | /* 3786 */ GIR_RootConstrainSelectedInstOperands, |
| 2272 | /* 3787 */ // GIR_Coverage, 4685, |
| 2273 | /* 3787 */ GIR_EraseRootFromParent_Done, |
| 2274 | /* 3788 */ // Label 164: @3788 |
| 2275 | /* 3788 */ GIM_Try, /*On fail goto*//*Label 165*/ GIMT_Encode4(3849), // Rule ID 17857 // |
| 2276 | /* 3793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 2277 | /* 3796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2278 | /* 3800 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2279 | /* 3804 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 2280 | /* 3808 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2281 | /* 3812 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2282 | /* 3816 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2283 | /* 3821 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2284 | /* 3826 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2285 | /* 3830 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2286 | /* 3832 */ // (add:{ *:[v4i32] } (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2), VR128:{ *:[v4i32] }:$src3) => (VPMACSDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 2287 | /* 3832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrr), |
| 2288 | /* 3835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2289 | /* 3837 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 2290 | /* 3841 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 2291 | /* 3845 */ GIR_RootToRootCopy, /*OpIdx*/2, // src3 |
| 2292 | /* 3847 */ GIR_RootConstrainSelectedInstOperands, |
| 2293 | /* 3848 */ // GIR_Coverage, 17857, |
| 2294 | /* 3848 */ GIR_EraseRootFromParent_Done, |
| 2295 | /* 3849 */ // Label 165: @3849 |
| 2296 | /* 3849 */ GIM_Try, /*On fail goto*//*Label 166*/ GIMT_Encode4(3910), // Rule ID 25272 // |
| 2297 | /* 3854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 2298 | /* 3857 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2299 | /* 3861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2300 | /* 3865 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2301 | /* 3869 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 2302 | /* 3873 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2303 | /* 3877 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2304 | /* 3881 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2305 | /* 3886 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2306 | /* 3891 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2307 | /* 3893 */ // (add:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src3, (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2)) => (VPMACSDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 2308 | /* 3893 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrr), |
| 2309 | /* 3896 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2310 | /* 3898 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 2311 | /* 3902 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 2312 | /* 3906 */ GIR_RootToRootCopy, /*OpIdx*/1, // src3 |
| 2313 | /* 3908 */ GIR_RootConstrainSelectedInstOperands, |
| 2314 | /* 3909 */ // GIR_Coverage, 25272, |
| 2315 | /* 3909 */ GIR_EraseRootFromParent_Done, |
| 2316 | /* 3910 */ // Label 166: @3910 |
| 2317 | /* 3910 */ GIM_Try, /*On fail goto*//*Label 167*/ GIMT_Encode4(3937), // Rule ID 2534 // |
| 2318 | /* 3915 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 2319 | /* 3918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2320 | /* 3922 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2321 | /* 3926 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2322 | /* 3930 */ // (add:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPADDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 2323 | /* 3930 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDrr), |
| 2324 | /* 3935 */ GIR_RootConstrainSelectedInstOperands, |
| 2325 | /* 3936 */ // GIR_Coverage, 2534, |
| 2326 | /* 3936 */ GIR_Done, |
| 2327 | /* 3937 */ // Label 167: @3937 |
| 2328 | /* 3937 */ GIM_Try, /*On fail goto*//*Label 168*/ GIMT_Encode4(3964), // Rule ID 2536 // |
| 2329 | /* 3942 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 2330 | /* 3945 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2331 | /* 3949 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2332 | /* 3953 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2333 | /* 3957 */ // (add:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PADDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 2334 | /* 3957 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDDrr), |
| 2335 | /* 3962 */ GIR_RootConstrainSelectedInstOperands, |
| 2336 | /* 3963 */ // GIR_Coverage, 2536, |
| 2337 | /* 3963 */ GIR_Done, |
| 2338 | /* 3964 */ // Label 168: @3964 |
| 2339 | /* 3964 */ GIM_Try, /*On fail goto*//*Label 169*/ GIMT_Encode4(3991), // Rule ID 4682 // |
| 2340 | /* 3969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2341 | /* 3972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2342 | /* 3976 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2343 | /* 3980 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2344 | /* 3984 */ // (add:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPADDDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 2345 | /* 3984 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDZ128rr), |
| 2346 | /* 3989 */ GIR_RootConstrainSelectedInstOperands, |
| 2347 | /* 3990 */ // GIR_Coverage, 4682, |
| 2348 | /* 3990 */ GIR_Done, |
| 2349 | /* 3991 */ // Label 169: @3991 |
| 2350 | /* 3991 */ GIM_Reject, |
| 2351 | /* 3992 */ // Label 160: @3992 |
| 2352 | /* 3992 */ GIM_Reject, |
| 2353 | /* 3993 */ // Label 89: @3993 |
| 2354 | /* 3993 */ GIM_Try, /*On fail goto*//*Label 170*/ GIMT_Encode4(4307), |
| 2355 | /* 3998 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 2356 | /* 4001 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 2357 | /* 4004 */ GIM_Try, /*On fail goto*//*Label 171*/ GIMT_Encode4(4066), // Rule ID 23522 // |
| 2358 | /* 4009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2359 | /* 4012 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2360 | /* 4016 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2361 | /* 4020 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2362 | /* 4024 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2363 | /* 4027 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2364 | /* 4031 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2365 | /* 4035 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2366 | /* 4039 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2367 | /* 4041 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2368 | /* 4048 */ // (add:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VPADDQYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2369 | /* 4048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQYrm), |
| 2370 | /* 4051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2371 | /* 4053 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2372 | /* 4055 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2373 | /* 4059 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2374 | /* 4064 */ GIR_RootConstrainSelectedInstOperands, |
| 2375 | /* 4065 */ // GIR_Coverage, 23522, |
| 2376 | /* 4065 */ GIR_EraseRootFromParent_Done, |
| 2377 | /* 4066 */ // Label 171: @4066 |
| 2378 | /* 4066 */ GIM_Try, /*On fail goto*//*Label 172*/ GIMT_Encode4(4128), // Rule ID 23784 // |
| 2379 | /* 4071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2380 | /* 4074 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2381 | /* 4078 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2382 | /* 4082 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2383 | /* 4086 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2384 | /* 4089 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2385 | /* 4093 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2386 | /* 4097 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2387 | /* 4101 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2388 | /* 4103 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2389 | /* 4110 */ // (add:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPADDQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2390 | /* 4110 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZ256rm), |
| 2391 | /* 4113 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2392 | /* 4115 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2393 | /* 4117 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2394 | /* 4121 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2395 | /* 4126 */ GIR_RootConstrainSelectedInstOperands, |
| 2396 | /* 4127 */ // GIR_Coverage, 23784, |
| 2397 | /* 4127 */ GIR_EraseRootFromParent_Done, |
| 2398 | /* 4128 */ // Label 172: @4128 |
| 2399 | /* 4128 */ GIM_Try, /*On fail goto*//*Label 173*/ GIMT_Encode4(4190), // Rule ID 2545 // |
| 2400 | /* 4133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2401 | /* 4136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2402 | /* 4140 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2403 | /* 4144 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2404 | /* 4148 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2405 | /* 4152 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2406 | /* 4155 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2407 | /* 4159 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2408 | /* 4163 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2409 | /* 4165 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2410 | /* 4172 */ // (add:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2411 | /* 4172 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQYrm), |
| 2412 | /* 4175 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2413 | /* 4177 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2414 | /* 4179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2415 | /* 4183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2416 | /* 4188 */ GIR_RootConstrainSelectedInstOperands, |
| 2417 | /* 4189 */ // GIR_Coverage, 2545, |
| 2418 | /* 4189 */ GIR_EraseRootFromParent_Done, |
| 2419 | /* 4190 */ // Label 173: @4190 |
| 2420 | /* 4190 */ GIM_Try, /*On fail goto*//*Label 174*/ GIMT_Encode4(4252), // Rule ID 4649 // |
| 2421 | /* 4195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2422 | /* 4198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2423 | /* 4202 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2424 | /* 4206 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2425 | /* 4210 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2426 | /* 4214 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2427 | /* 4217 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2428 | /* 4221 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2429 | /* 4225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2430 | /* 4227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2431 | /* 4234 */ // (add:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2432 | /* 4234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZ256rm), |
| 2433 | /* 4237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2434 | /* 4239 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2435 | /* 4241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2436 | /* 4245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2437 | /* 4250 */ GIR_RootConstrainSelectedInstOperands, |
| 2438 | /* 4251 */ // GIR_Coverage, 4649, |
| 2439 | /* 4251 */ GIR_EraseRootFromParent_Done, |
| 2440 | /* 4252 */ // Label 174: @4252 |
| 2441 | /* 4252 */ GIM_Try, /*On fail goto*//*Label 175*/ GIMT_Encode4(4279), // Rule ID 2544 // |
| 2442 | /* 4257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2443 | /* 4260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2444 | /* 4264 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2445 | /* 4268 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2446 | /* 4272 */ // (add:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPADDQYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 2447 | /* 4272 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQYrr), |
| 2448 | /* 4277 */ GIR_RootConstrainSelectedInstOperands, |
| 2449 | /* 4278 */ // GIR_Coverage, 2544, |
| 2450 | /* 4278 */ GIR_Done, |
| 2451 | /* 4279 */ // Label 175: @4279 |
| 2452 | /* 4279 */ GIM_Try, /*On fail goto*//*Label 176*/ GIMT_Encode4(4306), // Rule ID 4646 // |
| 2453 | /* 4284 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2454 | /* 4287 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2455 | /* 4291 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2456 | /* 4295 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2457 | /* 4299 */ // (add:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPADDQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 2458 | /* 4299 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQZ256rr), |
| 2459 | /* 4304 */ GIR_RootConstrainSelectedInstOperands, |
| 2460 | /* 4305 */ // GIR_Coverage, 4646, |
| 2461 | /* 4305 */ GIR_Done, |
| 2462 | /* 4306 */ // Label 176: @4306 |
| 2463 | /* 4306 */ GIM_Reject, |
| 2464 | /* 4307 */ // Label 170: @4307 |
| 2465 | /* 4307 */ GIM_Reject, |
| 2466 | /* 4308 */ // Label 90: @4308 |
| 2467 | /* 4308 */ GIM_Try, /*On fail goto*//*Label 177*/ GIMT_Encode4(4771), |
| 2468 | /* 4313 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2469 | /* 4316 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2470 | /* 4319 */ GIM_Try, /*On fail goto*//*Label 178*/ GIMT_Encode4(4381), // Rule ID 23514 // |
| 2471 | /* 4324 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2472 | /* 4327 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2473 | /* 4331 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2474 | /* 4335 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2475 | /* 4339 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2476 | /* 4342 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2477 | /* 4346 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2478 | /* 4350 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2479 | /* 4354 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2480 | /* 4356 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2481 | /* 4363 */ // (add:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPADDWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2482 | /* 4363 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWrm), |
| 2483 | /* 4366 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2484 | /* 4368 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2485 | /* 4370 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2486 | /* 4374 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2487 | /* 4379 */ GIR_RootConstrainSelectedInstOperands, |
| 2488 | /* 4380 */ // GIR_Coverage, 23514, |
| 2489 | /* 4380 */ GIR_EraseRootFromParent_Done, |
| 2490 | /* 4381 */ // Label 178: @4381 |
| 2491 | /* 4381 */ GIM_Try, /*On fail goto*//*Label 179*/ GIMT_Encode4(4443), // Rule ID 23820 // |
| 2492 | /* 4386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2493 | /* 4389 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2494 | /* 4393 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2495 | /* 4397 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2496 | /* 4401 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2497 | /* 4404 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2498 | /* 4408 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2499 | /* 4412 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2500 | /* 4416 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2501 | /* 4418 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2502 | /* 4425 */ // (add:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPADDWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2503 | /* 4425 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZ128rm), |
| 2504 | /* 4428 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2505 | /* 4430 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2506 | /* 4432 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2507 | /* 4436 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2508 | /* 4441 */ GIR_RootConstrainSelectedInstOperands, |
| 2509 | /* 4442 */ // GIR_Coverage, 23820, |
| 2510 | /* 4442 */ GIR_EraseRootFromParent_Done, |
| 2511 | /* 4443 */ // Label 179: @4443 |
| 2512 | /* 4443 */ GIM_Try, /*On fail goto*//*Label 180*/ GIMT_Encode4(4505), // Rule ID 2529 // |
| 2513 | /* 4448 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2514 | /* 4451 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2515 | /* 4455 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2516 | /* 4459 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2517 | /* 4463 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2518 | /* 4467 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2519 | /* 4470 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2520 | /* 4474 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2521 | /* 4478 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2522 | /* 4480 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2523 | /* 4487 */ // (add:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2524 | /* 4487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWrm), |
| 2525 | /* 4490 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2526 | /* 4492 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2527 | /* 4494 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2528 | /* 4498 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2529 | /* 4503 */ GIR_RootConstrainSelectedInstOperands, |
| 2530 | /* 4504 */ // GIR_Coverage, 2529, |
| 2531 | /* 4504 */ GIR_EraseRootFromParent_Done, |
| 2532 | /* 4505 */ // Label 180: @4505 |
| 2533 | /* 4505 */ GIM_Try, /*On fail goto*//*Label 181*/ GIMT_Encode4(4567), // Rule ID 4706 // |
| 2534 | /* 4510 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2535 | /* 4513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2536 | /* 4517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2537 | /* 4521 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2538 | /* 4525 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2539 | /* 4529 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2540 | /* 4532 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2541 | /* 4536 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2542 | /* 4540 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2543 | /* 4542 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2544 | /* 4549 */ // (add:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2545 | /* 4549 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZ128rm), |
| 2546 | /* 4552 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2547 | /* 4554 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2548 | /* 4556 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2549 | /* 4560 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2550 | /* 4565 */ GIR_RootConstrainSelectedInstOperands, |
| 2551 | /* 4566 */ // GIR_Coverage, 4706, |
| 2552 | /* 4566 */ GIR_EraseRootFromParent_Done, |
| 2553 | /* 4567 */ // Label 181: @4567 |
| 2554 | /* 4567 */ GIM_Try, /*On fail goto*//*Label 182*/ GIMT_Encode4(4628), // Rule ID 17856 // |
| 2555 | /* 4572 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 2556 | /* 4575 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2557 | /* 4579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2558 | /* 4583 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 2559 | /* 4587 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2560 | /* 4591 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2561 | /* 4595 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2562 | /* 4600 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2563 | /* 4605 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2564 | /* 4609 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2565 | /* 4611 */ // (add:{ *:[v8i16] } (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2), VR128:{ *:[v8i16] }:$src3) => (VPMACSWWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 2566 | /* 4611 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrr), |
| 2567 | /* 4614 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2568 | /* 4616 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 2569 | /* 4620 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 2570 | /* 4624 */ GIR_RootToRootCopy, /*OpIdx*/2, // src3 |
| 2571 | /* 4626 */ GIR_RootConstrainSelectedInstOperands, |
| 2572 | /* 4627 */ // GIR_Coverage, 17856, |
| 2573 | /* 4627 */ GIR_EraseRootFromParent_Done, |
| 2574 | /* 4628 */ // Label 182: @4628 |
| 2575 | /* 4628 */ GIM_Try, /*On fail goto*//*Label 183*/ GIMT_Encode4(4689), // Rule ID 25271 // |
| 2576 | /* 4633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 2577 | /* 4636 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2578 | /* 4640 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2579 | /* 4644 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2580 | /* 4648 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 2581 | /* 4652 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2582 | /* 4656 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2583 | /* 4660 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2584 | /* 4665 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2585 | /* 4670 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2586 | /* 4672 */ // (add:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src3, (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2)) => (VPMACSWWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 2587 | /* 4672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrr), |
| 2588 | /* 4675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2589 | /* 4677 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 2590 | /* 4681 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 2591 | /* 4685 */ GIR_RootToRootCopy, /*OpIdx*/1, // src3 |
| 2592 | /* 4687 */ GIR_RootConstrainSelectedInstOperands, |
| 2593 | /* 4688 */ // GIR_Coverage, 25271, |
| 2594 | /* 4688 */ GIR_EraseRootFromParent_Done, |
| 2595 | /* 4689 */ // Label 183: @4689 |
| 2596 | /* 4689 */ GIM_Try, /*On fail goto*//*Label 184*/ GIMT_Encode4(4716), // Rule ID 2528 // |
| 2597 | /* 4694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2598 | /* 4697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2599 | /* 4701 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2600 | /* 4705 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2601 | /* 4709 */ // (add:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPADDWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 2602 | /* 4709 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWrr), |
| 2603 | /* 4714 */ GIR_RootConstrainSelectedInstOperands, |
| 2604 | /* 4715 */ // GIR_Coverage, 2528, |
| 2605 | /* 4715 */ GIR_Done, |
| 2606 | /* 4716 */ // Label 184: @4716 |
| 2607 | /* 4716 */ GIM_Try, /*On fail goto*//*Label 185*/ GIMT_Encode4(4743), // Rule ID 2530 // |
| 2608 | /* 4721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 2609 | /* 4724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2610 | /* 4728 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2611 | /* 4732 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2612 | /* 4736 */ // (add:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PADDWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 2613 | /* 4736 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDWrr), |
| 2614 | /* 4741 */ GIR_RootConstrainSelectedInstOperands, |
| 2615 | /* 4742 */ // GIR_Coverage, 2530, |
| 2616 | /* 4742 */ GIR_Done, |
| 2617 | /* 4743 */ // Label 185: @4743 |
| 2618 | /* 4743 */ GIM_Try, /*On fail goto*//*Label 186*/ GIMT_Encode4(4770), // Rule ID 4703 // |
| 2619 | /* 4748 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2620 | /* 4751 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2621 | /* 4755 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2622 | /* 4759 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2623 | /* 4763 */ // (add:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPADDWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 2624 | /* 4763 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWZ128rr), |
| 2625 | /* 4768 */ GIR_RootConstrainSelectedInstOperands, |
| 2626 | /* 4769 */ // GIR_Coverage, 4703, |
| 2627 | /* 4769 */ GIR_Done, |
| 2628 | /* 4770 */ // Label 186: @4770 |
| 2629 | /* 4770 */ GIM_Reject, |
| 2630 | /* 4771 */ // Label 177: @4771 |
| 2631 | /* 4771 */ GIM_Reject, |
| 2632 | /* 4772 */ // Label 91: @4772 |
| 2633 | /* 4772 */ GIM_Try, /*On fail goto*//*Label 187*/ GIMT_Encode4(5086), |
| 2634 | /* 4777 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 2635 | /* 4780 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 2636 | /* 4783 */ GIM_Try, /*On fail goto*//*Label 188*/ GIMT_Encode4(4845), // Rule ID 23519 // |
| 2637 | /* 4788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2638 | /* 4791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2639 | /* 4795 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2640 | /* 4799 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2641 | /* 4803 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2642 | /* 4806 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2643 | /* 4810 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2644 | /* 4814 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2645 | /* 4818 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2646 | /* 4820 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2647 | /* 4827 */ // (add:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPADDDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2648 | /* 4827 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDYrm), |
| 2649 | /* 4830 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2650 | /* 4832 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2651 | /* 4834 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2652 | /* 4838 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2653 | /* 4843 */ GIR_RootConstrainSelectedInstOperands, |
| 2654 | /* 4844 */ // GIR_Coverage, 23519, |
| 2655 | /* 4844 */ GIR_EraseRootFromParent_Done, |
| 2656 | /* 4845 */ // Label 188: @4845 |
| 2657 | /* 4845 */ GIM_Try, /*On fail goto*//*Label 189*/ GIMT_Encode4(4907), // Rule ID 23802 // |
| 2658 | /* 4850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2659 | /* 4853 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2660 | /* 4857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2661 | /* 4861 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2662 | /* 4865 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2663 | /* 4868 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2664 | /* 4872 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2665 | /* 4876 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2666 | /* 4880 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2667 | /* 4882 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2668 | /* 4889 */ // (add:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPADDDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2669 | /* 4889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZ256rm), |
| 2670 | /* 4892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2671 | /* 4894 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2672 | /* 4896 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2673 | /* 4900 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2674 | /* 4905 */ GIR_RootConstrainSelectedInstOperands, |
| 2675 | /* 4906 */ // GIR_Coverage, 23802, |
| 2676 | /* 4906 */ GIR_EraseRootFromParent_Done, |
| 2677 | /* 4907 */ // Label 189: @4907 |
| 2678 | /* 4907 */ GIM_Try, /*On fail goto*//*Label 190*/ GIMT_Encode4(4969), // Rule ID 2539 // |
| 2679 | /* 4912 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2680 | /* 4915 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2681 | /* 4919 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2682 | /* 4923 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2683 | /* 4927 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2684 | /* 4931 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2685 | /* 4934 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2686 | /* 4938 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2687 | /* 4942 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2688 | /* 4944 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2689 | /* 4951 */ // (add:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2690 | /* 4951 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDYrm), |
| 2691 | /* 4954 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2692 | /* 4956 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2693 | /* 4958 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2694 | /* 4962 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2695 | /* 4967 */ GIR_RootConstrainSelectedInstOperands, |
| 2696 | /* 4968 */ // GIR_Coverage, 2539, |
| 2697 | /* 4968 */ GIR_EraseRootFromParent_Done, |
| 2698 | /* 4969 */ // Label 190: @4969 |
| 2699 | /* 4969 */ GIM_Try, /*On fail goto*//*Label 191*/ GIMT_Encode4(5031), // Rule ID 4676 // |
| 2700 | /* 4974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2701 | /* 4977 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2702 | /* 4981 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2703 | /* 4985 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2704 | /* 4989 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2705 | /* 4993 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2706 | /* 4996 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2707 | /* 5000 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2708 | /* 5004 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2709 | /* 5006 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2710 | /* 5013 */ // (add:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2711 | /* 5013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZ256rm), |
| 2712 | /* 5016 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2713 | /* 5018 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2714 | /* 5020 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2715 | /* 5024 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2716 | /* 5029 */ GIR_RootConstrainSelectedInstOperands, |
| 2717 | /* 5030 */ // GIR_Coverage, 4676, |
| 2718 | /* 5030 */ GIR_EraseRootFromParent_Done, |
| 2719 | /* 5031 */ // Label 191: @5031 |
| 2720 | /* 5031 */ GIM_Try, /*On fail goto*//*Label 192*/ GIMT_Encode4(5058), // Rule ID 2538 // |
| 2721 | /* 5036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 2722 | /* 5039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2723 | /* 5043 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2724 | /* 5047 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2725 | /* 5051 */ // (add:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPADDDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 2726 | /* 5051 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDYrr), |
| 2727 | /* 5056 */ GIR_RootConstrainSelectedInstOperands, |
| 2728 | /* 5057 */ // GIR_Coverage, 2538, |
| 2729 | /* 5057 */ GIR_Done, |
| 2730 | /* 5058 */ // Label 192: @5058 |
| 2731 | /* 5058 */ GIM_Try, /*On fail goto*//*Label 193*/ GIMT_Encode4(5085), // Rule ID 4673 // |
| 2732 | /* 5063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 2733 | /* 5066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2734 | /* 5070 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2735 | /* 5074 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2736 | /* 5078 */ // (add:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPADDDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 2737 | /* 5078 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDZ256rr), |
| 2738 | /* 5083 */ GIR_RootConstrainSelectedInstOperands, |
| 2739 | /* 5084 */ // GIR_Coverage, 4673, |
| 2740 | /* 5084 */ GIR_Done, |
| 2741 | /* 5085 */ // Label 193: @5085 |
| 2742 | /* 5085 */ GIM_Reject, |
| 2743 | /* 5086 */ // Label 187: @5086 |
| 2744 | /* 5086 */ GIM_Reject, |
| 2745 | /* 5087 */ // Label 92: @5087 |
| 2746 | /* 5087 */ GIM_Try, /*On fail goto*//*Label 194*/ GIMT_Encode4(5242), |
| 2747 | /* 5092 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 2748 | /* 5095 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 2749 | /* 5098 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 2750 | /* 5102 */ GIM_Try, /*On fail goto*//*Label 195*/ GIMT_Encode4(5160), // Rule ID 23778 // |
| 2751 | /* 5107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 2752 | /* 5110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2753 | /* 5114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2754 | /* 5118 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2755 | /* 5121 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2756 | /* 5125 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2757 | /* 5129 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 2758 | /* 5133 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2759 | /* 5135 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2760 | /* 5142 */ // (add:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPADDQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2761 | /* 5142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZrm), |
| 2762 | /* 5145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2763 | /* 5147 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2764 | /* 5149 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2765 | /* 5153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2766 | /* 5158 */ GIR_RootConstrainSelectedInstOperands, |
| 2767 | /* 5159 */ // GIR_Coverage, 23778, |
| 2768 | /* 5159 */ GIR_EraseRootFromParent_Done, |
| 2769 | /* 5160 */ // Label 195: @5160 |
| 2770 | /* 5160 */ GIM_Try, /*On fail goto*//*Label 196*/ GIMT_Encode4(5218), // Rule ID 4640 // |
| 2771 | /* 5165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 2772 | /* 5168 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 2773 | /* 5172 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2774 | /* 5176 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2775 | /* 5180 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2776 | /* 5183 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2777 | /* 5187 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2778 | /* 5191 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2779 | /* 5193 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2780 | /* 5200 */ // (add:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2781 | /* 5200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDQZrm), |
| 2782 | /* 5203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2783 | /* 5205 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2784 | /* 5207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2785 | /* 5211 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2786 | /* 5216 */ GIR_RootConstrainSelectedInstOperands, |
| 2787 | /* 5217 */ // GIR_Coverage, 4640, |
| 2788 | /* 5217 */ GIR_EraseRootFromParent_Done, |
| 2789 | /* 5218 */ // Label 196: @5218 |
| 2790 | /* 5218 */ GIM_Try, /*On fail goto*//*Label 197*/ GIMT_Encode4(5241), // Rule ID 4637 // |
| 2791 | /* 5223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 2792 | /* 5226 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 2793 | /* 5230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 2794 | /* 5234 */ // (add:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPADDQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 2795 | /* 5234 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDQZrr), |
| 2796 | /* 5239 */ GIR_RootConstrainSelectedInstOperands, |
| 2797 | /* 5240 */ // GIR_Coverage, 4637, |
| 2798 | /* 5240 */ GIR_Done, |
| 2799 | /* 5241 */ // Label 197: @5241 |
| 2800 | /* 5241 */ GIM_Reject, |
| 2801 | /* 5242 */ // Label 194: @5242 |
| 2802 | /* 5242 */ GIM_Reject, |
| 2803 | /* 5243 */ // Label 93: @5243 |
| 2804 | /* 5243 */ GIM_Try, /*On fail goto*//*Label 198*/ GIMT_Encode4(5584), |
| 2805 | /* 5248 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 2806 | /* 5251 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 2807 | /* 5254 */ GIM_Try, /*On fail goto*//*Label 199*/ GIMT_Encode4(5316), // Rule ID 23511 // |
| 2808 | /* 5259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2809 | /* 5262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2810 | /* 5266 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2811 | /* 5270 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2812 | /* 5274 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2813 | /* 5277 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2814 | /* 5281 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2815 | /* 5285 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2816 | /* 5289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2817 | /* 5291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2818 | /* 5298 */ // (add:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPADDBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2819 | /* 5298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBrm), |
| 2820 | /* 5301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2821 | /* 5303 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2822 | /* 5305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2823 | /* 5309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2824 | /* 5314 */ GIR_RootConstrainSelectedInstOperands, |
| 2825 | /* 5315 */ // GIR_Coverage, 23511, |
| 2826 | /* 5315 */ GIR_EraseRootFromParent_Done, |
| 2827 | /* 5316 */ // Label 199: @5316 |
| 2828 | /* 5316 */ GIM_Try, /*On fail goto*//*Label 200*/ GIMT_Encode4(5378), // Rule ID 23829 // |
| 2829 | /* 5321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2830 | /* 5324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2831 | /* 5328 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2832 | /* 5332 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2833 | /* 5336 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2834 | /* 5339 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2835 | /* 5343 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2836 | /* 5347 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2837 | /* 5351 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2838 | /* 5353 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2839 | /* 5360 */ // (add:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPADDBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2840 | /* 5360 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZ128rm), |
| 2841 | /* 5363 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2842 | /* 5365 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2843 | /* 5367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2844 | /* 5371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2845 | /* 5376 */ GIR_RootConstrainSelectedInstOperands, |
| 2846 | /* 5377 */ // GIR_Coverage, 23829, |
| 2847 | /* 5377 */ GIR_EraseRootFromParent_Done, |
| 2848 | /* 5378 */ // Label 200: @5378 |
| 2849 | /* 5378 */ GIM_Try, /*On fail goto*//*Label 201*/ GIMT_Encode4(5440), // Rule ID 2523 // |
| 2850 | /* 5383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2851 | /* 5386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2852 | /* 5390 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2853 | /* 5394 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2854 | /* 5398 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2855 | /* 5402 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2856 | /* 5405 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2857 | /* 5409 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2858 | /* 5413 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2859 | /* 5415 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2860 | /* 5422 */ // (add:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2861 | /* 5422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBrm), |
| 2862 | /* 5425 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2863 | /* 5427 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2864 | /* 5429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2865 | /* 5433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2866 | /* 5438 */ GIR_RootConstrainSelectedInstOperands, |
| 2867 | /* 5439 */ // GIR_Coverage, 2523, |
| 2868 | /* 5439 */ GIR_EraseRootFromParent_Done, |
| 2869 | /* 5440 */ // Label 201: @5440 |
| 2870 | /* 5440 */ GIM_Try, /*On fail goto*//*Label 202*/ GIMT_Encode4(5502), // Rule ID 4724 // |
| 2871 | /* 5445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2872 | /* 5448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2873 | /* 5452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2874 | /* 5456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2875 | /* 5460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2876 | /* 5464 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2877 | /* 5467 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2878 | /* 5471 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2879 | /* 5475 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2880 | /* 5477 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2881 | /* 5484 */ // (add:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2882 | /* 5484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZ128rm), |
| 2883 | /* 5487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2884 | /* 5489 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2885 | /* 5491 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2886 | /* 5495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2887 | /* 5500 */ GIR_RootConstrainSelectedInstOperands, |
| 2888 | /* 5501 */ // GIR_Coverage, 4724, |
| 2889 | /* 5501 */ GIR_EraseRootFromParent_Done, |
| 2890 | /* 5502 */ // Label 202: @5502 |
| 2891 | /* 5502 */ GIM_Try, /*On fail goto*//*Label 203*/ GIMT_Encode4(5529), // Rule ID 2522 // |
| 2892 | /* 5507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 2893 | /* 5510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2894 | /* 5514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2895 | /* 5518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2896 | /* 5522 */ // (add:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPADDBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 2897 | /* 5522 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBrr), |
| 2898 | /* 5527 */ GIR_RootConstrainSelectedInstOperands, |
| 2899 | /* 5528 */ // GIR_Coverage, 2522, |
| 2900 | /* 5528 */ GIR_Done, |
| 2901 | /* 5529 */ // Label 203: @5529 |
| 2902 | /* 5529 */ GIM_Try, /*On fail goto*//*Label 204*/ GIMT_Encode4(5556), // Rule ID 2524 // |
| 2903 | /* 5534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 2904 | /* 5537 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2905 | /* 5541 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2906 | /* 5545 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 2907 | /* 5549 */ // (add:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PADDBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 2908 | /* 5549 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDBrr), |
| 2909 | /* 5554 */ GIR_RootConstrainSelectedInstOperands, |
| 2910 | /* 5555 */ // GIR_Coverage, 2524, |
| 2911 | /* 5555 */ GIR_Done, |
| 2912 | /* 5556 */ // Label 204: @5556 |
| 2913 | /* 5556 */ GIM_Try, /*On fail goto*//*Label 205*/ GIMT_Encode4(5583), // Rule ID 4721 // |
| 2914 | /* 5561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2915 | /* 5564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2916 | /* 5568 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2917 | /* 5572 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 2918 | /* 5576 */ // (add:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPADDBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 2919 | /* 5576 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBZ128rr), |
| 2920 | /* 5581 */ GIR_RootConstrainSelectedInstOperands, |
| 2921 | /* 5582 */ // GIR_Coverage, 4721, |
| 2922 | /* 5582 */ GIR_Done, |
| 2923 | /* 5583 */ // Label 205: @5583 |
| 2924 | /* 5583 */ GIM_Reject, |
| 2925 | /* 5584 */ // Label 198: @5584 |
| 2926 | /* 5584 */ GIM_Reject, |
| 2927 | /* 5585 */ // Label 94: @5585 |
| 2928 | /* 5585 */ GIM_Try, /*On fail goto*//*Label 206*/ GIMT_Encode4(5899), |
| 2929 | /* 5590 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 2930 | /* 5593 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 2931 | /* 5596 */ GIM_Try, /*On fail goto*//*Label 207*/ GIMT_Encode4(5658), // Rule ID 23516 // |
| 2932 | /* 5601 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 2933 | /* 5604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2934 | /* 5608 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2935 | /* 5612 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2936 | /* 5616 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2937 | /* 5619 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2938 | /* 5623 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2939 | /* 5627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2940 | /* 5631 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2941 | /* 5633 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2942 | /* 5640 */ // (add:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPADDWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2943 | /* 5640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWYrm), |
| 2944 | /* 5643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2945 | /* 5645 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2946 | /* 5647 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2947 | /* 5651 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2948 | /* 5656 */ GIR_RootConstrainSelectedInstOperands, |
| 2949 | /* 5657 */ // GIR_Coverage, 23516, |
| 2950 | /* 5657 */ GIR_EraseRootFromParent_Done, |
| 2951 | /* 5658 */ // Label 207: @5658 |
| 2952 | /* 5658 */ GIM_Try, /*On fail goto*//*Label 208*/ GIMT_Encode4(5720), // Rule ID 23817 // |
| 2953 | /* 5663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2954 | /* 5666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2955 | /* 5670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2956 | /* 5674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2957 | /* 5678 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2958 | /* 5681 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2959 | /* 5685 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2960 | /* 5689 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2961 | /* 5693 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2962 | /* 5695 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2963 | /* 5702 */ // (add:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPADDWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2964 | /* 5702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZ256rm), |
| 2965 | /* 5705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2966 | /* 5707 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 2967 | /* 5709 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2968 | /* 5713 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2969 | /* 5718 */ GIR_RootConstrainSelectedInstOperands, |
| 2970 | /* 5719 */ // GIR_Coverage, 23817, |
| 2971 | /* 5719 */ GIR_EraseRootFromParent_Done, |
| 2972 | /* 5720 */ // Label 208: @5720 |
| 2973 | /* 5720 */ GIM_Try, /*On fail goto*//*Label 209*/ GIMT_Encode4(5782), // Rule ID 2533 // |
| 2974 | /* 5725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 2975 | /* 5728 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2976 | /* 5732 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 2977 | /* 5736 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2978 | /* 5740 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 2979 | /* 5744 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 2980 | /* 5747 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 2981 | /* 5751 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 2982 | /* 5755 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2983 | /* 5757 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 2984 | /* 5764 */ // (add:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 2985 | /* 5764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWYrm), |
| 2986 | /* 5767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 2987 | /* 5769 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 2988 | /* 5771 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 2989 | /* 5775 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 2990 | /* 5780 */ GIR_RootConstrainSelectedInstOperands, |
| 2991 | /* 5781 */ // GIR_Coverage, 2533, |
| 2992 | /* 5781 */ GIR_EraseRootFromParent_Done, |
| 2993 | /* 5782 */ // Label 209: @5782 |
| 2994 | /* 5782 */ GIM_Try, /*On fail goto*//*Label 210*/ GIMT_Encode4(5844), // Rule ID 4700 // |
| 2995 | /* 5787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 2996 | /* 5790 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2997 | /* 5794 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 2998 | /* 5798 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2999 | /* 5802 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3000 | /* 5806 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3001 | /* 5809 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3002 | /* 5813 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3003 | /* 5817 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3004 | /* 5819 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3005 | /* 5826 */ // (add:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3006 | /* 5826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZ256rm), |
| 3007 | /* 5829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3008 | /* 5831 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3009 | /* 5833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3010 | /* 5837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3011 | /* 5842 */ GIR_RootConstrainSelectedInstOperands, |
| 3012 | /* 5843 */ // GIR_Coverage, 4700, |
| 3013 | /* 5843 */ GIR_EraseRootFromParent_Done, |
| 3014 | /* 5844 */ // Label 210: @5844 |
| 3015 | /* 5844 */ GIM_Try, /*On fail goto*//*Label 211*/ GIMT_Encode4(5871), // Rule ID 2532 // |
| 3016 | /* 5849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3017 | /* 5852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3018 | /* 5856 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3019 | /* 5860 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3020 | /* 5864 */ // (add:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPADDWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 3021 | /* 5864 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWYrr), |
| 3022 | /* 5869 */ GIR_RootConstrainSelectedInstOperands, |
| 3023 | /* 5870 */ // GIR_Coverage, 2532, |
| 3024 | /* 5870 */ GIR_Done, |
| 3025 | /* 5871 */ // Label 211: @5871 |
| 3026 | /* 5871 */ GIM_Try, /*On fail goto*//*Label 212*/ GIMT_Encode4(5898), // Rule ID 4697 // |
| 3027 | /* 5876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3028 | /* 5879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3029 | /* 5883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3030 | /* 5887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3031 | /* 5891 */ // (add:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPADDWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 3032 | /* 5891 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWZ256rr), |
| 3033 | /* 5896 */ GIR_RootConstrainSelectedInstOperands, |
| 3034 | /* 5897 */ // GIR_Coverage, 4697, |
| 3035 | /* 5897 */ GIR_Done, |
| 3036 | /* 5898 */ // Label 212: @5898 |
| 3037 | /* 5898 */ GIM_Reject, |
| 3038 | /* 5899 */ // Label 206: @5899 |
| 3039 | /* 5899 */ GIM_Reject, |
| 3040 | /* 5900 */ // Label 95: @5900 |
| 3041 | /* 5900 */ GIM_Try, /*On fail goto*//*Label 213*/ GIMT_Encode4(6055), |
| 3042 | /* 5905 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 3043 | /* 5908 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 3044 | /* 5911 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3045 | /* 5915 */ GIM_Try, /*On fail goto*//*Label 214*/ GIMT_Encode4(5973), // Rule ID 23796 // |
| 3046 | /* 5920 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 3047 | /* 5923 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3048 | /* 5927 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3049 | /* 5931 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3050 | /* 5934 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3051 | /* 5938 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3052 | /* 5942 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3053 | /* 5946 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3054 | /* 5948 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3055 | /* 5955 */ // (add:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPADDDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3056 | /* 5955 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZrm), |
| 3057 | /* 5958 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3058 | /* 5960 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3059 | /* 5962 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3060 | /* 5966 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3061 | /* 5971 */ GIR_RootConstrainSelectedInstOperands, |
| 3062 | /* 5972 */ // GIR_Coverage, 23796, |
| 3063 | /* 5972 */ GIR_EraseRootFromParent_Done, |
| 3064 | /* 5973 */ // Label 214: @5973 |
| 3065 | /* 5973 */ GIM_Try, /*On fail goto*//*Label 215*/ GIMT_Encode4(6031), // Rule ID 4667 // |
| 3066 | /* 5978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 3067 | /* 5981 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3068 | /* 5985 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3069 | /* 5989 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3070 | /* 5993 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3071 | /* 5996 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3072 | /* 6000 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3073 | /* 6004 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3074 | /* 6006 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3075 | /* 6013 */ // (add:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3076 | /* 6013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDDZrm), |
| 3077 | /* 6016 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3078 | /* 6018 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3079 | /* 6020 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3080 | /* 6024 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3081 | /* 6029 */ GIR_RootConstrainSelectedInstOperands, |
| 3082 | /* 6030 */ // GIR_Coverage, 4667, |
| 3083 | /* 6030 */ GIR_EraseRootFromParent_Done, |
| 3084 | /* 6031 */ // Label 215: @6031 |
| 3085 | /* 6031 */ GIM_Try, /*On fail goto*//*Label 216*/ GIMT_Encode4(6054), // Rule ID 4664 // |
| 3086 | /* 6036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 3087 | /* 6039 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3088 | /* 6043 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3089 | /* 6047 */ // (add:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPADDDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 3090 | /* 6047 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDDZrr), |
| 3091 | /* 6052 */ GIR_RootConstrainSelectedInstOperands, |
| 3092 | /* 6053 */ // GIR_Coverage, 4664, |
| 3093 | /* 6053 */ GIR_Done, |
| 3094 | /* 6054 */ // Label 216: @6054 |
| 3095 | /* 6054 */ GIM_Reject, |
| 3096 | /* 6055 */ // Label 213: @6055 |
| 3097 | /* 6055 */ GIM_Reject, |
| 3098 | /* 6056 */ // Label 96: @6056 |
| 3099 | /* 6056 */ GIM_Try, /*On fail goto*//*Label 217*/ GIMT_Encode4(6370), |
| 3100 | /* 6061 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 3101 | /* 6064 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 3102 | /* 6067 */ GIM_Try, /*On fail goto*//*Label 218*/ GIMT_Encode4(6129), // Rule ID 23513 // |
| 3103 | /* 6072 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3104 | /* 6075 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3105 | /* 6079 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3106 | /* 6083 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3107 | /* 6087 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3108 | /* 6090 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3109 | /* 6094 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3110 | /* 6098 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3111 | /* 6102 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3112 | /* 6104 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3113 | /* 6111 */ // (add:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPADDBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3114 | /* 6111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBYrm), |
| 3115 | /* 6114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3116 | /* 6116 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3117 | /* 6118 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3118 | /* 6122 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3119 | /* 6127 */ GIR_RootConstrainSelectedInstOperands, |
| 3120 | /* 6128 */ // GIR_Coverage, 23513, |
| 3121 | /* 6128 */ GIR_EraseRootFromParent_Done, |
| 3122 | /* 6129 */ // Label 218: @6129 |
| 3123 | /* 6129 */ GIM_Try, /*On fail goto*//*Label 219*/ GIMT_Encode4(6191), // Rule ID 23826 // |
| 3124 | /* 6134 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3125 | /* 6137 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3126 | /* 6141 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3127 | /* 6145 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3128 | /* 6149 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3129 | /* 6152 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3130 | /* 6156 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3131 | /* 6160 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3132 | /* 6164 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3133 | /* 6166 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3134 | /* 6173 */ // (add:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPADDBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3135 | /* 6173 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZ256rm), |
| 3136 | /* 6176 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3137 | /* 6178 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3138 | /* 6180 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3139 | /* 6184 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3140 | /* 6189 */ GIR_RootConstrainSelectedInstOperands, |
| 3141 | /* 6190 */ // GIR_Coverage, 23826, |
| 3142 | /* 6190 */ GIR_EraseRootFromParent_Done, |
| 3143 | /* 6191 */ // Label 219: @6191 |
| 3144 | /* 6191 */ GIM_Try, /*On fail goto*//*Label 220*/ GIMT_Encode4(6253), // Rule ID 2527 // |
| 3145 | /* 6196 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3146 | /* 6199 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3147 | /* 6203 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3148 | /* 6207 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3149 | /* 6211 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3150 | /* 6215 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3151 | /* 6218 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3152 | /* 6222 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3153 | /* 6226 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3154 | /* 6228 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3155 | /* 6235 */ // (add:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3156 | /* 6235 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBYrm), |
| 3157 | /* 6238 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3158 | /* 6240 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3159 | /* 6242 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3160 | /* 6246 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3161 | /* 6251 */ GIR_RootConstrainSelectedInstOperands, |
| 3162 | /* 6252 */ // GIR_Coverage, 2527, |
| 3163 | /* 6252 */ GIR_EraseRootFromParent_Done, |
| 3164 | /* 6253 */ // Label 220: @6253 |
| 3165 | /* 6253 */ GIM_Try, /*On fail goto*//*Label 221*/ GIMT_Encode4(6315), // Rule ID 4718 // |
| 3166 | /* 6258 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3167 | /* 6261 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3168 | /* 6265 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3169 | /* 6269 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3170 | /* 6273 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3171 | /* 6277 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3172 | /* 6280 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3173 | /* 6284 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3174 | /* 6288 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3175 | /* 6290 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3176 | /* 6297 */ // (add:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3177 | /* 6297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZ256rm), |
| 3178 | /* 6300 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3179 | /* 6302 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3180 | /* 6304 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3181 | /* 6308 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3182 | /* 6313 */ GIR_RootConstrainSelectedInstOperands, |
| 3183 | /* 6314 */ // GIR_Coverage, 4718, |
| 3184 | /* 6314 */ GIR_EraseRootFromParent_Done, |
| 3185 | /* 6315 */ // Label 221: @6315 |
| 3186 | /* 6315 */ GIM_Try, /*On fail goto*//*Label 222*/ GIMT_Encode4(6342), // Rule ID 2526 // |
| 3187 | /* 6320 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 3188 | /* 6323 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3189 | /* 6327 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3190 | /* 6331 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 3191 | /* 6335 */ // (add:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPADDBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 3192 | /* 6335 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBYrr), |
| 3193 | /* 6340 */ GIR_RootConstrainSelectedInstOperands, |
| 3194 | /* 6341 */ // GIR_Coverage, 2526, |
| 3195 | /* 6341 */ GIR_Done, |
| 3196 | /* 6342 */ // Label 222: @6342 |
| 3197 | /* 6342 */ GIM_Try, /*On fail goto*//*Label 223*/ GIMT_Encode4(6369), // Rule ID 4715 // |
| 3198 | /* 6347 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 3199 | /* 6350 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3200 | /* 6354 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3201 | /* 6358 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 3202 | /* 6362 */ // (add:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPADDBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 3203 | /* 6362 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBZ256rr), |
| 3204 | /* 6367 */ GIR_RootConstrainSelectedInstOperands, |
| 3205 | /* 6368 */ // GIR_Coverage, 4715, |
| 3206 | /* 6368 */ GIR_Done, |
| 3207 | /* 6369 */ // Label 223: @6369 |
| 3208 | /* 6369 */ GIM_Reject, |
| 3209 | /* 6370 */ // Label 217: @6370 |
| 3210 | /* 6370 */ GIM_Reject, |
| 3211 | /* 6371 */ // Label 97: @6371 |
| 3212 | /* 6371 */ GIM_Try, /*On fail goto*//*Label 224*/ GIMT_Encode4(6526), |
| 3213 | /* 6376 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 3214 | /* 6379 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 3215 | /* 6382 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3216 | /* 6386 */ GIM_Try, /*On fail goto*//*Label 225*/ GIMT_Encode4(6444), // Rule ID 23814 // |
| 3217 | /* 6391 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3218 | /* 6394 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3219 | /* 6398 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3220 | /* 6402 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3221 | /* 6405 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3222 | /* 6409 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3223 | /* 6413 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3224 | /* 6417 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3225 | /* 6419 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3226 | /* 6426 */ // (add:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPADDWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3227 | /* 6426 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZrm), |
| 3228 | /* 6429 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3229 | /* 6431 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3230 | /* 6433 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3231 | /* 6437 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3232 | /* 6442 */ GIR_RootConstrainSelectedInstOperands, |
| 3233 | /* 6443 */ // GIR_Coverage, 23814, |
| 3234 | /* 6443 */ GIR_EraseRootFromParent_Done, |
| 3235 | /* 6444 */ // Label 225: @6444 |
| 3236 | /* 6444 */ GIM_Try, /*On fail goto*//*Label 226*/ GIMT_Encode4(6502), // Rule ID 4694 // |
| 3237 | /* 6449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3238 | /* 6452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3239 | /* 6456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3240 | /* 6460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3241 | /* 6464 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3242 | /* 6467 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3243 | /* 6471 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3244 | /* 6475 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3245 | /* 6477 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3246 | /* 6484 */ // (add:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3247 | /* 6484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDWZrm), |
| 3248 | /* 6487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3249 | /* 6489 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3250 | /* 6491 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3251 | /* 6495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3252 | /* 6500 */ GIR_RootConstrainSelectedInstOperands, |
| 3253 | /* 6501 */ // GIR_Coverage, 4694, |
| 3254 | /* 6501 */ GIR_EraseRootFromParent_Done, |
| 3255 | /* 6502 */ // Label 226: @6502 |
| 3256 | /* 6502 */ GIM_Try, /*On fail goto*//*Label 227*/ GIMT_Encode4(6525), // Rule ID 4691 // |
| 3257 | /* 6507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3258 | /* 6510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3259 | /* 6514 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3260 | /* 6518 */ // (add:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPADDWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 3261 | /* 6518 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDWZrr), |
| 3262 | /* 6523 */ GIR_RootConstrainSelectedInstOperands, |
| 3263 | /* 6524 */ // GIR_Coverage, 4691, |
| 3264 | /* 6524 */ GIR_Done, |
| 3265 | /* 6525 */ // Label 227: @6525 |
| 3266 | /* 6525 */ GIM_Reject, |
| 3267 | /* 6526 */ // Label 224: @6526 |
| 3268 | /* 6526 */ GIM_Reject, |
| 3269 | /* 6527 */ // Label 98: @6527 |
| 3270 | /* 6527 */ GIM_Try, /*On fail goto*//*Label 228*/ GIMT_Encode4(6682), |
| 3271 | /* 6532 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 3272 | /* 6535 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 3273 | /* 6538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3274 | /* 6542 */ GIM_Try, /*On fail goto*//*Label 229*/ GIMT_Encode4(6600), // Rule ID 23823 // |
| 3275 | /* 6547 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3276 | /* 6550 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 3277 | /* 6554 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3278 | /* 6558 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3279 | /* 6561 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3280 | /* 6565 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3281 | /* 6569 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3282 | /* 6573 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3283 | /* 6575 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3284 | /* 6582 */ // (add:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPADDBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3285 | /* 6582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZrm), |
| 3286 | /* 6585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3287 | /* 6587 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3288 | /* 6589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3289 | /* 6593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3290 | /* 6598 */ GIR_RootConstrainSelectedInstOperands, |
| 3291 | /* 6599 */ // GIR_Coverage, 23823, |
| 3292 | /* 6599 */ GIR_EraseRootFromParent_Done, |
| 3293 | /* 6600 */ // Label 229: @6600 |
| 3294 | /* 6600 */ GIM_Try, /*On fail goto*//*Label 230*/ GIMT_Encode4(6658), // Rule ID 4712 // |
| 3295 | /* 6605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3296 | /* 6608 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3297 | /* 6612 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3298 | /* 6616 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3299 | /* 6620 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3300 | /* 6623 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3301 | /* 6627 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3302 | /* 6631 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3303 | /* 6633 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3304 | /* 6640 */ // (add:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3305 | /* 6640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDBZrm), |
| 3306 | /* 6643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3307 | /* 6645 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3308 | /* 6647 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3309 | /* 6651 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3310 | /* 6656 */ GIR_RootConstrainSelectedInstOperands, |
| 3311 | /* 6657 */ // GIR_Coverage, 4712, |
| 3312 | /* 6657 */ GIR_EraseRootFromParent_Done, |
| 3313 | /* 6658 */ // Label 230: @6658 |
| 3314 | /* 6658 */ GIM_Try, /*On fail goto*//*Label 231*/ GIMT_Encode4(6681), // Rule ID 4709 // |
| 3315 | /* 6663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 3316 | /* 6666 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3317 | /* 6670 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 3318 | /* 6674 */ // (add:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPADDBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 3319 | /* 6674 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDBZrr), |
| 3320 | /* 6679 */ GIR_RootConstrainSelectedInstOperands, |
| 3321 | /* 6680 */ // GIR_Coverage, 4709, |
| 3322 | /* 6680 */ GIR_Done, |
| 3323 | /* 6681 */ // Label 231: @6681 |
| 3324 | /* 6681 */ GIM_Reject, |
| 3325 | /* 6682 */ // Label 228: @6682 |
| 3326 | /* 6682 */ GIM_Reject, |
| 3327 | /* 6683 */ // Label 99: @6683 |
| 3328 | /* 6683 */ GIM_Reject, |
| 3329 | /* 6684 */ // Label 1: @6684 |
| 3330 | /* 6684 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(25), /*)*//*default:*//*Label 248*/ GIMT_Encode4(9975), |
| 3331 | /* 6695 */ /*GILLT_s8*//*Label 232*/ GIMT_Encode4(6791), |
| 3332 | /* 6699 */ /*GILLT_s16*//*Label 233*/ GIMT_Encode4(7082), |
| 3333 | /* 6703 */ /*GILLT_s32*//*Label 234*/ GIMT_Encode4(7373), |
| 3334 | /* 6707 */ /*GILLT_s64*//*Label 235*/ GIMT_Encode4(7664), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 3335 | /* 6723 */ /*GILLT_v2s64*//*Label 236*/ GIMT_Encode4(7963), GIMT_Encode4(0), |
| 3336 | /* 6731 */ /*GILLT_v4s32*//*Label 237*/ GIMT_Encode4(8181), |
| 3337 | /* 6735 */ /*GILLT_v4s64*//*Label 238*/ GIMT_Encode4(8399), GIMT_Encode4(0), |
| 3338 | /* 6743 */ /*GILLT_v8s16*//*Label 239*/ GIMT_Encode4(8590), |
| 3339 | /* 6747 */ /*GILLT_v8s32*//*Label 240*/ GIMT_Encode4(8808), |
| 3340 | /* 6751 */ /*GILLT_v8s64*//*Label 241*/ GIMT_Encode4(8999), GIMT_Encode4(0), |
| 3341 | /* 6759 */ /*GILLT_v16s8*//*Label 242*/ GIMT_Encode4(9093), |
| 3342 | /* 6763 */ /*GILLT_v16s16*//*Label 243*/ GIMT_Encode4(9311), |
| 3343 | /* 6767 */ /*GILLT_v16s32*//*Label 244*/ GIMT_Encode4(9502), GIMT_Encode4(0), |
| 3344 | /* 6775 */ /*GILLT_v32s8*//*Label 245*/ GIMT_Encode4(9596), |
| 3345 | /* 6779 */ /*GILLT_v32s16*//*Label 246*/ GIMT_Encode4(9787), GIMT_Encode4(0), |
| 3346 | /* 6787 */ /*GILLT_v64s8*//*Label 247*/ GIMT_Encode4(9881), |
| 3347 | /* 6791 */ // Label 232: @6791 |
| 3348 | /* 6791 */ GIM_Try, /*On fail goto*//*Label 249*/ GIMT_Encode4(7081), |
| 3349 | /* 6796 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 3350 | /* 6799 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 3351 | /* 6802 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3352 | /* 6806 */ GIM_Try, /*On fail goto*//*Label 250*/ GIMT_Encode4(6867), // Rule ID 22889 // |
| 3353 | /* 6811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3354 | /* 6814 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3355 | /* 6818 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3356 | /* 6822 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3357 | /* 6826 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3358 | /* 6829 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3359 | /* 6833 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 3360 | /* 6837 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3361 | /* 6839 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3362 | /* 6846 */ // (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) |
| 3363 | /* 6846 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8rm), |
| 3364 | /* 6849 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3365 | /* 6851 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3366 | /* 6853 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3367 | /* 6857 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3368 | /* 6860 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3369 | /* 6865 */ GIR_RootConstrainSelectedInstOperands, |
| 3370 | /* 6866 */ // GIR_Coverage, 22889, |
| 3371 | /* 6866 */ GIR_EraseRootFromParent_Done, |
| 3372 | /* 6867 */ // Label 250: @6867 |
| 3373 | /* 6867 */ GIM_Try, /*On fail goto*//*Label 251*/ GIMT_Encode4(6895), // Rule ID 239 // |
| 3374 | /* 6872 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3375 | /* 6875 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3376 | /* 6879 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3377 | /* 6883 */ // (sub:{ *:[i8] } 0:{ *:[i8] }, GR8:{ *:[i8] }:$src1) => (NEG8r:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 3378 | /* 6883 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8r), |
| 3379 | /* 6886 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3380 | /* 6888 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3381 | /* 6890 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3382 | /* 6893 */ GIR_RootConstrainSelectedInstOperands, |
| 3383 | /* 6894 */ // GIR_Coverage, 239, |
| 3384 | /* 6894 */ GIR_EraseRootFromParent_Done, |
| 3385 | /* 6895 */ // Label 251: @6895 |
| 3386 | /* 6895 */ GIM_Try, /*On fail goto*//*Label 252*/ GIMT_Encode4(6923), // Rule ID 247 // |
| 3387 | /* 6900 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3388 | /* 6903 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3389 | /* 6907 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3390 | /* 6911 */ // (sub:{ *:[i8] } 0:{ *:[i8] }, GR8:{ *:[i8] }:$src1) => (NEG8r_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 3391 | /* 6911 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8r_ND), |
| 3392 | /* 6914 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3393 | /* 6916 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3394 | /* 6918 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3395 | /* 6921 */ GIR_RootConstrainSelectedInstOperands, |
| 3396 | /* 6922 */ // GIR_Coverage, 247, |
| 3397 | /* 6922 */ GIR_EraseRootFromParent_Done, |
| 3398 | /* 6923 */ // Label 252: @6923 |
| 3399 | /* 6923 */ GIM_Try, /*On fail goto*//*Label 253*/ GIMT_Encode4(6948), // Rule ID 255 // |
| 3400 | /* 6928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3401 | /* 6931 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3402 | /* 6935 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3403 | /* 6939 */ // (sub:{ *:[i8] } 0:{ *:[i8] }, GR8:{ *:[i8] }:$src1) => (NEG8r_NF_ND:{ *:[i8] } GR8:{ *:[i8] }:$src1) |
| 3404 | /* 6939 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8r_NF_ND), |
| 3405 | /* 6942 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3406 | /* 6944 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3407 | /* 6946 */ GIR_RootConstrainSelectedInstOperands, |
| 3408 | /* 6947 */ // GIR_Coverage, 255, |
| 3409 | /* 6947 */ GIR_EraseRootFromParent_Done, |
| 3410 | /* 6948 */ // Label 253: @6948 |
| 3411 | /* 6948 */ GIM_Try, /*On fail goto*//*Label 254*/ GIMT_Encode4(6985), // Rule ID 22893 // |
| 3412 | /* 6953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3413 | /* 6956 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3414 | /* 6960 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3415 | /* 6964 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3416 | /* 6968 */ // MIs[1] Operand 1 |
| 3417 | /* 6968 */ // No operand predicates |
| 3418 | /* 6968 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3419 | /* 6970 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SUB8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 3420 | /* 6970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8ri), |
| 3421 | /* 6973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3422 | /* 6975 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3423 | /* 6977 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3424 | /* 6980 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3425 | /* 6983 */ GIR_RootConstrainSelectedInstOperands, |
| 3426 | /* 6984 */ // GIR_Coverage, 22893, |
| 3427 | /* 6984 */ GIR_EraseRootFromParent_Done, |
| 3428 | /* 6985 */ // Label 254: @6985 |
| 3429 | /* 6985 */ GIM_Try, /*On fail goto*//*Label 255*/ GIMT_Encode4(7022), // Rule ID 22983 // |
| 3430 | /* 6990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3431 | /* 6993 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3432 | /* 6997 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3433 | /* 7001 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3434 | /* 7005 */ // MIs[1] Operand 1 |
| 3435 | /* 7005 */ // No operand predicates |
| 3436 | /* 7005 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3437 | /* 7007 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SUB8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 3438 | /* 7007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8ri_ND), |
| 3439 | /* 7010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3440 | /* 7012 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3441 | /* 7014 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3442 | /* 7017 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3443 | /* 7020 */ GIR_RootConstrainSelectedInstOperands, |
| 3444 | /* 7021 */ // GIR_Coverage, 22983, |
| 3445 | /* 7021 */ GIR_EraseRootFromParent_Done, |
| 3446 | /* 7022 */ // Label 255: @7022 |
| 3447 | /* 7022 */ GIM_Try, /*On fail goto*//*Label 256*/ GIMT_Encode4(7051), // Rule ID 22885 // |
| 3448 | /* 7027 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3449 | /* 7030 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3450 | /* 7034 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3451 | /* 7038 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (SUB8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 3452 | /* 7038 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB8rr), |
| 3453 | /* 7043 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 3454 | /* 7049 */ GIR_RootConstrainSelectedInstOperands, |
| 3455 | /* 7050 */ // GIR_Coverage, 22885, |
| 3456 | /* 7050 */ GIR_Done, |
| 3457 | /* 7051 */ // Label 256: @7051 |
| 3458 | /* 7051 */ GIM_Try, /*On fail goto*//*Label 257*/ GIMT_Encode4(7080), // Rule ID 22975 // |
| 3459 | /* 7056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3460 | /* 7059 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3461 | /* 7063 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 3462 | /* 7067 */ // (sub:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (SUB8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 3463 | /* 7067 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB8rr_ND), |
| 3464 | /* 7072 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 3465 | /* 7078 */ GIR_RootConstrainSelectedInstOperands, |
| 3466 | /* 7079 */ // GIR_Coverage, 22975, |
| 3467 | /* 7079 */ GIR_Done, |
| 3468 | /* 7080 */ // Label 257: @7080 |
| 3469 | /* 7080 */ GIM_Reject, |
| 3470 | /* 7081 */ // Label 249: @7081 |
| 3471 | /* 7081 */ GIM_Reject, |
| 3472 | /* 7082 */ // Label 233: @7082 |
| 3473 | /* 7082 */ GIM_Try, /*On fail goto*//*Label 258*/ GIMT_Encode4(7372), |
| 3474 | /* 7087 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 3475 | /* 7090 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 3476 | /* 7093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3477 | /* 7097 */ GIM_Try, /*On fail goto*//*Label 259*/ GIMT_Encode4(7158), // Rule ID 22890 // |
| 3478 | /* 7102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3479 | /* 7105 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3480 | /* 7109 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3481 | /* 7113 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3482 | /* 7117 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3483 | /* 7120 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3484 | /* 7124 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 3485 | /* 7128 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3486 | /* 7130 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3487 | /* 7137 */ // (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) |
| 3488 | /* 7137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16rm), |
| 3489 | /* 7140 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3490 | /* 7142 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3491 | /* 7144 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3492 | /* 7148 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3493 | /* 7151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3494 | /* 7156 */ GIR_RootConstrainSelectedInstOperands, |
| 3495 | /* 7157 */ // GIR_Coverage, 22890, |
| 3496 | /* 7157 */ GIR_EraseRootFromParent_Done, |
| 3497 | /* 7158 */ // Label 259: @7158 |
| 3498 | /* 7158 */ GIM_Try, /*On fail goto*//*Label 260*/ GIMT_Encode4(7186), // Rule ID 240 // |
| 3499 | /* 7163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3500 | /* 7166 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3501 | /* 7170 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3502 | /* 7174 */ // (sub:{ *:[i16] } 0:{ *:[i16] }, GR16:{ *:[i16] }:$src1) => (NEG16r:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 3503 | /* 7174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16r), |
| 3504 | /* 7177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3505 | /* 7179 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3506 | /* 7181 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3507 | /* 7184 */ GIR_RootConstrainSelectedInstOperands, |
| 3508 | /* 7185 */ // GIR_Coverage, 240, |
| 3509 | /* 7185 */ GIR_EraseRootFromParent_Done, |
| 3510 | /* 7186 */ // Label 260: @7186 |
| 3511 | /* 7186 */ GIM_Try, /*On fail goto*//*Label 261*/ GIMT_Encode4(7214), // Rule ID 248 // |
| 3512 | /* 7191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3513 | /* 7194 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3514 | /* 7198 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3515 | /* 7202 */ // (sub:{ *:[i16] } 0:{ *:[i16] }, GR16:{ *:[i16] }:$src1) => (NEG16r_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 3516 | /* 7202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16r_ND), |
| 3517 | /* 7205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3518 | /* 7207 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3519 | /* 7209 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3520 | /* 7212 */ GIR_RootConstrainSelectedInstOperands, |
| 3521 | /* 7213 */ // GIR_Coverage, 248, |
| 3522 | /* 7213 */ GIR_EraseRootFromParent_Done, |
| 3523 | /* 7214 */ // Label 261: @7214 |
| 3524 | /* 7214 */ GIM_Try, /*On fail goto*//*Label 262*/ GIMT_Encode4(7239), // Rule ID 256 // |
| 3525 | /* 7219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3526 | /* 7222 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3527 | /* 7226 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3528 | /* 7230 */ // (sub:{ *:[i16] } 0:{ *:[i16] }, GR16:{ *:[i16] }:$src1) => (NEG16r_NF_ND:{ *:[i16] } GR16:{ *:[i16] }:$src1) |
| 3529 | /* 7230 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16r_NF_ND), |
| 3530 | /* 7233 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3531 | /* 7235 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3532 | /* 7237 */ GIR_RootConstrainSelectedInstOperands, |
| 3533 | /* 7238 */ // GIR_Coverage, 256, |
| 3534 | /* 7238 */ GIR_EraseRootFromParent_Done, |
| 3535 | /* 7239 */ // Label 262: @7239 |
| 3536 | /* 7239 */ GIM_Try, /*On fail goto*//*Label 263*/ GIMT_Encode4(7276), // Rule ID 22894 // |
| 3537 | /* 7244 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3538 | /* 7247 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3539 | /* 7251 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3540 | /* 7255 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3541 | /* 7259 */ // MIs[1] Operand 1 |
| 3542 | /* 7259 */ // No operand predicates |
| 3543 | /* 7259 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3544 | /* 7261 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (SUB16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 3545 | /* 7261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16ri), |
| 3546 | /* 7264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3547 | /* 7266 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3548 | /* 7268 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3549 | /* 7271 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3550 | /* 7274 */ GIR_RootConstrainSelectedInstOperands, |
| 3551 | /* 7275 */ // GIR_Coverage, 22894, |
| 3552 | /* 7275 */ GIR_EraseRootFromParent_Done, |
| 3553 | /* 7276 */ // Label 263: @7276 |
| 3554 | /* 7276 */ GIM_Try, /*On fail goto*//*Label 264*/ GIMT_Encode4(7313), // Rule ID 22984 // |
| 3555 | /* 7281 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3556 | /* 7284 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3557 | /* 7288 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3558 | /* 7292 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3559 | /* 7296 */ // MIs[1] Operand 1 |
| 3560 | /* 7296 */ // No operand predicates |
| 3561 | /* 7296 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3562 | /* 7298 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (SUB16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 3563 | /* 7298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16ri_ND), |
| 3564 | /* 7301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3565 | /* 7303 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3566 | /* 7305 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3567 | /* 7308 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3568 | /* 7311 */ GIR_RootConstrainSelectedInstOperands, |
| 3569 | /* 7312 */ // GIR_Coverage, 22984, |
| 3570 | /* 7312 */ GIR_EraseRootFromParent_Done, |
| 3571 | /* 7313 */ // Label 264: @7313 |
| 3572 | /* 7313 */ GIM_Try, /*On fail goto*//*Label 265*/ GIMT_Encode4(7342), // Rule ID 22886 // |
| 3573 | /* 7318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3574 | /* 7321 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3575 | /* 7325 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3576 | /* 7329 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (SUB16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 3577 | /* 7329 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB16rr), |
| 3578 | /* 7334 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 3579 | /* 7340 */ GIR_RootConstrainSelectedInstOperands, |
| 3580 | /* 7341 */ // GIR_Coverage, 22886, |
| 3581 | /* 7341 */ GIR_Done, |
| 3582 | /* 7342 */ // Label 265: @7342 |
| 3583 | /* 7342 */ GIM_Try, /*On fail goto*//*Label 266*/ GIMT_Encode4(7371), // Rule ID 22976 // |
| 3584 | /* 7347 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3585 | /* 7350 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3586 | /* 7354 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 3587 | /* 7358 */ // (sub:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (SUB16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 3588 | /* 7358 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB16rr_ND), |
| 3589 | /* 7363 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 3590 | /* 7369 */ GIR_RootConstrainSelectedInstOperands, |
| 3591 | /* 7370 */ // GIR_Coverage, 22976, |
| 3592 | /* 7370 */ GIR_Done, |
| 3593 | /* 7371 */ // Label 266: @7371 |
| 3594 | /* 7371 */ GIM_Reject, |
| 3595 | /* 7372 */ // Label 258: @7372 |
| 3596 | /* 7372 */ GIM_Reject, |
| 3597 | /* 7373 */ // Label 234: @7373 |
| 3598 | /* 7373 */ GIM_Try, /*On fail goto*//*Label 267*/ GIMT_Encode4(7663), |
| 3599 | /* 7378 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3600 | /* 7381 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 3601 | /* 7384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3602 | /* 7388 */ GIM_Try, /*On fail goto*//*Label 268*/ GIMT_Encode4(7449), // Rule ID 22891 // |
| 3603 | /* 7393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3604 | /* 7396 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3605 | /* 7400 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3606 | /* 7404 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3607 | /* 7408 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3608 | /* 7411 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3609 | /* 7415 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 3610 | /* 7419 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3611 | /* 7421 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3612 | /* 7428 */ // (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) |
| 3613 | /* 7428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32rm), |
| 3614 | /* 7431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3615 | /* 7433 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3616 | /* 7435 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3617 | /* 7439 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3618 | /* 7442 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3619 | /* 7447 */ GIR_RootConstrainSelectedInstOperands, |
| 3620 | /* 7448 */ // GIR_Coverage, 22891, |
| 3621 | /* 7448 */ GIR_EraseRootFromParent_Done, |
| 3622 | /* 7449 */ // Label 268: @7449 |
| 3623 | /* 7449 */ GIM_Try, /*On fail goto*//*Label 269*/ GIMT_Encode4(7477), // Rule ID 241 // |
| 3624 | /* 7454 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3625 | /* 7457 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3626 | /* 7461 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3627 | /* 7465 */ // (sub:{ *:[i32] } 0:{ *:[i32] }, GR32:{ *:[i32] }:$src1) => (NEG32r:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 3628 | /* 7465 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32r), |
| 3629 | /* 7468 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3630 | /* 7470 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3631 | /* 7472 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3632 | /* 7475 */ GIR_RootConstrainSelectedInstOperands, |
| 3633 | /* 7476 */ // GIR_Coverage, 241, |
| 3634 | /* 7476 */ GIR_EraseRootFromParent_Done, |
| 3635 | /* 7477 */ // Label 269: @7477 |
| 3636 | /* 7477 */ GIM_Try, /*On fail goto*//*Label 270*/ GIMT_Encode4(7505), // Rule ID 249 // |
| 3637 | /* 7482 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3638 | /* 7485 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3639 | /* 7489 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3640 | /* 7493 */ // (sub:{ *:[i32] } 0:{ *:[i32] }, GR32:{ *:[i32] }:$src1) => (NEG32r_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 3641 | /* 7493 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32r_ND), |
| 3642 | /* 7496 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3643 | /* 7498 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3644 | /* 7500 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3645 | /* 7503 */ GIR_RootConstrainSelectedInstOperands, |
| 3646 | /* 7504 */ // GIR_Coverage, 249, |
| 3647 | /* 7504 */ GIR_EraseRootFromParent_Done, |
| 3648 | /* 7505 */ // Label 270: @7505 |
| 3649 | /* 7505 */ GIM_Try, /*On fail goto*//*Label 271*/ GIMT_Encode4(7530), // Rule ID 257 // |
| 3650 | /* 7510 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3651 | /* 7513 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3652 | /* 7517 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3653 | /* 7521 */ // (sub:{ *:[i32] } 0:{ *:[i32] }, GR32:{ *:[i32] }:$src1) => (NEG32r_NF_ND:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 3654 | /* 7521 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32r_NF_ND), |
| 3655 | /* 7524 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3656 | /* 7526 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3657 | /* 7528 */ GIR_RootConstrainSelectedInstOperands, |
| 3658 | /* 7529 */ // GIR_Coverage, 257, |
| 3659 | /* 7529 */ GIR_EraseRootFromParent_Done, |
| 3660 | /* 7530 */ // Label 271: @7530 |
| 3661 | /* 7530 */ GIM_Try, /*On fail goto*//*Label 272*/ GIMT_Encode4(7567), // Rule ID 22895 // |
| 3662 | /* 7535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3663 | /* 7538 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3664 | /* 7542 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3665 | /* 7546 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3666 | /* 7550 */ // MIs[1] Operand 1 |
| 3667 | /* 7550 */ // No operand predicates |
| 3668 | /* 7550 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3669 | /* 7552 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (SUB32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 3670 | /* 7552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32ri), |
| 3671 | /* 7555 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3672 | /* 7557 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3673 | /* 7559 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3674 | /* 7562 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3675 | /* 7565 */ GIR_RootConstrainSelectedInstOperands, |
| 3676 | /* 7566 */ // GIR_Coverage, 22895, |
| 3677 | /* 7566 */ GIR_EraseRootFromParent_Done, |
| 3678 | /* 7567 */ // Label 272: @7567 |
| 3679 | /* 7567 */ GIM_Try, /*On fail goto*//*Label 273*/ GIMT_Encode4(7604), // Rule ID 22985 // |
| 3680 | /* 7572 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3681 | /* 7575 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3682 | /* 7579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3683 | /* 7583 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3684 | /* 7587 */ // MIs[1] Operand 1 |
| 3685 | /* 7587 */ // No operand predicates |
| 3686 | /* 7587 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3687 | /* 7589 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (SUB32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 3688 | /* 7589 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32ri_ND), |
| 3689 | /* 7592 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3690 | /* 7594 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3691 | /* 7596 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3692 | /* 7599 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3693 | /* 7602 */ GIR_RootConstrainSelectedInstOperands, |
| 3694 | /* 7603 */ // GIR_Coverage, 22985, |
| 3695 | /* 7603 */ GIR_EraseRootFromParent_Done, |
| 3696 | /* 7604 */ // Label 273: @7604 |
| 3697 | /* 7604 */ GIM_Try, /*On fail goto*//*Label 274*/ GIMT_Encode4(7633), // Rule ID 22887 // |
| 3698 | /* 7609 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3699 | /* 7612 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3700 | /* 7616 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3701 | /* 7620 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (SUB32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 3702 | /* 7620 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB32rr), |
| 3703 | /* 7625 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 3704 | /* 7631 */ GIR_RootConstrainSelectedInstOperands, |
| 3705 | /* 7632 */ // GIR_Coverage, 22887, |
| 3706 | /* 7632 */ GIR_Done, |
| 3707 | /* 7633 */ // Label 274: @7633 |
| 3708 | /* 7633 */ GIM_Try, /*On fail goto*//*Label 275*/ GIMT_Encode4(7662), // Rule ID 22977 // |
| 3709 | /* 7638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3710 | /* 7641 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3711 | /* 7645 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 3712 | /* 7649 */ // (sub:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (SUB32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 3713 | /* 7649 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB32rr_ND), |
| 3714 | /* 7654 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 3715 | /* 7660 */ GIR_RootConstrainSelectedInstOperands, |
| 3716 | /* 7661 */ // GIR_Coverage, 22977, |
| 3717 | /* 7661 */ GIR_Done, |
| 3718 | /* 7662 */ // Label 275: @7662 |
| 3719 | /* 7662 */ GIM_Reject, |
| 3720 | /* 7663 */ // Label 267: @7663 |
| 3721 | /* 7663 */ GIM_Reject, |
| 3722 | /* 7664 */ // Label 235: @7664 |
| 3723 | /* 7664 */ GIM_Try, /*On fail goto*//*Label 276*/ GIMT_Encode4(7962), |
| 3724 | /* 7669 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 3725 | /* 7672 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 3726 | /* 7675 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3727 | /* 7679 */ GIM_Try, /*On fail goto*//*Label 277*/ GIMT_Encode4(7740), // Rule ID 22892 // |
| 3728 | /* 7684 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3729 | /* 7687 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3730 | /* 7691 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3731 | /* 7695 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3732 | /* 7699 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3733 | /* 7702 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3734 | /* 7706 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3735 | /* 7710 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3736 | /* 7712 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3737 | /* 7719 */ // (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) |
| 3738 | /* 7719 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64rm), |
| 3739 | /* 7722 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3740 | /* 7724 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3741 | /* 7726 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3742 | /* 7730 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3743 | /* 7733 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3744 | /* 7738 */ GIR_RootConstrainSelectedInstOperands, |
| 3745 | /* 7739 */ // GIR_Coverage, 22892, |
| 3746 | /* 7739 */ GIR_EraseRootFromParent_Done, |
| 3747 | /* 7740 */ // Label 277: @7740 |
| 3748 | /* 7740 */ GIM_Try, /*On fail goto*//*Label 278*/ GIMT_Encode4(7768), // Rule ID 242 // |
| 3749 | /* 7745 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3750 | /* 7748 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3751 | /* 7752 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3752 | /* 7756 */ // (sub:{ *:[i64] } 0:{ *:[i64] }, GR64:{ *:[i64] }:$src1) => (NEG64r:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 3753 | /* 7756 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64r), |
| 3754 | /* 7759 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3755 | /* 7761 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3756 | /* 7763 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3757 | /* 7766 */ GIR_RootConstrainSelectedInstOperands, |
| 3758 | /* 7767 */ // GIR_Coverage, 242, |
| 3759 | /* 7767 */ GIR_EraseRootFromParent_Done, |
| 3760 | /* 7768 */ // Label 278: @7768 |
| 3761 | /* 7768 */ GIM_Try, /*On fail goto*//*Label 279*/ GIMT_Encode4(7796), // Rule ID 250 // |
| 3762 | /* 7773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3763 | /* 7776 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3764 | /* 7780 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3765 | /* 7784 */ // (sub:{ *:[i64] } 0:{ *:[i64] }, GR64:{ *:[i64] }:$src1) => (NEG64r_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 3766 | /* 7784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64r_ND), |
| 3767 | /* 7787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3768 | /* 7789 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3769 | /* 7791 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3770 | /* 7794 */ GIR_RootConstrainSelectedInstOperands, |
| 3771 | /* 7795 */ // GIR_Coverage, 250, |
| 3772 | /* 7795 */ GIR_EraseRootFromParent_Done, |
| 3773 | /* 7796 */ // Label 279: @7796 |
| 3774 | /* 7796 */ GIM_Try, /*On fail goto*//*Label 280*/ GIMT_Encode4(7821), // Rule ID 258 // |
| 3775 | /* 7801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 3776 | /* 7804 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 3777 | /* 7808 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3778 | /* 7812 */ // (sub:{ *:[i64] } 0:{ *:[i64] }, GR64:{ *:[i64] }:$src1) => (NEG64r_NF_ND:{ *:[i64] } GR64:{ *:[i64] }:$src1) |
| 3779 | /* 7812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64r_NF_ND), |
| 3780 | /* 7815 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3781 | /* 7817 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 3782 | /* 7819 */ GIR_RootConstrainSelectedInstOperands, |
| 3783 | /* 7820 */ // GIR_Coverage, 258, |
| 3784 | /* 7820 */ GIR_EraseRootFromParent_Done, |
| 3785 | /* 7821 */ // Label 280: @7821 |
| 3786 | /* 7821 */ GIM_Try, /*On fail goto*//*Label 281*/ GIMT_Encode4(7862), // Rule ID 22943 // |
| 3787 | /* 7826 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDDI), |
| 3788 | /* 7829 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3789 | /* 7833 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3790 | /* 7837 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3791 | /* 7841 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 3792 | /* 7845 */ // MIs[1] Operand 1 |
| 3793 | /* 7845 */ // No operand predicates |
| 3794 | /* 7845 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3795 | /* 7847 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (SUB64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 3796 | /* 7847 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32), |
| 3797 | /* 7850 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3798 | /* 7852 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3799 | /* 7854 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3800 | /* 7857 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3801 | /* 7860 */ GIR_RootConstrainSelectedInstOperands, |
| 3802 | /* 7861 */ // GIR_Coverage, 22943, |
| 3803 | /* 7861 */ GIR_EraseRootFromParent_Done, |
| 3804 | /* 7862 */ // Label 281: @7862 |
| 3805 | /* 7862 */ GIM_Try, /*On fail goto*//*Label 282*/ GIMT_Encode4(7903), // Rule ID 23033 // |
| 3806 | /* 7867 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDDI), |
| 3807 | /* 7870 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3808 | /* 7874 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3809 | /* 7878 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 3810 | /* 7882 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 3811 | /* 7886 */ // MIs[1] Operand 1 |
| 3812 | /* 7886 */ // No operand predicates |
| 3813 | /* 7886 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3814 | /* 7888 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (SUB64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 3815 | /* 7888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64ri32_ND), |
| 3816 | /* 7891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3817 | /* 7893 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3818 | /* 7895 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 3819 | /* 7898 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 3820 | /* 7901 */ GIR_RootConstrainSelectedInstOperands, |
| 3821 | /* 7902 */ // GIR_Coverage, 23033, |
| 3822 | /* 7902 */ GIR_EraseRootFromParent_Done, |
| 3823 | /* 7903 */ // Label 282: @7903 |
| 3824 | /* 7903 */ GIM_Try, /*On fail goto*//*Label 283*/ GIMT_Encode4(7932), // Rule ID 22888 // |
| 3825 | /* 7908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 3826 | /* 7911 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3827 | /* 7915 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3828 | /* 7919 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (SUB64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 3829 | /* 7919 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB64rr), |
| 3830 | /* 7924 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 3831 | /* 7930 */ GIR_RootConstrainSelectedInstOperands, |
| 3832 | /* 7931 */ // GIR_Coverage, 22888, |
| 3833 | /* 7931 */ GIR_Done, |
| 3834 | /* 7932 */ // Label 283: @7932 |
| 3835 | /* 7932 */ GIM_Try, /*On fail goto*//*Label 284*/ GIMT_Encode4(7961), // Rule ID 22978 // |
| 3836 | /* 7937 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 3837 | /* 7940 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3838 | /* 7944 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 3839 | /* 7948 */ // (sub:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (SUB64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 3840 | /* 7948 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB64rr_ND), |
| 3841 | /* 7953 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 3842 | /* 7959 */ GIR_RootConstrainSelectedInstOperands, |
| 3843 | /* 7960 */ // GIR_Coverage, 22978, |
| 3844 | /* 7960 */ GIR_Done, |
| 3845 | /* 7961 */ // Label 284: @7961 |
| 3846 | /* 7961 */ GIM_Reject, |
| 3847 | /* 7962 */ // Label 276: @7962 |
| 3848 | /* 7962 */ GIM_Reject, |
| 3849 | /* 7963 */ // Label 236: @7963 |
| 3850 | /* 7963 */ GIM_Try, /*On fail goto*//*Label 285*/ GIMT_Encode4(8180), |
| 3851 | /* 7968 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3852 | /* 7971 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 3853 | /* 7974 */ GIM_Try, /*On fail goto*//*Label 286*/ GIMT_Encode4(8036), // Rule ID 2607 // |
| 3854 | /* 7979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 3855 | /* 7982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3856 | /* 7986 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3857 | /* 7990 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3858 | /* 7994 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3859 | /* 7998 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3860 | /* 8001 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3861 | /* 8005 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3862 | /* 8009 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3863 | /* 8011 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3864 | /* 8018 */ // (sub:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3865 | /* 8018 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQrm), |
| 3866 | /* 8021 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3867 | /* 8023 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3868 | /* 8025 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3869 | /* 8029 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3870 | /* 8034 */ GIR_RootConstrainSelectedInstOperands, |
| 3871 | /* 8035 */ // GIR_Coverage, 2607, |
| 3872 | /* 8035 */ GIR_EraseRootFromParent_Done, |
| 3873 | /* 8036 */ // Label 286: @8036 |
| 3874 | /* 8036 */ GIM_Try, /*On fail goto*//*Label 287*/ GIMT_Encode4(8098), // Rule ID 4748 // |
| 3875 | /* 8041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 3876 | /* 8044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3877 | /* 8048 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3878 | /* 8052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3879 | /* 8056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3880 | /* 8060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3881 | /* 8063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3882 | /* 8067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3883 | /* 8071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3884 | /* 8073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3885 | /* 8080 */ // (sub:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3886 | /* 8080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQZ128rm), |
| 3887 | /* 8083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3888 | /* 8085 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3889 | /* 8087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3890 | /* 8091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3891 | /* 8096 */ GIR_RootConstrainSelectedInstOperands, |
| 3892 | /* 8097 */ // GIR_Coverage, 4748, |
| 3893 | /* 8097 */ GIR_EraseRootFromParent_Done, |
| 3894 | /* 8098 */ // Label 287: @8098 |
| 3895 | /* 8098 */ GIM_Try, /*On fail goto*//*Label 288*/ GIMT_Encode4(8125), // Rule ID 2606 // |
| 3896 | /* 8103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 3897 | /* 8106 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3898 | /* 8110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3899 | /* 8114 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3900 | /* 8118 */ // (sub:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPSUBQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 3901 | /* 8118 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQrr), |
| 3902 | /* 8123 */ GIR_RootConstrainSelectedInstOperands, |
| 3903 | /* 8124 */ // GIR_Coverage, 2606, |
| 3904 | /* 8124 */ GIR_Done, |
| 3905 | /* 8125 */ // Label 288: @8125 |
| 3906 | /* 8125 */ GIM_Try, /*On fail goto*//*Label 289*/ GIMT_Encode4(8152), // Rule ID 2608 // |
| 3907 | /* 8130 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 3908 | /* 8133 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3909 | /* 8137 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3910 | /* 8141 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3911 | /* 8145 */ // (sub:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PSUBQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 3912 | /* 8145 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBQrr), |
| 3913 | /* 8150 */ GIR_RootConstrainSelectedInstOperands, |
| 3914 | /* 8151 */ // GIR_Coverage, 2608, |
| 3915 | /* 8151 */ GIR_Done, |
| 3916 | /* 8152 */ // Label 289: @8152 |
| 3917 | /* 8152 */ GIM_Try, /*On fail goto*//*Label 290*/ GIMT_Encode4(8179), // Rule ID 4745 // |
| 3918 | /* 8157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 3919 | /* 8160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3920 | /* 8164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3921 | /* 8168 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3922 | /* 8172 */ // (sub:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPSUBQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 3923 | /* 8172 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQZ128rr), |
| 3924 | /* 8177 */ GIR_RootConstrainSelectedInstOperands, |
| 3925 | /* 8178 */ // GIR_Coverage, 4745, |
| 3926 | /* 8178 */ GIR_Done, |
| 3927 | /* 8179 */ // Label 290: @8179 |
| 3928 | /* 8179 */ GIM_Reject, |
| 3929 | /* 8180 */ // Label 285: @8180 |
| 3930 | /* 8180 */ GIM_Reject, |
| 3931 | /* 8181 */ // Label 237: @8181 |
| 3932 | /* 8181 */ GIM_Try, /*On fail goto*//*Label 291*/ GIMT_Encode4(8398), |
| 3933 | /* 8186 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3934 | /* 8189 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 3935 | /* 8192 */ GIM_Try, /*On fail goto*//*Label 292*/ GIMT_Encode4(8254), // Rule ID 2601 // |
| 3936 | /* 8197 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 3937 | /* 8200 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3938 | /* 8204 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3939 | /* 8208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3940 | /* 8212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3941 | /* 8216 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3942 | /* 8219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3943 | /* 8223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3944 | /* 8227 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3945 | /* 8229 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3946 | /* 8236 */ // (sub:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3947 | /* 8236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDrm), |
| 3948 | /* 8239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3949 | /* 8241 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3950 | /* 8243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3951 | /* 8247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3952 | /* 8252 */ GIR_RootConstrainSelectedInstOperands, |
| 3953 | /* 8253 */ // GIR_Coverage, 2601, |
| 3954 | /* 8253 */ GIR_EraseRootFromParent_Done, |
| 3955 | /* 8254 */ // Label 292: @8254 |
| 3956 | /* 8254 */ GIM_Try, /*On fail goto*//*Label 293*/ GIMT_Encode4(8316), // Rule ID 4775 // |
| 3957 | /* 8259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 3958 | /* 8262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3959 | /* 8266 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 3960 | /* 8270 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 3961 | /* 8274 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 3962 | /* 8278 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 3963 | /* 8281 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 3964 | /* 8285 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 3965 | /* 8289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 3966 | /* 8291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 3967 | /* 8298 */ // (sub:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 3968 | /* 8298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDZ128rm), |
| 3969 | /* 8301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3970 | /* 8303 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 3971 | /* 8305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 3972 | /* 8309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 3973 | /* 8314 */ GIR_RootConstrainSelectedInstOperands, |
| 3974 | /* 8315 */ // GIR_Coverage, 4775, |
| 3975 | /* 8315 */ GIR_EraseRootFromParent_Done, |
| 3976 | /* 8316 */ // Label 293: @8316 |
| 3977 | /* 8316 */ GIM_Try, /*On fail goto*//*Label 294*/ GIMT_Encode4(8343), // Rule ID 2600 // |
| 3978 | /* 8321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 3979 | /* 8324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3980 | /* 8328 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3981 | /* 8332 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3982 | /* 8336 */ // (sub:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPSUBDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 3983 | /* 8336 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDrr), |
| 3984 | /* 8341 */ GIR_RootConstrainSelectedInstOperands, |
| 3985 | /* 8342 */ // GIR_Coverage, 2600, |
| 3986 | /* 8342 */ GIR_Done, |
| 3987 | /* 8343 */ // Label 294: @8343 |
| 3988 | /* 8343 */ GIM_Try, /*On fail goto*//*Label 295*/ GIMT_Encode4(8370), // Rule ID 2602 // |
| 3989 | /* 8348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 3990 | /* 8351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3991 | /* 8355 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3992 | /* 8359 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 3993 | /* 8363 */ // (sub:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PSUBDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 3994 | /* 8363 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBDrr), |
| 3995 | /* 8368 */ GIR_RootConstrainSelectedInstOperands, |
| 3996 | /* 8369 */ // GIR_Coverage, 2602, |
| 3997 | /* 8369 */ GIR_Done, |
| 3998 | /* 8370 */ // Label 295: @8370 |
| 3999 | /* 8370 */ GIM_Try, /*On fail goto*//*Label 296*/ GIMT_Encode4(8397), // Rule ID 4772 // |
| 4000 | /* 8375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4001 | /* 8378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4002 | /* 8382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4003 | /* 8386 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4004 | /* 8390 */ // (sub:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPSUBDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 4005 | /* 8390 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDZ128rr), |
| 4006 | /* 8395 */ GIR_RootConstrainSelectedInstOperands, |
| 4007 | /* 8396 */ // GIR_Coverage, 4772, |
| 4008 | /* 8396 */ GIR_Done, |
| 4009 | /* 8397 */ // Label 296: @8397 |
| 4010 | /* 8397 */ GIM_Reject, |
| 4011 | /* 8398 */ // Label 291: @8398 |
| 4012 | /* 8398 */ GIM_Reject, |
| 4013 | /* 8399 */ // Label 238: @8399 |
| 4014 | /* 8399 */ GIM_Try, /*On fail goto*//*Label 297*/ GIMT_Encode4(8589), |
| 4015 | /* 8404 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 4016 | /* 8407 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 4017 | /* 8410 */ GIM_Try, /*On fail goto*//*Label 298*/ GIMT_Encode4(8472), // Rule ID 2611 // |
| 4018 | /* 8415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 4019 | /* 8418 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4020 | /* 8422 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4021 | /* 8426 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4022 | /* 8430 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4023 | /* 8434 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4024 | /* 8437 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4025 | /* 8441 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4026 | /* 8445 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4027 | /* 8447 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4028 | /* 8454 */ // (sub:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4029 | /* 8454 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQYrm), |
| 4030 | /* 8457 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4031 | /* 8459 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4032 | /* 8461 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4033 | /* 8465 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4034 | /* 8470 */ GIR_RootConstrainSelectedInstOperands, |
| 4035 | /* 8471 */ // GIR_Coverage, 2611, |
| 4036 | /* 8471 */ GIR_EraseRootFromParent_Done, |
| 4037 | /* 8472 */ // Label 298: @8472 |
| 4038 | /* 8472 */ GIM_Try, /*On fail goto*//*Label 299*/ GIMT_Encode4(8534), // Rule ID 4739 // |
| 4039 | /* 8477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4040 | /* 8480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4041 | /* 8484 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4042 | /* 8488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4043 | /* 8492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4044 | /* 8496 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4045 | /* 8499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4046 | /* 8503 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4047 | /* 8507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4048 | /* 8509 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4049 | /* 8516 */ // (sub:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4050 | /* 8516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQZ256rm), |
| 4051 | /* 8519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4052 | /* 8521 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4053 | /* 8523 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4054 | /* 8527 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4055 | /* 8532 */ GIR_RootConstrainSelectedInstOperands, |
| 4056 | /* 8533 */ // GIR_Coverage, 4739, |
| 4057 | /* 8533 */ GIR_EraseRootFromParent_Done, |
| 4058 | /* 8534 */ // Label 299: @8534 |
| 4059 | /* 8534 */ GIM_Try, /*On fail goto*//*Label 300*/ GIMT_Encode4(8561), // Rule ID 2610 // |
| 4060 | /* 8539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 4061 | /* 8542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4062 | /* 8546 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4063 | /* 8550 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4064 | /* 8554 */ // (sub:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPSUBQYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 4065 | /* 8554 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQYrr), |
| 4066 | /* 8559 */ GIR_RootConstrainSelectedInstOperands, |
| 4067 | /* 8560 */ // GIR_Coverage, 2610, |
| 4068 | /* 8560 */ GIR_Done, |
| 4069 | /* 8561 */ // Label 300: @8561 |
| 4070 | /* 8561 */ GIM_Try, /*On fail goto*//*Label 301*/ GIMT_Encode4(8588), // Rule ID 4736 // |
| 4071 | /* 8566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4072 | /* 8569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4073 | /* 8573 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4074 | /* 8577 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4075 | /* 8581 */ // (sub:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPSUBQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 4076 | /* 8581 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQZ256rr), |
| 4077 | /* 8586 */ GIR_RootConstrainSelectedInstOperands, |
| 4078 | /* 8587 */ // GIR_Coverage, 4736, |
| 4079 | /* 8587 */ GIR_Done, |
| 4080 | /* 8588 */ // Label 301: @8588 |
| 4081 | /* 8588 */ GIM_Reject, |
| 4082 | /* 8589 */ // Label 297: @8589 |
| 4083 | /* 8589 */ GIM_Reject, |
| 4084 | /* 8590 */ // Label 239: @8590 |
| 4085 | /* 8590 */ GIM_Try, /*On fail goto*//*Label 302*/ GIMT_Encode4(8807), |
| 4086 | /* 8595 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 4087 | /* 8598 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 4088 | /* 8601 */ GIM_Try, /*On fail goto*//*Label 303*/ GIMT_Encode4(8663), // Rule ID 2595 // |
| 4089 | /* 8606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 4090 | /* 8609 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4091 | /* 8613 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4092 | /* 8617 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4093 | /* 8621 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4094 | /* 8625 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4095 | /* 8628 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4096 | /* 8632 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4097 | /* 8636 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4098 | /* 8638 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4099 | /* 8645 */ // (sub:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4100 | /* 8645 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWrm), |
| 4101 | /* 8648 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4102 | /* 8650 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4103 | /* 8652 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4104 | /* 8656 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4105 | /* 8661 */ GIR_RootConstrainSelectedInstOperands, |
| 4106 | /* 8662 */ // GIR_Coverage, 2595, |
| 4107 | /* 8662 */ GIR_EraseRootFromParent_Done, |
| 4108 | /* 8663 */ // Label 303: @8663 |
| 4109 | /* 8663 */ GIM_Try, /*On fail goto*//*Label 304*/ GIMT_Encode4(8725), // Rule ID 4796 // |
| 4110 | /* 8668 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4111 | /* 8671 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4112 | /* 8675 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4113 | /* 8679 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4114 | /* 8683 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4115 | /* 8687 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4116 | /* 8690 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4117 | /* 8694 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4118 | /* 8698 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4119 | /* 8700 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4120 | /* 8707 */ // (sub:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4121 | /* 8707 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWZ128rm), |
| 4122 | /* 8710 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4123 | /* 8712 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4124 | /* 8714 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4125 | /* 8718 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4126 | /* 8723 */ GIR_RootConstrainSelectedInstOperands, |
| 4127 | /* 8724 */ // GIR_Coverage, 4796, |
| 4128 | /* 8724 */ GIR_EraseRootFromParent_Done, |
| 4129 | /* 8725 */ // Label 304: @8725 |
| 4130 | /* 8725 */ GIM_Try, /*On fail goto*//*Label 305*/ GIMT_Encode4(8752), // Rule ID 2594 // |
| 4131 | /* 8730 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 4132 | /* 8733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4133 | /* 8737 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4134 | /* 8741 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4135 | /* 8745 */ // (sub:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPSUBWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 4136 | /* 8745 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWrr), |
| 4137 | /* 8750 */ GIR_RootConstrainSelectedInstOperands, |
| 4138 | /* 8751 */ // GIR_Coverage, 2594, |
| 4139 | /* 8751 */ GIR_Done, |
| 4140 | /* 8752 */ // Label 305: @8752 |
| 4141 | /* 8752 */ GIM_Try, /*On fail goto*//*Label 306*/ GIMT_Encode4(8779), // Rule ID 2596 // |
| 4142 | /* 8757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 4143 | /* 8760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4144 | /* 8764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4145 | /* 8768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4146 | /* 8772 */ // (sub:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PSUBWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 4147 | /* 8772 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBWrr), |
| 4148 | /* 8777 */ GIR_RootConstrainSelectedInstOperands, |
| 4149 | /* 8778 */ // GIR_Coverage, 2596, |
| 4150 | /* 8778 */ GIR_Done, |
| 4151 | /* 8779 */ // Label 306: @8779 |
| 4152 | /* 8779 */ GIM_Try, /*On fail goto*//*Label 307*/ GIMT_Encode4(8806), // Rule ID 4793 // |
| 4153 | /* 8784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4154 | /* 8787 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4155 | /* 8791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4156 | /* 8795 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4157 | /* 8799 */ // (sub:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPSUBWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 4158 | /* 8799 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWZ128rr), |
| 4159 | /* 8804 */ GIR_RootConstrainSelectedInstOperands, |
| 4160 | /* 8805 */ // GIR_Coverage, 4793, |
| 4161 | /* 8805 */ GIR_Done, |
| 4162 | /* 8806 */ // Label 307: @8806 |
| 4163 | /* 8806 */ GIM_Reject, |
| 4164 | /* 8807 */ // Label 302: @8807 |
| 4165 | /* 8807 */ GIM_Reject, |
| 4166 | /* 8808 */ // Label 240: @8808 |
| 4167 | /* 8808 */ GIM_Try, /*On fail goto*//*Label 308*/ GIMT_Encode4(8998), |
| 4168 | /* 8813 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 4169 | /* 8816 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 4170 | /* 8819 */ GIM_Try, /*On fail goto*//*Label 309*/ GIMT_Encode4(8881), // Rule ID 2605 // |
| 4171 | /* 8824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 4172 | /* 8827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4173 | /* 8831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4174 | /* 8835 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4175 | /* 8839 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4176 | /* 8843 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4177 | /* 8846 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4178 | /* 8850 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4179 | /* 8854 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4180 | /* 8856 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4181 | /* 8863 */ // (sub:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4182 | /* 8863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDYrm), |
| 4183 | /* 8866 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4184 | /* 8868 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4185 | /* 8870 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4186 | /* 8874 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4187 | /* 8879 */ GIR_RootConstrainSelectedInstOperands, |
| 4188 | /* 8880 */ // GIR_Coverage, 2605, |
| 4189 | /* 8880 */ GIR_EraseRootFromParent_Done, |
| 4190 | /* 8881 */ // Label 309: @8881 |
| 4191 | /* 8881 */ GIM_Try, /*On fail goto*//*Label 310*/ GIMT_Encode4(8943), // Rule ID 4766 // |
| 4192 | /* 8886 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4193 | /* 8889 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4194 | /* 8893 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4195 | /* 8897 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4196 | /* 8901 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4197 | /* 8905 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4198 | /* 8908 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4199 | /* 8912 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4200 | /* 8916 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4201 | /* 8918 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4202 | /* 8925 */ // (sub:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4203 | /* 8925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDZ256rm), |
| 4204 | /* 8928 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4205 | /* 8930 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4206 | /* 8932 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4207 | /* 8936 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4208 | /* 8941 */ GIR_RootConstrainSelectedInstOperands, |
| 4209 | /* 8942 */ // GIR_Coverage, 4766, |
| 4210 | /* 8942 */ GIR_EraseRootFromParent_Done, |
| 4211 | /* 8943 */ // Label 310: @8943 |
| 4212 | /* 8943 */ GIM_Try, /*On fail goto*//*Label 311*/ GIMT_Encode4(8970), // Rule ID 2604 // |
| 4213 | /* 8948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 4214 | /* 8951 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4215 | /* 8955 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4216 | /* 8959 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4217 | /* 8963 */ // (sub:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPSUBDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 4218 | /* 8963 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDYrr), |
| 4219 | /* 8968 */ GIR_RootConstrainSelectedInstOperands, |
| 4220 | /* 8969 */ // GIR_Coverage, 2604, |
| 4221 | /* 8969 */ GIR_Done, |
| 4222 | /* 8970 */ // Label 311: @8970 |
| 4223 | /* 8970 */ GIM_Try, /*On fail goto*//*Label 312*/ GIMT_Encode4(8997), // Rule ID 4763 // |
| 4224 | /* 8975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 4225 | /* 8978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4226 | /* 8982 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4227 | /* 8986 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4228 | /* 8990 */ // (sub:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPSUBDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 4229 | /* 8990 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDZ256rr), |
| 4230 | /* 8995 */ GIR_RootConstrainSelectedInstOperands, |
| 4231 | /* 8996 */ // GIR_Coverage, 4763, |
| 4232 | /* 8996 */ GIR_Done, |
| 4233 | /* 8997 */ // Label 312: @8997 |
| 4234 | /* 8997 */ GIM_Reject, |
| 4235 | /* 8998 */ // Label 308: @8998 |
| 4236 | /* 8998 */ GIM_Reject, |
| 4237 | /* 8999 */ // Label 241: @8999 |
| 4238 | /* 8999 */ GIM_Try, /*On fail goto*//*Label 313*/ GIMT_Encode4(9092), |
| 4239 | /* 9004 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 4240 | /* 9007 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 4241 | /* 9010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4242 | /* 9014 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4243 | /* 9018 */ GIM_Try, /*On fail goto*//*Label 314*/ GIMT_Encode4(9072), // Rule ID 4730 // |
| 4244 | /* 9023 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 4245 | /* 9026 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4246 | /* 9030 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4247 | /* 9034 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4248 | /* 9037 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4249 | /* 9041 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4250 | /* 9045 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4251 | /* 9047 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4252 | /* 9054 */ // (sub:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4253 | /* 9054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBQZrm), |
| 4254 | /* 9057 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4255 | /* 9059 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4256 | /* 9061 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4257 | /* 9065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4258 | /* 9070 */ GIR_RootConstrainSelectedInstOperands, |
| 4259 | /* 9071 */ // GIR_Coverage, 4730, |
| 4260 | /* 9071 */ GIR_EraseRootFromParent_Done, |
| 4261 | /* 9072 */ // Label 314: @9072 |
| 4262 | /* 9072 */ GIM_Try, /*On fail goto*//*Label 315*/ GIMT_Encode4(9091), // Rule ID 4727 // |
| 4263 | /* 9077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 4264 | /* 9080 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4265 | /* 9084 */ // (sub:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPSUBQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 4266 | /* 9084 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBQZrr), |
| 4267 | /* 9089 */ GIR_RootConstrainSelectedInstOperands, |
| 4268 | /* 9090 */ // GIR_Coverage, 4727, |
| 4269 | /* 9090 */ GIR_Done, |
| 4270 | /* 9091 */ // Label 315: @9091 |
| 4271 | /* 9091 */ GIM_Reject, |
| 4272 | /* 9092 */ // Label 313: @9092 |
| 4273 | /* 9092 */ GIM_Reject, |
| 4274 | /* 9093 */ // Label 242: @9093 |
| 4275 | /* 9093 */ GIM_Try, /*On fail goto*//*Label 316*/ GIMT_Encode4(9310), |
| 4276 | /* 9098 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 4277 | /* 9101 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 4278 | /* 9104 */ GIM_Try, /*On fail goto*//*Label 317*/ GIMT_Encode4(9166), // Rule ID 2589 // |
| 4279 | /* 9109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 4280 | /* 9112 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4281 | /* 9116 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4282 | /* 9120 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4283 | /* 9124 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4284 | /* 9128 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4285 | /* 9131 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4286 | /* 9135 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4287 | /* 9139 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4288 | /* 9141 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4289 | /* 9148 */ // (sub:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4290 | /* 9148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBrm), |
| 4291 | /* 9151 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4292 | /* 9153 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4293 | /* 9155 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4294 | /* 9159 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4295 | /* 9164 */ GIR_RootConstrainSelectedInstOperands, |
| 4296 | /* 9165 */ // GIR_Coverage, 2589, |
| 4297 | /* 9165 */ GIR_EraseRootFromParent_Done, |
| 4298 | /* 9166 */ // Label 317: @9166 |
| 4299 | /* 9166 */ GIM_Try, /*On fail goto*//*Label 318*/ GIMT_Encode4(9228), // Rule ID 4814 // |
| 4300 | /* 9171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4301 | /* 9174 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4302 | /* 9178 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4303 | /* 9182 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4304 | /* 9186 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4305 | /* 9190 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4306 | /* 9193 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4307 | /* 9197 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4308 | /* 9201 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4309 | /* 9203 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4310 | /* 9210 */ // (sub:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4311 | /* 9210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBZ128rm), |
| 4312 | /* 9213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4313 | /* 9215 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4314 | /* 9217 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4315 | /* 9221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4316 | /* 9226 */ GIR_RootConstrainSelectedInstOperands, |
| 4317 | /* 9227 */ // GIR_Coverage, 4814, |
| 4318 | /* 9227 */ GIR_EraseRootFromParent_Done, |
| 4319 | /* 9228 */ // Label 318: @9228 |
| 4320 | /* 9228 */ GIM_Try, /*On fail goto*//*Label 319*/ GIMT_Encode4(9255), // Rule ID 2588 // |
| 4321 | /* 9233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 4322 | /* 9236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4323 | /* 9240 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4324 | /* 9244 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4325 | /* 9248 */ // (sub:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPSUBBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 4326 | /* 9248 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBrr), |
| 4327 | /* 9253 */ GIR_RootConstrainSelectedInstOperands, |
| 4328 | /* 9254 */ // GIR_Coverage, 2588, |
| 4329 | /* 9254 */ GIR_Done, |
| 4330 | /* 9255 */ // Label 319: @9255 |
| 4331 | /* 9255 */ GIM_Try, /*On fail goto*//*Label 320*/ GIMT_Encode4(9282), // Rule ID 2590 // |
| 4332 | /* 9260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 4333 | /* 9263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4334 | /* 9267 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4335 | /* 9271 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 4336 | /* 9275 */ // (sub:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PSUBBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 4337 | /* 9275 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBBrr), |
| 4338 | /* 9280 */ GIR_RootConstrainSelectedInstOperands, |
| 4339 | /* 9281 */ // GIR_Coverage, 2590, |
| 4340 | /* 9281 */ GIR_Done, |
| 4341 | /* 9282 */ // Label 320: @9282 |
| 4342 | /* 9282 */ GIM_Try, /*On fail goto*//*Label 321*/ GIMT_Encode4(9309), // Rule ID 4811 // |
| 4343 | /* 9287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4344 | /* 9290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4345 | /* 9294 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4346 | /* 9298 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4347 | /* 9302 */ // (sub:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPSUBBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 4348 | /* 9302 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBZ128rr), |
| 4349 | /* 9307 */ GIR_RootConstrainSelectedInstOperands, |
| 4350 | /* 9308 */ // GIR_Coverage, 4811, |
| 4351 | /* 9308 */ GIR_Done, |
| 4352 | /* 9309 */ // Label 321: @9309 |
| 4353 | /* 9309 */ GIM_Reject, |
| 4354 | /* 9310 */ // Label 316: @9310 |
| 4355 | /* 9310 */ GIM_Reject, |
| 4356 | /* 9311 */ // Label 243: @9311 |
| 4357 | /* 9311 */ GIM_Try, /*On fail goto*//*Label 322*/ GIMT_Encode4(9501), |
| 4358 | /* 9316 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 4359 | /* 9319 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 4360 | /* 9322 */ GIM_Try, /*On fail goto*//*Label 323*/ GIMT_Encode4(9384), // Rule ID 2599 // |
| 4361 | /* 9327 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 4362 | /* 9330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4363 | /* 9334 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4364 | /* 9338 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4365 | /* 9342 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4366 | /* 9346 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4367 | /* 9349 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4368 | /* 9353 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4369 | /* 9357 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4370 | /* 9359 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4371 | /* 9366 */ // (sub:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4372 | /* 9366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWYrm), |
| 4373 | /* 9369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4374 | /* 9371 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4375 | /* 9373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4376 | /* 9377 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4377 | /* 9382 */ GIR_RootConstrainSelectedInstOperands, |
| 4378 | /* 9383 */ // GIR_Coverage, 2599, |
| 4379 | /* 9383 */ GIR_EraseRootFromParent_Done, |
| 4380 | /* 9384 */ // Label 323: @9384 |
| 4381 | /* 9384 */ GIM_Try, /*On fail goto*//*Label 324*/ GIMT_Encode4(9446), // Rule ID 4790 // |
| 4382 | /* 9389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4383 | /* 9392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4384 | /* 9396 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4385 | /* 9400 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4386 | /* 9404 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4387 | /* 9408 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4388 | /* 9411 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4389 | /* 9415 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4390 | /* 9419 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4391 | /* 9421 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4392 | /* 9428 */ // (sub:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4393 | /* 9428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWZ256rm), |
| 4394 | /* 9431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4395 | /* 9433 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4396 | /* 9435 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4397 | /* 9439 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4398 | /* 9444 */ GIR_RootConstrainSelectedInstOperands, |
| 4399 | /* 9445 */ // GIR_Coverage, 4790, |
| 4400 | /* 9445 */ GIR_EraseRootFromParent_Done, |
| 4401 | /* 9446 */ // Label 324: @9446 |
| 4402 | /* 9446 */ GIM_Try, /*On fail goto*//*Label 325*/ GIMT_Encode4(9473), // Rule ID 2598 // |
| 4403 | /* 9451 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 4404 | /* 9454 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4405 | /* 9458 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4406 | /* 9462 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4407 | /* 9466 */ // (sub:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPSUBWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 4408 | /* 9466 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWYrr), |
| 4409 | /* 9471 */ GIR_RootConstrainSelectedInstOperands, |
| 4410 | /* 9472 */ // GIR_Coverage, 2598, |
| 4411 | /* 9472 */ GIR_Done, |
| 4412 | /* 9473 */ // Label 325: @9473 |
| 4413 | /* 9473 */ GIM_Try, /*On fail goto*//*Label 326*/ GIMT_Encode4(9500), // Rule ID 4787 // |
| 4414 | /* 9478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4415 | /* 9481 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4416 | /* 9485 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4417 | /* 9489 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4418 | /* 9493 */ // (sub:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPSUBWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 4419 | /* 9493 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWZ256rr), |
| 4420 | /* 9498 */ GIR_RootConstrainSelectedInstOperands, |
| 4421 | /* 9499 */ // GIR_Coverage, 4787, |
| 4422 | /* 9499 */ GIR_Done, |
| 4423 | /* 9500 */ // Label 326: @9500 |
| 4424 | /* 9500 */ GIM_Reject, |
| 4425 | /* 9501 */ // Label 322: @9501 |
| 4426 | /* 9501 */ GIM_Reject, |
| 4427 | /* 9502 */ // Label 244: @9502 |
| 4428 | /* 9502 */ GIM_Try, /*On fail goto*//*Label 327*/ GIMT_Encode4(9595), |
| 4429 | /* 9507 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 4430 | /* 9510 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 4431 | /* 9513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4432 | /* 9517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4433 | /* 9521 */ GIM_Try, /*On fail goto*//*Label 328*/ GIMT_Encode4(9575), // Rule ID 4757 // |
| 4434 | /* 9526 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 4435 | /* 9529 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4436 | /* 9533 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4437 | /* 9537 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4438 | /* 9540 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4439 | /* 9544 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4440 | /* 9548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4441 | /* 9550 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4442 | /* 9557 */ // (sub:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4443 | /* 9557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBDZrm), |
| 4444 | /* 9560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4445 | /* 9562 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4446 | /* 9564 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4447 | /* 9568 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4448 | /* 9573 */ GIR_RootConstrainSelectedInstOperands, |
| 4449 | /* 9574 */ // GIR_Coverage, 4757, |
| 4450 | /* 9574 */ GIR_EraseRootFromParent_Done, |
| 4451 | /* 9575 */ // Label 328: @9575 |
| 4452 | /* 9575 */ GIM_Try, /*On fail goto*//*Label 329*/ GIMT_Encode4(9594), // Rule ID 4754 // |
| 4453 | /* 9580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 4454 | /* 9583 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4455 | /* 9587 */ // (sub:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPSUBDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 4456 | /* 9587 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBDZrr), |
| 4457 | /* 9592 */ GIR_RootConstrainSelectedInstOperands, |
| 4458 | /* 9593 */ // GIR_Coverage, 4754, |
| 4459 | /* 9593 */ GIR_Done, |
| 4460 | /* 9594 */ // Label 329: @9594 |
| 4461 | /* 9594 */ GIM_Reject, |
| 4462 | /* 9595 */ // Label 327: @9595 |
| 4463 | /* 9595 */ GIM_Reject, |
| 4464 | /* 9596 */ // Label 245: @9596 |
| 4465 | /* 9596 */ GIM_Try, /*On fail goto*//*Label 330*/ GIMT_Encode4(9786), |
| 4466 | /* 9601 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 4467 | /* 9604 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 4468 | /* 9607 */ GIM_Try, /*On fail goto*//*Label 331*/ GIMT_Encode4(9669), // Rule ID 2593 // |
| 4469 | /* 9612 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 4470 | /* 9615 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4471 | /* 9619 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4472 | /* 9623 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4473 | /* 9627 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4474 | /* 9631 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4475 | /* 9634 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4476 | /* 9638 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4477 | /* 9642 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4478 | /* 9644 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4479 | /* 9651 */ // (sub:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4480 | /* 9651 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBYrm), |
| 4481 | /* 9654 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4482 | /* 9656 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4483 | /* 9658 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4484 | /* 9662 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4485 | /* 9667 */ GIR_RootConstrainSelectedInstOperands, |
| 4486 | /* 9668 */ // GIR_Coverage, 2593, |
| 4487 | /* 9668 */ GIR_EraseRootFromParent_Done, |
| 4488 | /* 9669 */ // Label 331: @9669 |
| 4489 | /* 9669 */ GIM_Try, /*On fail goto*//*Label 332*/ GIMT_Encode4(9731), // Rule ID 4808 // |
| 4490 | /* 9674 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4491 | /* 9677 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4492 | /* 9681 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4493 | /* 9685 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4494 | /* 9689 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4495 | /* 9693 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4496 | /* 9696 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4497 | /* 9700 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4498 | /* 9704 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4499 | /* 9706 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4500 | /* 9713 */ // (sub:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4501 | /* 9713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBZ256rm), |
| 4502 | /* 9716 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4503 | /* 9718 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4504 | /* 9720 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4505 | /* 9724 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4506 | /* 9729 */ GIR_RootConstrainSelectedInstOperands, |
| 4507 | /* 9730 */ // GIR_Coverage, 4808, |
| 4508 | /* 9730 */ GIR_EraseRootFromParent_Done, |
| 4509 | /* 9731 */ // Label 332: @9731 |
| 4510 | /* 9731 */ GIM_Try, /*On fail goto*//*Label 333*/ GIMT_Encode4(9758), // Rule ID 2592 // |
| 4511 | /* 9736 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 4512 | /* 9739 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4513 | /* 9743 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4514 | /* 9747 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 4515 | /* 9751 */ // (sub:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPSUBBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 4516 | /* 9751 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBYrr), |
| 4517 | /* 9756 */ GIR_RootConstrainSelectedInstOperands, |
| 4518 | /* 9757 */ // GIR_Coverage, 2592, |
| 4519 | /* 9757 */ GIR_Done, |
| 4520 | /* 9758 */ // Label 333: @9758 |
| 4521 | /* 9758 */ GIM_Try, /*On fail goto*//*Label 334*/ GIMT_Encode4(9785), // Rule ID 4805 // |
| 4522 | /* 9763 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 4523 | /* 9766 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4524 | /* 9770 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4525 | /* 9774 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 4526 | /* 9778 */ // (sub:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPSUBBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 4527 | /* 9778 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBZ256rr), |
| 4528 | /* 9783 */ GIR_RootConstrainSelectedInstOperands, |
| 4529 | /* 9784 */ // GIR_Coverage, 4805, |
| 4530 | /* 9784 */ GIR_Done, |
| 4531 | /* 9785 */ // Label 334: @9785 |
| 4532 | /* 9785 */ GIM_Reject, |
| 4533 | /* 9786 */ // Label 330: @9786 |
| 4534 | /* 9786 */ GIM_Reject, |
| 4535 | /* 9787 */ // Label 246: @9787 |
| 4536 | /* 9787 */ GIM_Try, /*On fail goto*//*Label 335*/ GIMT_Encode4(9880), |
| 4537 | /* 9792 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 4538 | /* 9795 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 4539 | /* 9798 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4540 | /* 9802 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4541 | /* 9806 */ GIM_Try, /*On fail goto*//*Label 336*/ GIMT_Encode4(9860), // Rule ID 4784 // |
| 4542 | /* 9811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 4543 | /* 9814 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4544 | /* 9818 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4545 | /* 9822 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4546 | /* 9825 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4547 | /* 9829 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4548 | /* 9833 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4549 | /* 9835 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4550 | /* 9842 */ // (sub:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4551 | /* 9842 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBWZrm), |
| 4552 | /* 9845 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4553 | /* 9847 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4554 | /* 9849 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4555 | /* 9853 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4556 | /* 9858 */ GIR_RootConstrainSelectedInstOperands, |
| 4557 | /* 9859 */ // GIR_Coverage, 4784, |
| 4558 | /* 9859 */ GIR_EraseRootFromParent_Done, |
| 4559 | /* 9860 */ // Label 336: @9860 |
| 4560 | /* 9860 */ GIM_Try, /*On fail goto*//*Label 337*/ GIMT_Encode4(9879), // Rule ID 4781 // |
| 4561 | /* 9865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 4562 | /* 9868 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4563 | /* 9872 */ // (sub:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPSUBWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 4564 | /* 9872 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBWZrr), |
| 4565 | /* 9877 */ GIR_RootConstrainSelectedInstOperands, |
| 4566 | /* 9878 */ // GIR_Coverage, 4781, |
| 4567 | /* 9878 */ GIR_Done, |
| 4568 | /* 9879 */ // Label 337: @9879 |
| 4569 | /* 9879 */ GIM_Reject, |
| 4570 | /* 9880 */ // Label 335: @9880 |
| 4571 | /* 9880 */ GIM_Reject, |
| 4572 | /* 9881 */ // Label 247: @9881 |
| 4573 | /* 9881 */ GIM_Try, /*On fail goto*//*Label 338*/ GIMT_Encode4(9974), |
| 4574 | /* 9886 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 4575 | /* 9889 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 4576 | /* 9892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4577 | /* 9896 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4578 | /* 9900 */ GIM_Try, /*On fail goto*//*Label 339*/ GIMT_Encode4(9954), // Rule ID 4802 // |
| 4579 | /* 9905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 4580 | /* 9908 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4581 | /* 9912 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4582 | /* 9916 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4583 | /* 9919 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4584 | /* 9923 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4585 | /* 9927 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4586 | /* 9929 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4587 | /* 9936 */ // (sub:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4588 | /* 9936 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBBZrm), |
| 4589 | /* 9939 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4590 | /* 9941 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4591 | /* 9943 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4592 | /* 9947 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4593 | /* 9952 */ GIR_RootConstrainSelectedInstOperands, |
| 4594 | /* 9953 */ // GIR_Coverage, 4802, |
| 4595 | /* 9953 */ GIR_EraseRootFromParent_Done, |
| 4596 | /* 9954 */ // Label 339: @9954 |
| 4597 | /* 9954 */ GIM_Try, /*On fail goto*//*Label 340*/ GIMT_Encode4(9973), // Rule ID 4799 // |
| 4598 | /* 9959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 4599 | /* 9962 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 4600 | /* 9966 */ // (sub:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPSUBBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 4601 | /* 9966 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBBZrr), |
| 4602 | /* 9971 */ GIR_RootConstrainSelectedInstOperands, |
| 4603 | /* 9972 */ // GIR_Coverage, 4799, |
| 4604 | /* 9972 */ GIR_Done, |
| 4605 | /* 9973 */ // Label 340: @9973 |
| 4606 | /* 9973 */ GIM_Reject, |
| 4607 | /* 9974 */ // Label 338: @9974 |
| 4608 | /* 9974 */ GIM_Reject, |
| 4609 | /* 9975 */ // Label 248: @9975 |
| 4610 | /* 9975 */ GIM_Reject, |
| 4611 | /* 9976 */ // Label 2: @9976 |
| 4612 | /* 9976 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 353*/ GIMT_Encode4(13392), |
| 4613 | /* 9987 */ /*GILLT_s16*//*Label 341*/ GIMT_Encode4(10071), |
| 4614 | /* 9991 */ /*GILLT_s32*//*Label 342*/ GIMT_Encode4(10366), |
| 4615 | /* 9995 */ /*GILLT_s64*//*Label 343*/ GIMT_Encode4(10661), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 4616 | /* 10011 */ /*GILLT_v2s64*//*Label 344*/ GIMT_Encode4(10964), GIMT_Encode4(0), |
| 4617 | /* 10019 */ /*GILLT_v4s32*//*Label 345*/ GIMT_Encode4(11293), |
| 4618 | /* 10023 */ /*GILLT_v4s64*//*Label 346*/ GIMT_Encode4(11635), GIMT_Encode4(0), |
| 4619 | /* 10031 */ /*GILLT_v8s16*//*Label 347*/ GIMT_Encode4(11952), |
| 4620 | /* 10035 */ /*GILLT_v8s32*//*Label 348*/ GIMT_Encode4(12294), |
| 4621 | /* 10039 */ /*GILLT_v8s64*//*Label 349*/ GIMT_Encode4(12609), GIMT_Encode4(0), GIMT_Encode4(0), |
| 4622 | /* 10051 */ /*GILLT_v16s16*//*Label 350*/ GIMT_Encode4(12765), |
| 4623 | /* 10055 */ /*GILLT_v16s32*//*Label 351*/ GIMT_Encode4(13080), GIMT_Encode4(0), GIMT_Encode4(0), |
| 4624 | /* 10067 */ /*GILLT_v32s16*//*Label 352*/ GIMT_Encode4(13236), |
| 4625 | /* 10071 */ // Label 341: @10071 |
| 4626 | /* 10071 */ GIM_Try, /*On fail goto*//*Label 354*/ GIMT_Encode4(10365), |
| 4627 | /* 10076 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 4628 | /* 10079 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 4629 | /* 10082 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4630 | /* 10086 */ GIM_Try, /*On fail goto*//*Label 355*/ GIMT_Encode4(10150), // Rule ID 23061 // |
| 4631 | /* 10091 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4632 | /* 10095 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4633 | /* 10099 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4634 | /* 10102 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4635 | /* 10106 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 4636 | /* 10110 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 4637 | /* 10114 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4638 | /* 10118 */ // MIs[2] Operand 1 |
| 4639 | /* 10118 */ // No operand predicates |
| 4640 | /* 10118 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 4641 | /* 10120 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4642 | /* 10127 */ // (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) |
| 4643 | /* 10127 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rmi), |
| 4644 | /* 10130 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4645 | /* 10132 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 4646 | /* 10136 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 4647 | /* 10139 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4648 | /* 10142 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 4649 | /* 10148 */ GIR_RootConstrainSelectedInstOperands, |
| 4650 | /* 10149 */ // GIR_Coverage, 23061, |
| 4651 | /* 10149 */ GIR_EraseRootFromParent_Done, |
| 4652 | /* 10150 */ // Label 355: @10150 |
| 4653 | /* 10150 */ GIM_Try, /*On fail goto*//*Label 356*/ GIMT_Encode4(10211), // Rule ID 26140 // |
| 4654 | /* 10155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4655 | /* 10158 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4656 | /* 10162 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4657 | /* 10166 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4658 | /* 10169 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4659 | /* 10173 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 4660 | /* 10177 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4661 | /* 10181 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4662 | /* 10183 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4663 | /* 10190 */ // (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) |
| 4664 | /* 10190 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rm), |
| 4665 | /* 10193 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4666 | /* 10195 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4667 | /* 10197 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4668 | /* 10201 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4669 | /* 10204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4670 | /* 10209 */ GIR_RootConstrainSelectedInstOperands, |
| 4671 | /* 10210 */ // GIR_Coverage, 26140, |
| 4672 | /* 10210 */ GIR_EraseRootFromParent_Done, |
| 4673 | /* 10211 */ // Label 356: @10211 |
| 4674 | /* 10211 */ GIM_Try, /*On fail goto*//*Label 357*/ GIMT_Encode4(10272), // Rule ID 22903 // |
| 4675 | /* 10216 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4676 | /* 10219 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4677 | /* 10223 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4678 | /* 10227 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4679 | /* 10231 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4680 | /* 10234 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4681 | /* 10238 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 4682 | /* 10242 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4683 | /* 10244 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4684 | /* 10251 */ // (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) |
| 4685 | /* 10251 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rm), |
| 4686 | /* 10254 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4687 | /* 10256 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4688 | /* 10258 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4689 | /* 10262 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4690 | /* 10265 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4691 | /* 10270 */ GIR_RootConstrainSelectedInstOperands, |
| 4692 | /* 10271 */ // GIR_Coverage, 22903, |
| 4693 | /* 10271 */ GIR_EraseRootFromParent_Done, |
| 4694 | /* 10272 */ // Label 357: @10272 |
| 4695 | /* 10272 */ GIM_Try, /*On fail goto*//*Label 358*/ GIMT_Encode4(10306), // Rule ID 23058 // |
| 4696 | /* 10277 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4697 | /* 10281 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4698 | /* 10285 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4699 | /* 10289 */ // MIs[1] Operand 1 |
| 4700 | /* 10289 */ // No operand predicates |
| 4701 | /* 10289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4702 | /* 10291 */ // (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (IMUL16rri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 4703 | /* 10291 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL16rri), |
| 4704 | /* 10294 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4705 | /* 10296 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4706 | /* 10298 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 4707 | /* 10301 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4708 | /* 10304 */ GIR_RootConstrainSelectedInstOperands, |
| 4709 | /* 10305 */ // GIR_Coverage, 23058, |
| 4710 | /* 10305 */ GIR_EraseRootFromParent_Done, |
| 4711 | /* 10306 */ // Label 358: @10306 |
| 4712 | /* 10306 */ GIM_Try, /*On fail goto*//*Label 359*/ GIMT_Encode4(10335), // Rule ID 22900 // |
| 4713 | /* 10311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4714 | /* 10314 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4715 | /* 10318 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4716 | /* 10322 */ // (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (IMUL16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 4717 | /* 10322 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL16rr), |
| 4718 | /* 10327 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 4719 | /* 10333 */ GIR_RootConstrainSelectedInstOperands, |
| 4720 | /* 10334 */ // GIR_Coverage, 22900, |
| 4721 | /* 10334 */ GIR_Done, |
| 4722 | /* 10335 */ // Label 359: @10335 |
| 4723 | /* 10335 */ GIM_Try, /*On fail goto*//*Label 360*/ GIMT_Encode4(10364), // Rule ID 22990 // |
| 4724 | /* 10340 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 4725 | /* 10343 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4726 | /* 10347 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 4727 | /* 10351 */ // (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (IMUL16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 4728 | /* 10351 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL16rr_ND), |
| 4729 | /* 10356 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 4730 | /* 10362 */ GIR_RootConstrainSelectedInstOperands, |
| 4731 | /* 10363 */ // GIR_Coverage, 22990, |
| 4732 | /* 10363 */ GIR_Done, |
| 4733 | /* 10364 */ // Label 360: @10364 |
| 4734 | /* 10364 */ GIM_Reject, |
| 4735 | /* 10365 */ // Label 354: @10365 |
| 4736 | /* 10365 */ GIM_Reject, |
| 4737 | /* 10366 */ // Label 342: @10366 |
| 4738 | /* 10366 */ GIM_Try, /*On fail goto*//*Label 361*/ GIMT_Encode4(10660), |
| 4739 | /* 10371 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 4740 | /* 10374 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 4741 | /* 10377 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 4742 | /* 10381 */ GIM_Try, /*On fail goto*//*Label 362*/ GIMT_Encode4(10445), // Rule ID 23062 // |
| 4743 | /* 10386 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4744 | /* 10390 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4745 | /* 10394 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4746 | /* 10397 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4747 | /* 10401 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 4748 | /* 10405 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 4749 | /* 10409 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4750 | /* 10413 */ // MIs[2] Operand 1 |
| 4751 | /* 10413 */ // No operand predicates |
| 4752 | /* 10413 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 4753 | /* 10415 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4754 | /* 10422 */ // (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) |
| 4755 | /* 10422 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rmi), |
| 4756 | /* 10425 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4757 | /* 10427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 4758 | /* 10431 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 4759 | /* 10434 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4760 | /* 10437 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 4761 | /* 10443 */ GIR_RootConstrainSelectedInstOperands, |
| 4762 | /* 10444 */ // GIR_Coverage, 23062, |
| 4763 | /* 10444 */ GIR_EraseRootFromParent_Done, |
| 4764 | /* 10445 */ // Label 362: @10445 |
| 4765 | /* 10445 */ GIM_Try, /*On fail goto*//*Label 363*/ GIMT_Encode4(10506), // Rule ID 26141 // |
| 4766 | /* 10450 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4767 | /* 10453 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4768 | /* 10457 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4769 | /* 10461 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4770 | /* 10464 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4771 | /* 10468 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 4772 | /* 10472 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 4773 | /* 10476 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4774 | /* 10478 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4775 | /* 10485 */ // (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) |
| 4776 | /* 10485 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rm), |
| 4777 | /* 10488 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4778 | /* 10490 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4779 | /* 10492 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4780 | /* 10496 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4781 | /* 10499 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4782 | /* 10504 */ GIR_RootConstrainSelectedInstOperands, |
| 4783 | /* 10505 */ // GIR_Coverage, 26141, |
| 4784 | /* 10505 */ GIR_EraseRootFromParent_Done, |
| 4785 | /* 10506 */ // Label 363: @10506 |
| 4786 | /* 10506 */ GIM_Try, /*On fail goto*//*Label 364*/ GIMT_Encode4(10567), // Rule ID 22904 // |
| 4787 | /* 10511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4788 | /* 10514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 4789 | /* 10518 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4790 | /* 10522 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4791 | /* 10526 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4792 | /* 10529 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4793 | /* 10533 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 4794 | /* 10537 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4795 | /* 10539 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4796 | /* 10546 */ // (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) |
| 4797 | /* 10546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rm), |
| 4798 | /* 10549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4799 | /* 10551 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4800 | /* 10553 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4801 | /* 10557 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4802 | /* 10560 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4803 | /* 10565 */ GIR_RootConstrainSelectedInstOperands, |
| 4804 | /* 10566 */ // GIR_Coverage, 22904, |
| 4805 | /* 10566 */ GIR_EraseRootFromParent_Done, |
| 4806 | /* 10567 */ // Label 364: @10567 |
| 4807 | /* 10567 */ GIM_Try, /*On fail goto*//*Label 365*/ GIMT_Encode4(10601), // Rule ID 23059 // |
| 4808 | /* 10572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 4809 | /* 10576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4810 | /* 10580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4811 | /* 10584 */ // MIs[1] Operand 1 |
| 4812 | /* 10584 */ // No operand predicates |
| 4813 | /* 10584 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4814 | /* 10586 */ // (mul:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (IMUL32rri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 4815 | /* 10586 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL32rri), |
| 4816 | /* 10589 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4817 | /* 10591 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4818 | /* 10593 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 4819 | /* 10596 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4820 | /* 10599 */ GIR_RootConstrainSelectedInstOperands, |
| 4821 | /* 10600 */ // GIR_Coverage, 23059, |
| 4822 | /* 10600 */ GIR_EraseRootFromParent_Done, |
| 4823 | /* 10601 */ // Label 365: @10601 |
| 4824 | /* 10601 */ GIM_Try, /*On fail goto*//*Label 366*/ GIMT_Encode4(10630), // Rule ID 22901 // |
| 4825 | /* 10606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4826 | /* 10609 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 4827 | /* 10613 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 4828 | /* 10617 */ // (mul:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (IMUL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 4829 | /* 10617 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL32rr), |
| 4830 | /* 10622 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 4831 | /* 10628 */ GIR_RootConstrainSelectedInstOperands, |
| 4832 | /* 10629 */ // GIR_Coverage, 22901, |
| 4833 | /* 10629 */ GIR_Done, |
| 4834 | /* 10630 */ // Label 366: @10630 |
| 4835 | /* 10630 */ GIM_Try, /*On fail goto*//*Label 367*/ GIMT_Encode4(10659), // Rule ID 22991 // |
| 4836 | /* 10635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 4837 | /* 10638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 4838 | /* 10642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 4839 | /* 10646 */ // (mul:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (IMUL32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 4840 | /* 10646 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL32rr_ND), |
| 4841 | /* 10651 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 4842 | /* 10657 */ GIR_RootConstrainSelectedInstOperands, |
| 4843 | /* 10658 */ // GIR_Coverage, 22991, |
| 4844 | /* 10658 */ GIR_Done, |
| 4845 | /* 10659 */ // Label 367: @10659 |
| 4846 | /* 10659 */ GIM_Reject, |
| 4847 | /* 10660 */ // Label 361: @10660 |
| 4848 | /* 10660 */ GIM_Reject, |
| 4849 | /* 10661 */ // Label 343: @10661 |
| 4850 | /* 10661 */ GIM_Try, /*On fail goto*//*Label 368*/ GIMT_Encode4(10963), |
| 4851 | /* 10666 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 4852 | /* 10669 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 4853 | /* 10672 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4854 | /* 10676 */ GIM_Try, /*On fail goto*//*Label 369*/ GIMT_Encode4(10744), // Rule ID 23063 // |
| 4855 | /* 10681 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4856 | /* 10685 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4857 | /* 10689 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4858 | /* 10692 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4859 | /* 10696 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4860 | /* 10700 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 4861 | /* 10704 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4862 | /* 10708 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 4863 | /* 10712 */ // MIs[2] Operand 1 |
| 4864 | /* 10712 */ // No operand predicates |
| 4865 | /* 10712 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 4866 | /* 10714 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4867 | /* 10721 */ // (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) |
| 4868 | /* 10721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rmi32), |
| 4869 | /* 10724 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4870 | /* 10726 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 4871 | /* 10730 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // src2 |
| 4872 | /* 10733 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4873 | /* 10736 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 4874 | /* 10742 */ GIR_RootConstrainSelectedInstOperands, |
| 4875 | /* 10743 */ // GIR_Coverage, 23063, |
| 4876 | /* 10743 */ GIR_EraseRootFromParent_Done, |
| 4877 | /* 10744 */ // Label 369: @10744 |
| 4878 | /* 10744 */ GIM_Try, /*On fail goto*//*Label 370*/ GIMT_Encode4(10805), // Rule ID 26142 // |
| 4879 | /* 10749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4880 | /* 10752 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4881 | /* 10756 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4882 | /* 10760 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4883 | /* 10763 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4884 | /* 10767 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4885 | /* 10771 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4886 | /* 10775 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4887 | /* 10777 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4888 | /* 10784 */ // (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) |
| 4889 | /* 10784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rm), |
| 4890 | /* 10787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4891 | /* 10789 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4892 | /* 10791 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4893 | /* 10795 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4894 | /* 10798 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4895 | /* 10803 */ GIR_RootConstrainSelectedInstOperands, |
| 4896 | /* 10804 */ // GIR_Coverage, 26142, |
| 4897 | /* 10804 */ GIR_EraseRootFromParent_Done, |
| 4898 | /* 10805 */ // Label 370: @10805 |
| 4899 | /* 10805 */ GIM_Try, /*On fail goto*//*Label 371*/ GIMT_Encode4(10866), // Rule ID 22905 // |
| 4900 | /* 10810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4901 | /* 10813 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4902 | /* 10817 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4903 | /* 10821 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4904 | /* 10825 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4905 | /* 10828 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4906 | /* 10832 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4907 | /* 10836 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4908 | /* 10838 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4909 | /* 10845 */ // (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) |
| 4910 | /* 10845 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rm), |
| 4911 | /* 10848 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4912 | /* 10850 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4913 | /* 10852 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4914 | /* 10856 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4915 | /* 10859 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4916 | /* 10864 */ GIR_RootConstrainSelectedInstOperands, |
| 4917 | /* 10865 */ // GIR_Coverage, 22905, |
| 4918 | /* 10865 */ GIR_EraseRootFromParent_Done, |
| 4919 | /* 10866 */ // Label 371: @10866 |
| 4920 | /* 10866 */ GIM_Try, /*On fail goto*//*Label 372*/ GIMT_Encode4(10904), // Rule ID 23060 // |
| 4921 | /* 10871 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4922 | /* 10875 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4923 | /* 10879 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 4924 | /* 10883 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 4925 | /* 10887 */ // MIs[1] Operand 1 |
| 4926 | /* 10887 */ // No operand predicates |
| 4927 | /* 10887 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4928 | /* 10889 */ // (mul:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (IMUL64rri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 4929 | /* 10889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::IMUL64rri32), |
| 4930 | /* 10892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4931 | /* 10894 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 4932 | /* 10896 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 4933 | /* 10899 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 4934 | /* 10902 */ GIR_RootConstrainSelectedInstOperands, |
| 4935 | /* 10903 */ // GIR_Coverage, 23060, |
| 4936 | /* 10903 */ GIR_EraseRootFromParent_Done, |
| 4937 | /* 10904 */ // Label 372: @10904 |
| 4938 | /* 10904 */ GIM_Try, /*On fail goto*//*Label 373*/ GIMT_Encode4(10933), // Rule ID 22902 // |
| 4939 | /* 10909 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 4940 | /* 10912 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4941 | /* 10916 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4942 | /* 10920 */ // (mul:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (IMUL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 4943 | /* 10920 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL64rr), |
| 4944 | /* 10925 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 4945 | /* 10931 */ GIR_RootConstrainSelectedInstOperands, |
| 4946 | /* 10932 */ // GIR_Coverage, 22902, |
| 4947 | /* 10932 */ GIR_Done, |
| 4948 | /* 10933 */ // Label 373: @10933 |
| 4949 | /* 10933 */ GIM_Try, /*On fail goto*//*Label 374*/ GIMT_Encode4(10962), // Rule ID 22992 // |
| 4950 | /* 10938 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 4951 | /* 10941 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4952 | /* 10945 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 4953 | /* 10949 */ // (mul:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (IMUL64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 4954 | /* 10949 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::IMUL64rr_ND), |
| 4955 | /* 10954 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 4956 | /* 10960 */ GIR_RootConstrainSelectedInstOperands, |
| 4957 | /* 10961 */ // GIR_Coverage, 22992, |
| 4958 | /* 10961 */ GIR_Done, |
| 4959 | /* 10962 */ // Label 374: @10962 |
| 4960 | /* 10962 */ GIM_Reject, |
| 4961 | /* 10963 */ // Label 368: @10963 |
| 4962 | /* 10963 */ GIM_Reject, |
| 4963 | /* 10964 */ // Label 344: @10964 |
| 4964 | /* 10964 */ GIM_Try, /*On fail goto*//*Label 375*/ GIMT_Encode4(11292), |
| 4965 | /* 10969 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4966 | /* 10972 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 4967 | /* 10975 */ GIM_Try, /*On fail goto*//*Label 376*/ GIMT_Encode4(11037), // Rule ID 23907 // |
| 4968 | /* 10980 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 4969 | /* 10983 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4970 | /* 10987 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4971 | /* 10991 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4972 | /* 10995 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4973 | /* 10998 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4974 | /* 11002 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4975 | /* 11006 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4976 | /* 11010 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4977 | /* 11012 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4978 | /* 11019 */ // (mul:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMULLQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 4979 | /* 11019 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ128rm), |
| 4980 | /* 11022 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4981 | /* 11024 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 4982 | /* 11026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 4983 | /* 11030 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4984 | /* 11035 */ GIR_RootConstrainSelectedInstOperands, |
| 4985 | /* 11036 */ // GIR_Coverage, 23907, |
| 4986 | /* 11036 */ GIR_EraseRootFromParent_Done, |
| 4987 | /* 11037 */ // Label 376: @11037 |
| 4988 | /* 11037 */ GIM_Try, /*On fail goto*//*Label 377*/ GIMT_Encode4(11099), // Rule ID 5027 // |
| 4989 | /* 11042 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 4990 | /* 11045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4991 | /* 11049 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 4992 | /* 11053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 4993 | /* 11057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 4994 | /* 11061 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4995 | /* 11064 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 4996 | /* 11068 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 4997 | /* 11072 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4998 | /* 11074 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 4999 | /* 11081 */ // (mul:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5000 | /* 11081 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ128rm), |
| 5001 | /* 11084 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5002 | /* 11086 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5003 | /* 11088 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5004 | /* 11092 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5005 | /* 11097 */ GIR_RootConstrainSelectedInstOperands, |
| 5006 | /* 11098 */ // GIR_Coverage, 5027, |
| 5007 | /* 11098 */ GIR_EraseRootFromParent_Done, |
| 5008 | /* 11099 */ // Label 377: @11099 |
| 5009 | /* 11099 */ GIM_Try, /*On fail goto*//*Label 378*/ GIMT_Encode4(11126), // Rule ID 5024 // |
| 5010 | /* 11104 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5011 | /* 11107 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5012 | /* 11111 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5013 | /* 11115 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5014 | /* 11119 */ // (mul:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMULLQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 5015 | /* 11119 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ128rr), |
| 5016 | /* 11124 */ GIR_RootConstrainSelectedInstOperands, |
| 5017 | /* 11125 */ // GIR_Coverage, 5024, |
| 5018 | /* 11125 */ GIR_Done, |
| 5019 | /* 11126 */ // Label 378: @11126 |
| 5020 | /* 11126 */ GIM_Try, /*On fail goto*//*Label 379*/ GIMT_Encode4(11291), // Rule ID 20007 // |
| 5021 | /* 11131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoVLX), |
| 5022 | /* 11134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 5023 | /* 11138 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5024 | /* 11142 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5025 | /* 11146 */ // (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] }) |
| 5026 | /* 11146 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 5027 | /* 11149 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 5028 | /* 11153 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5029 | /* 11158 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 5030 | /* 11160 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 5031 | /* 11163 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 5032 | /* 11167 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5033 | /* 11172 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 5034 | /* 11175 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 5035 | /* 11179 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 5036 | /* 11182 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 5037 | /* 11187 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5038 | /* 11192 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 5039 | /* 11197 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 5040 | /* 11200 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 5041 | /* 11204 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5042 | /* 11209 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 5043 | /* 11211 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 5044 | /* 11214 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 5045 | /* 11218 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5046 | /* 11223 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 5047 | /* 11226 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 5048 | /* 11230 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 5049 | /* 11233 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 5050 | /* 11238 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5051 | /* 11243 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 5052 | /* 11248 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 5053 | /* 11251 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrr), |
| 5054 | /* 11255 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5055 | /* 11260 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 5056 | /* 11263 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 5057 | /* 11266 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 5058 | /* 11268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5059 | /* 11271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5060 | /* 11273 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 5061 | /* 11280 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 5062 | /* 11285 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5063 | /* 11290 */ // GIR_Coverage, 20007, |
| 5064 | /* 11290 */ GIR_EraseRootFromParent_Done, |
| 5065 | /* 11291 */ // Label 379: @11291 |
| 5066 | /* 11291 */ GIM_Reject, |
| 5067 | /* 11292 */ // Label 375: @11292 |
| 5068 | /* 11292 */ GIM_Reject, |
| 5069 | /* 11293 */ // Label 345: @11293 |
| 5070 | /* 11293 */ GIM_Try, /*On fail goto*//*Label 380*/ GIMT_Encode4(11634), |
| 5071 | /* 11298 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 5072 | /* 11301 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 5073 | /* 11304 */ GIM_Try, /*On fail goto*//*Label 381*/ GIMT_Encode4(11366), // Rule ID 23610 // |
| 5074 | /* 11309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 5075 | /* 11312 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5076 | /* 11316 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5077 | /* 11320 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5078 | /* 11324 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5079 | /* 11327 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5080 | /* 11331 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5081 | /* 11335 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5082 | /* 11339 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5083 | /* 11341 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5084 | /* 11348 */ // (mul:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMULLDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5085 | /* 11348 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDrm), |
| 5086 | /* 11351 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5087 | /* 11353 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5088 | /* 11355 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5089 | /* 11359 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5090 | /* 11364 */ GIR_RootConstrainSelectedInstOperands, |
| 5091 | /* 11365 */ // GIR_Coverage, 23610, |
| 5092 | /* 11365 */ GIR_EraseRootFromParent_Done, |
| 5093 | /* 11366 */ // Label 381: @11366 |
| 5094 | /* 11366 */ GIM_Try, /*On fail goto*//*Label 382*/ GIMT_Encode4(11428), // Rule ID 23880 // |
| 5095 | /* 11371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5096 | /* 11374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5097 | /* 11378 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5098 | /* 11382 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5099 | /* 11386 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5100 | /* 11389 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5101 | /* 11393 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5102 | /* 11397 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5103 | /* 11401 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5104 | /* 11403 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5105 | /* 11410 */ // (mul:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMULLDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5106 | /* 11410 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ128rm), |
| 5107 | /* 11413 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5108 | /* 11415 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5109 | /* 11417 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5110 | /* 11421 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5111 | /* 11426 */ GIR_RootConstrainSelectedInstOperands, |
| 5112 | /* 11427 */ // GIR_Coverage, 23880, |
| 5113 | /* 11427 */ GIR_EraseRootFromParent_Done, |
| 5114 | /* 11428 */ // Label 382: @11428 |
| 5115 | /* 11428 */ GIM_Try, /*On fail goto*//*Label 383*/ GIMT_Encode4(11490), // Rule ID 3240 // |
| 5116 | /* 11433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 5117 | /* 11436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5118 | /* 11440 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5119 | /* 11444 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5120 | /* 11448 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5121 | /* 11452 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5122 | /* 11455 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5123 | /* 11459 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5124 | /* 11463 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5125 | /* 11465 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5126 | /* 11472 */ // (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5127 | /* 11472 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDrm), |
| 5128 | /* 11475 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5129 | /* 11477 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5130 | /* 11479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5131 | /* 11483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5132 | /* 11488 */ GIR_RootConstrainSelectedInstOperands, |
| 5133 | /* 11489 */ // GIR_Coverage, 3240, |
| 5134 | /* 11489 */ GIR_EraseRootFromParent_Done, |
| 5135 | /* 11490 */ // Label 383: @11490 |
| 5136 | /* 11490 */ GIM_Try, /*On fail goto*//*Label 384*/ GIMT_Encode4(11552), // Rule ID 4982 // |
| 5137 | /* 11495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5138 | /* 11498 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5139 | /* 11502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5140 | /* 11506 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5141 | /* 11510 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5142 | /* 11514 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5143 | /* 11517 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5144 | /* 11521 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5145 | /* 11525 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5146 | /* 11527 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5147 | /* 11534 */ // (mul:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5148 | /* 11534 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ128rm), |
| 5149 | /* 11537 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5150 | /* 11539 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5151 | /* 11541 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5152 | /* 11545 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5153 | /* 11550 */ GIR_RootConstrainSelectedInstOperands, |
| 5154 | /* 11551 */ // GIR_Coverage, 4982, |
| 5155 | /* 11551 */ GIR_EraseRootFromParent_Done, |
| 5156 | /* 11552 */ // Label 384: @11552 |
| 5157 | /* 11552 */ GIM_Try, /*On fail goto*//*Label 385*/ GIMT_Encode4(11579), // Rule ID 3239 // |
| 5158 | /* 11557 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 5159 | /* 11560 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5160 | /* 11564 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5161 | /* 11568 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5162 | /* 11572 */ // (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMULLDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 5163 | /* 11572 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDrr), |
| 5164 | /* 11577 */ GIR_RootConstrainSelectedInstOperands, |
| 5165 | /* 11578 */ // GIR_Coverage, 3239, |
| 5166 | /* 11578 */ GIR_Done, |
| 5167 | /* 11579 */ // Label 385: @11579 |
| 5168 | /* 11579 */ GIM_Try, /*On fail goto*//*Label 386*/ GIMT_Encode4(11606), // Rule ID 3247 // |
| 5169 | /* 11584 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 5170 | /* 11587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5171 | /* 11591 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5172 | /* 11595 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5173 | /* 11599 */ // (mul:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMULLDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 5174 | /* 11599 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMULLDrr), |
| 5175 | /* 11604 */ GIR_RootConstrainSelectedInstOperands, |
| 5176 | /* 11605 */ // GIR_Coverage, 3247, |
| 5177 | /* 11605 */ GIR_Done, |
| 5178 | /* 11606 */ // Label 386: @11606 |
| 5179 | /* 11606 */ GIM_Try, /*On fail goto*//*Label 387*/ GIMT_Encode4(11633), // Rule ID 4979 // |
| 5180 | /* 11611 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5181 | /* 11614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5182 | /* 11618 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5183 | /* 11622 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5184 | /* 11626 */ // (mul:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMULLDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 5185 | /* 11626 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ128rr), |
| 5186 | /* 11631 */ GIR_RootConstrainSelectedInstOperands, |
| 5187 | /* 11632 */ // GIR_Coverage, 4979, |
| 5188 | /* 11632 */ GIR_Done, |
| 5189 | /* 11633 */ // Label 387: @11633 |
| 5190 | /* 11633 */ GIM_Reject, |
| 5191 | /* 11634 */ // Label 380: @11634 |
| 5192 | /* 11634 */ GIM_Reject, |
| 5193 | /* 11635 */ // Label 346: @11635 |
| 5194 | /* 11635 */ GIM_Try, /*On fail goto*//*Label 388*/ GIMT_Encode4(11951), |
| 5195 | /* 11640 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 5196 | /* 11643 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 5197 | /* 11646 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5198 | /* 11650 */ GIM_Try, /*On fail goto*//*Label 389*/ GIMT_Encode4(11708), // Rule ID 23901 // |
| 5199 | /* 11655 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5200 | /* 11658 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5201 | /* 11662 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5202 | /* 11666 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5203 | /* 11669 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5204 | /* 11673 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5205 | /* 11677 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5206 | /* 11681 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5207 | /* 11683 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5208 | /* 11690 */ // (mul:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMULLQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5209 | /* 11690 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ256rm), |
| 5210 | /* 11693 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5211 | /* 11695 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5212 | /* 11697 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5213 | /* 11701 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5214 | /* 11706 */ GIR_RootConstrainSelectedInstOperands, |
| 5215 | /* 11707 */ // GIR_Coverage, 23901, |
| 5216 | /* 11707 */ GIR_EraseRootFromParent_Done, |
| 5217 | /* 11708 */ // Label 389: @11708 |
| 5218 | /* 11708 */ GIM_Try, /*On fail goto*//*Label 390*/ GIMT_Encode4(11766), // Rule ID 5018 // |
| 5219 | /* 11713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5220 | /* 11716 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5221 | /* 11720 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5222 | /* 11724 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5223 | /* 11728 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5224 | /* 11731 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5225 | /* 11735 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5226 | /* 11739 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5227 | /* 11741 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5228 | /* 11748 */ // (mul:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5229 | /* 11748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ256rm), |
| 5230 | /* 11751 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5231 | /* 11753 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5232 | /* 11755 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5233 | /* 11759 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5234 | /* 11764 */ GIR_RootConstrainSelectedInstOperands, |
| 5235 | /* 11765 */ // GIR_Coverage, 5018, |
| 5236 | /* 11765 */ GIR_EraseRootFromParent_Done, |
| 5237 | /* 11766 */ // Label 390: @11766 |
| 5238 | /* 11766 */ GIM_Try, /*On fail goto*//*Label 391*/ GIMT_Encode4(11789), // Rule ID 5015 // |
| 5239 | /* 11771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 5240 | /* 11774 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5241 | /* 11778 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5242 | /* 11782 */ // (mul:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMULLQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 5243 | /* 11782 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLQZ256rr), |
| 5244 | /* 11787 */ GIR_RootConstrainSelectedInstOperands, |
| 5245 | /* 11788 */ // GIR_Coverage, 5015, |
| 5246 | /* 11788 */ GIR_Done, |
| 5247 | /* 11789 */ // Label 391: @11789 |
| 5248 | /* 11789 */ GIM_Try, /*On fail goto*//*Label 392*/ GIMT_Encode4(11950), // Rule ID 20005 // |
| 5249 | /* 11794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoVLX), |
| 5250 | /* 11797 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5251 | /* 11801 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5252 | /* 11805 */ // (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] }) |
| 5253 | /* 11805 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 5254 | /* 11808 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 5255 | /* 11812 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5256 | /* 11817 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 5257 | /* 11819 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 5258 | /* 11822 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 5259 | /* 11826 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5260 | /* 11831 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 5261 | /* 11834 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 5262 | /* 11838 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 5263 | /* 11841 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 5264 | /* 11846 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5265 | /* 11851 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 5266 | /* 11856 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 5267 | /* 11859 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 5268 | /* 11863 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5269 | /* 11868 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 5270 | /* 11870 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 5271 | /* 11873 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 5272 | /* 11877 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5273 | /* 11882 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 5274 | /* 11885 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 5275 | /* 11889 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 5276 | /* 11892 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 5277 | /* 11897 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5278 | /* 11902 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 5279 | /* 11907 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 5280 | /* 11910 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrr), |
| 5281 | /* 11914 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5282 | /* 11919 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 5283 | /* 11922 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 5284 | /* 11925 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 5285 | /* 11927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5286 | /* 11930 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5287 | /* 11932 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 5288 | /* 11939 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 5289 | /* 11944 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 5290 | /* 11949 */ // GIR_Coverage, 20005, |
| 5291 | /* 11949 */ GIR_EraseRootFromParent_Done, |
| 5292 | /* 11950 */ // Label 392: @11950 |
| 5293 | /* 11950 */ GIM_Reject, |
| 5294 | /* 11951 */ // Label 388: @11951 |
| 5295 | /* 11951 */ GIM_Reject, |
| 5296 | /* 11952 */ // Label 347: @11952 |
| 5297 | /* 11952 */ GIM_Try, /*On fail goto*//*Label 393*/ GIMT_Encode4(12293), |
| 5298 | /* 11957 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 5299 | /* 11960 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 5300 | /* 11963 */ GIM_Try, /*On fail goto*//*Label 394*/ GIMT_Encode4(12025), // Rule ID 23535 // |
| 5301 | /* 11968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 5302 | /* 11971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5303 | /* 11975 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5304 | /* 11979 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5305 | /* 11983 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5306 | /* 11986 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5307 | /* 11990 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5308 | /* 11994 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5309 | /* 11998 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5310 | /* 12000 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5311 | /* 12007 */ // (mul:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMULLWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5312 | /* 12007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWrm), |
| 5313 | /* 12010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5314 | /* 12012 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5315 | /* 12014 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5316 | /* 12018 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5317 | /* 12023 */ GIR_RootConstrainSelectedInstOperands, |
| 5318 | /* 12024 */ // GIR_Coverage, 23535, |
| 5319 | /* 12024 */ GIR_EraseRootFromParent_Done, |
| 5320 | /* 12025 */ // Label 394: @12025 |
| 5321 | /* 12025 */ GIM_Try, /*On fail goto*//*Label 395*/ GIMT_Encode4(12087), // Rule ID 23892 // |
| 5322 | /* 12030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5323 | /* 12033 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5324 | /* 12037 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5325 | /* 12041 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5326 | /* 12045 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5327 | /* 12048 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5328 | /* 12052 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5329 | /* 12056 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5330 | /* 12060 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5331 | /* 12062 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5332 | /* 12069 */ // (mul:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMULLWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5333 | /* 12069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ128rm), |
| 5334 | /* 12072 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5335 | /* 12074 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5336 | /* 12076 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5337 | /* 12080 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5338 | /* 12085 */ GIR_RootConstrainSelectedInstOperands, |
| 5339 | /* 12086 */ // GIR_Coverage, 23892, |
| 5340 | /* 12086 */ GIR_EraseRootFromParent_Done, |
| 5341 | /* 12087 */ // Label 395: @12087 |
| 5342 | /* 12087 */ GIM_Try, /*On fail goto*//*Label 396*/ GIMT_Encode4(12149), // Rule ID 2571 // |
| 5343 | /* 12092 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 5344 | /* 12095 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5345 | /* 12099 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5346 | /* 12103 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5347 | /* 12107 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5348 | /* 12111 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5349 | /* 12114 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5350 | /* 12118 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5351 | /* 12122 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5352 | /* 12124 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5353 | /* 12131 */ // (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5354 | /* 12131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWrm), |
| 5355 | /* 12134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5356 | /* 12136 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5357 | /* 12138 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5358 | /* 12142 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5359 | /* 12147 */ GIR_RootConstrainSelectedInstOperands, |
| 5360 | /* 12148 */ // GIR_Coverage, 2571, |
| 5361 | /* 12148 */ GIR_EraseRootFromParent_Done, |
| 5362 | /* 12149 */ // Label 396: @12149 |
| 5363 | /* 12149 */ GIM_Try, /*On fail goto*//*Label 397*/ GIMT_Encode4(12211), // Rule ID 5003 // |
| 5364 | /* 12154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5365 | /* 12157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5366 | /* 12161 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5367 | /* 12165 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5368 | /* 12169 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5369 | /* 12173 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5370 | /* 12176 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5371 | /* 12180 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5372 | /* 12184 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5373 | /* 12186 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5374 | /* 12193 */ // (mul:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5375 | /* 12193 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ128rm), |
| 5376 | /* 12196 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5377 | /* 12198 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5378 | /* 12200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5379 | /* 12204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5380 | /* 12209 */ GIR_RootConstrainSelectedInstOperands, |
| 5381 | /* 12210 */ // GIR_Coverage, 5003, |
| 5382 | /* 12210 */ GIR_EraseRootFromParent_Done, |
| 5383 | /* 12211 */ // Label 397: @12211 |
| 5384 | /* 12211 */ GIM_Try, /*On fail goto*//*Label 398*/ GIMT_Encode4(12238), // Rule ID 2570 // |
| 5385 | /* 12216 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 5386 | /* 12219 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5387 | /* 12223 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5388 | /* 12227 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5389 | /* 12231 */ // (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMULLWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 5390 | /* 12231 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWrr), |
| 5391 | /* 12236 */ GIR_RootConstrainSelectedInstOperands, |
| 5392 | /* 12237 */ // GIR_Coverage, 2570, |
| 5393 | /* 12237 */ GIR_Done, |
| 5394 | /* 12238 */ // Label 398: @12238 |
| 5395 | /* 12238 */ GIM_Try, /*On fail goto*//*Label 399*/ GIMT_Encode4(12265), // Rule ID 2572 // |
| 5396 | /* 12243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 5397 | /* 12246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5398 | /* 12250 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5399 | /* 12254 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 5400 | /* 12258 */ // (mul:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMULLWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 5401 | /* 12258 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMULLWrr), |
| 5402 | /* 12263 */ GIR_RootConstrainSelectedInstOperands, |
| 5403 | /* 12264 */ // GIR_Coverage, 2572, |
| 5404 | /* 12264 */ GIR_Done, |
| 5405 | /* 12265 */ // Label 399: @12265 |
| 5406 | /* 12265 */ GIM_Try, /*On fail goto*//*Label 400*/ GIMT_Encode4(12292), // Rule ID 5000 // |
| 5407 | /* 12270 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5408 | /* 12273 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5409 | /* 12277 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5410 | /* 12281 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 5411 | /* 12285 */ // (mul:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMULLWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 5412 | /* 12285 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ128rr), |
| 5413 | /* 12290 */ GIR_RootConstrainSelectedInstOperands, |
| 5414 | /* 12291 */ // GIR_Coverage, 5000, |
| 5415 | /* 12291 */ GIR_Done, |
| 5416 | /* 12292 */ // Label 400: @12292 |
| 5417 | /* 12292 */ GIM_Reject, |
| 5418 | /* 12293 */ // Label 393: @12293 |
| 5419 | /* 12293 */ GIM_Reject, |
| 5420 | /* 12294 */ // Label 348: @12294 |
| 5421 | /* 12294 */ GIM_Try, /*On fail goto*//*Label 401*/ GIMT_Encode4(12608), |
| 5422 | /* 12299 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 5423 | /* 12302 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 5424 | /* 12305 */ GIM_Try, /*On fail goto*//*Label 402*/ GIMT_Encode4(12367), // Rule ID 23612 // |
| 5425 | /* 12310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 5426 | /* 12313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5427 | /* 12317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5428 | /* 12321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5429 | /* 12325 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5430 | /* 12328 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5431 | /* 12332 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5432 | /* 12336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5433 | /* 12340 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5434 | /* 12342 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5435 | /* 12349 */ // (mul:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMULLDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5436 | /* 12349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDYrm), |
| 5437 | /* 12352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5438 | /* 12354 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5439 | /* 12356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5440 | /* 12360 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5441 | /* 12365 */ GIR_RootConstrainSelectedInstOperands, |
| 5442 | /* 12366 */ // GIR_Coverage, 23612, |
| 5443 | /* 12366 */ GIR_EraseRootFromParent_Done, |
| 5444 | /* 12367 */ // Label 402: @12367 |
| 5445 | /* 12367 */ GIM_Try, /*On fail goto*//*Label 403*/ GIMT_Encode4(12429), // Rule ID 23874 // |
| 5446 | /* 12372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5447 | /* 12375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5448 | /* 12379 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5449 | /* 12383 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5450 | /* 12387 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5451 | /* 12390 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5452 | /* 12394 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5453 | /* 12398 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5454 | /* 12402 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5455 | /* 12404 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5456 | /* 12411 */ // (mul:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMULLDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5457 | /* 12411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ256rm), |
| 5458 | /* 12414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5459 | /* 12416 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5460 | /* 12418 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5461 | /* 12422 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5462 | /* 12427 */ GIR_RootConstrainSelectedInstOperands, |
| 5463 | /* 12428 */ // GIR_Coverage, 23874, |
| 5464 | /* 12428 */ GIR_EraseRootFromParent_Done, |
| 5465 | /* 12429 */ // Label 403: @12429 |
| 5466 | /* 12429 */ GIM_Try, /*On fail goto*//*Label 404*/ GIMT_Encode4(12491), // Rule ID 3244 // |
| 5467 | /* 12434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 5468 | /* 12437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5469 | /* 12441 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5470 | /* 12445 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5471 | /* 12449 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5472 | /* 12453 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5473 | /* 12456 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5474 | /* 12460 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5475 | /* 12464 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5476 | /* 12466 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5477 | /* 12473 */ // (mul:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5478 | /* 12473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDYrm), |
| 5479 | /* 12476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5480 | /* 12478 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5481 | /* 12480 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5482 | /* 12484 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5483 | /* 12489 */ GIR_RootConstrainSelectedInstOperands, |
| 5484 | /* 12490 */ // GIR_Coverage, 3244, |
| 5485 | /* 12490 */ GIR_EraseRootFromParent_Done, |
| 5486 | /* 12491 */ // Label 404: @12491 |
| 5487 | /* 12491 */ GIM_Try, /*On fail goto*//*Label 405*/ GIMT_Encode4(12553), // Rule ID 4973 // |
| 5488 | /* 12496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5489 | /* 12499 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5490 | /* 12503 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5491 | /* 12507 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5492 | /* 12511 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5493 | /* 12515 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5494 | /* 12518 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5495 | /* 12522 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5496 | /* 12526 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5497 | /* 12528 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5498 | /* 12535 */ // (mul:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5499 | /* 12535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ256rm), |
| 5500 | /* 12538 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5501 | /* 12540 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5502 | /* 12542 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5503 | /* 12546 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5504 | /* 12551 */ GIR_RootConstrainSelectedInstOperands, |
| 5505 | /* 12552 */ // GIR_Coverage, 4973, |
| 5506 | /* 12552 */ GIR_EraseRootFromParent_Done, |
| 5507 | /* 12553 */ // Label 405: @12553 |
| 5508 | /* 12553 */ GIM_Try, /*On fail goto*//*Label 406*/ GIMT_Encode4(12580), // Rule ID 3243 // |
| 5509 | /* 12558 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 5510 | /* 12561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5511 | /* 12565 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5512 | /* 12569 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5513 | /* 12573 */ // (mul:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMULLDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 5514 | /* 12573 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDYrr), |
| 5515 | /* 12578 */ GIR_RootConstrainSelectedInstOperands, |
| 5516 | /* 12579 */ // GIR_Coverage, 3243, |
| 5517 | /* 12579 */ GIR_Done, |
| 5518 | /* 12580 */ // Label 406: @12580 |
| 5519 | /* 12580 */ GIM_Try, /*On fail goto*//*Label 407*/ GIMT_Encode4(12607), // Rule ID 4970 // |
| 5520 | /* 12585 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 5521 | /* 12588 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5522 | /* 12592 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5523 | /* 12596 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5524 | /* 12600 */ // (mul:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMULLDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 5525 | /* 12600 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDZ256rr), |
| 5526 | /* 12605 */ GIR_RootConstrainSelectedInstOperands, |
| 5527 | /* 12606 */ // GIR_Coverage, 4970, |
| 5528 | /* 12606 */ GIR_Done, |
| 5529 | /* 12607 */ // Label 407: @12607 |
| 5530 | /* 12607 */ GIM_Reject, |
| 5531 | /* 12608 */ // Label 401: @12608 |
| 5532 | /* 12608 */ GIM_Reject, |
| 5533 | /* 12609 */ // Label 349: @12609 |
| 5534 | /* 12609 */ GIM_Try, /*On fail goto*//*Label 408*/ GIMT_Encode4(12764), |
| 5535 | /* 12614 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 5536 | /* 12617 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 5537 | /* 12620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5538 | /* 12624 */ GIM_Try, /*On fail goto*//*Label 409*/ GIMT_Encode4(12682), // Rule ID 23895 // |
| 5539 | /* 12629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 5540 | /* 12632 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5541 | /* 12636 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5542 | /* 12640 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5543 | /* 12643 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5544 | /* 12647 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5545 | /* 12651 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5546 | /* 12655 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5547 | /* 12657 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5548 | /* 12664 */ // (mul:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMULLQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5549 | /* 12664 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrm), |
| 5550 | /* 12667 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5551 | /* 12669 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5552 | /* 12671 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5553 | /* 12675 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5554 | /* 12680 */ GIR_RootConstrainSelectedInstOperands, |
| 5555 | /* 12681 */ // GIR_Coverage, 23895, |
| 5556 | /* 12681 */ GIR_EraseRootFromParent_Done, |
| 5557 | /* 12682 */ // Label 409: @12682 |
| 5558 | /* 12682 */ GIM_Try, /*On fail goto*//*Label 410*/ GIMT_Encode4(12740), // Rule ID 5009 // |
| 5559 | /* 12687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 5560 | /* 12690 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5561 | /* 12694 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5562 | /* 12698 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5563 | /* 12702 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5564 | /* 12705 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5565 | /* 12709 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5566 | /* 12713 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5567 | /* 12715 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5568 | /* 12722 */ // (mul:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5569 | /* 12722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrm), |
| 5570 | /* 12725 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5571 | /* 12727 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5572 | /* 12729 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5573 | /* 12733 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5574 | /* 12738 */ GIR_RootConstrainSelectedInstOperands, |
| 5575 | /* 12739 */ // GIR_Coverage, 5009, |
| 5576 | /* 12739 */ GIR_EraseRootFromParent_Done, |
| 5577 | /* 12740 */ // Label 410: @12740 |
| 5578 | /* 12740 */ GIM_Try, /*On fail goto*//*Label 411*/ GIMT_Encode4(12763), // Rule ID 5006 // |
| 5579 | /* 12745 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 5580 | /* 12748 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5581 | /* 12752 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5582 | /* 12756 */ // (mul:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMULLQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 5583 | /* 12756 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLQZrr), |
| 5584 | /* 12761 */ GIR_RootConstrainSelectedInstOperands, |
| 5585 | /* 12762 */ // GIR_Coverage, 5006, |
| 5586 | /* 12762 */ GIR_Done, |
| 5587 | /* 12763 */ // Label 411: @12763 |
| 5588 | /* 12763 */ GIM_Reject, |
| 5589 | /* 12764 */ // Label 408: @12764 |
| 5590 | /* 12764 */ GIM_Reject, |
| 5591 | /* 12765 */ // Label 350: @12765 |
| 5592 | /* 12765 */ GIM_Try, /*On fail goto*//*Label 412*/ GIMT_Encode4(13079), |
| 5593 | /* 12770 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 5594 | /* 12773 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 5595 | /* 12776 */ GIM_Try, /*On fail goto*//*Label 413*/ GIMT_Encode4(12838), // Rule ID 23537 // |
| 5596 | /* 12781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 5597 | /* 12784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5598 | /* 12788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5599 | /* 12792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5600 | /* 12796 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5601 | /* 12799 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5602 | /* 12803 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5603 | /* 12807 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5604 | /* 12811 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5605 | /* 12813 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5606 | /* 12820 */ // (mul:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMULLWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5607 | /* 12820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWYrm), |
| 5608 | /* 12823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5609 | /* 12825 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5610 | /* 12827 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5611 | /* 12831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5612 | /* 12836 */ GIR_RootConstrainSelectedInstOperands, |
| 5613 | /* 12837 */ // GIR_Coverage, 23537, |
| 5614 | /* 12837 */ GIR_EraseRootFromParent_Done, |
| 5615 | /* 12838 */ // Label 413: @12838 |
| 5616 | /* 12838 */ GIM_Try, /*On fail goto*//*Label 414*/ GIMT_Encode4(12900), // Rule ID 23889 // |
| 5617 | /* 12843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5618 | /* 12846 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5619 | /* 12850 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5620 | /* 12854 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5621 | /* 12858 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5622 | /* 12861 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5623 | /* 12865 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5624 | /* 12869 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5625 | /* 12873 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5626 | /* 12875 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5627 | /* 12882 */ // (mul:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMULLWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5628 | /* 12882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ256rm), |
| 5629 | /* 12885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5630 | /* 12887 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5631 | /* 12889 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5632 | /* 12893 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5633 | /* 12898 */ GIR_RootConstrainSelectedInstOperands, |
| 5634 | /* 12899 */ // GIR_Coverage, 23889, |
| 5635 | /* 12899 */ GIR_EraseRootFromParent_Done, |
| 5636 | /* 12900 */ // Label 414: @12900 |
| 5637 | /* 12900 */ GIM_Try, /*On fail goto*//*Label 415*/ GIMT_Encode4(12962), // Rule ID 2575 // |
| 5638 | /* 12905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 5639 | /* 12908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5640 | /* 12912 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5641 | /* 12916 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5642 | /* 12920 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5643 | /* 12924 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5644 | /* 12927 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5645 | /* 12931 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5646 | /* 12935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5647 | /* 12937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5648 | /* 12944 */ // (mul:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5649 | /* 12944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWYrm), |
| 5650 | /* 12947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5651 | /* 12949 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5652 | /* 12951 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5653 | /* 12955 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5654 | /* 12960 */ GIR_RootConstrainSelectedInstOperands, |
| 5655 | /* 12961 */ // GIR_Coverage, 2575, |
| 5656 | /* 12961 */ GIR_EraseRootFromParent_Done, |
| 5657 | /* 12962 */ // Label 415: @12962 |
| 5658 | /* 12962 */ GIM_Try, /*On fail goto*//*Label 416*/ GIMT_Encode4(13024), // Rule ID 4997 // |
| 5659 | /* 12967 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5660 | /* 12970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5661 | /* 12974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5662 | /* 12978 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5663 | /* 12982 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5664 | /* 12986 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5665 | /* 12989 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5666 | /* 12993 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5667 | /* 12997 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5668 | /* 12999 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5669 | /* 13006 */ // (mul:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5670 | /* 13006 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ256rm), |
| 5671 | /* 13009 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5672 | /* 13011 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5673 | /* 13013 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5674 | /* 13017 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5675 | /* 13022 */ GIR_RootConstrainSelectedInstOperands, |
| 5676 | /* 13023 */ // GIR_Coverage, 4997, |
| 5677 | /* 13023 */ GIR_EraseRootFromParent_Done, |
| 5678 | /* 13024 */ // Label 416: @13024 |
| 5679 | /* 13024 */ GIM_Try, /*On fail goto*//*Label 417*/ GIMT_Encode4(13051), // Rule ID 2574 // |
| 5680 | /* 13029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 5681 | /* 13032 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5682 | /* 13036 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5683 | /* 13040 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 5684 | /* 13044 */ // (mul:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMULLWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 5685 | /* 13044 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWYrr), |
| 5686 | /* 13049 */ GIR_RootConstrainSelectedInstOperands, |
| 5687 | /* 13050 */ // GIR_Coverage, 2574, |
| 5688 | /* 13050 */ GIR_Done, |
| 5689 | /* 13051 */ // Label 417: @13051 |
| 5690 | /* 13051 */ GIM_Try, /*On fail goto*//*Label 418*/ GIMT_Encode4(13078), // Rule ID 4994 // |
| 5691 | /* 13056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 5692 | /* 13059 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5693 | /* 13063 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5694 | /* 13067 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 5695 | /* 13071 */ // (mul:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMULLWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 5696 | /* 13071 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWZ256rr), |
| 5697 | /* 13076 */ GIR_RootConstrainSelectedInstOperands, |
| 5698 | /* 13077 */ // GIR_Coverage, 4994, |
| 5699 | /* 13077 */ GIR_Done, |
| 5700 | /* 13078 */ // Label 418: @13078 |
| 5701 | /* 13078 */ GIM_Reject, |
| 5702 | /* 13079 */ // Label 412: @13079 |
| 5703 | /* 13079 */ GIM_Reject, |
| 5704 | /* 13080 */ // Label 351: @13080 |
| 5705 | /* 13080 */ GIM_Try, /*On fail goto*//*Label 419*/ GIMT_Encode4(13235), |
| 5706 | /* 13085 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 5707 | /* 13088 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 5708 | /* 13091 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5709 | /* 13095 */ GIM_Try, /*On fail goto*//*Label 420*/ GIMT_Encode4(13153), // Rule ID 23868 // |
| 5710 | /* 13100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 5711 | /* 13103 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5712 | /* 13107 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5713 | /* 13111 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5714 | /* 13114 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5715 | /* 13118 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5716 | /* 13122 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5717 | /* 13126 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5718 | /* 13128 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5719 | /* 13135 */ // (mul:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMULLDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5720 | /* 13135 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZrm), |
| 5721 | /* 13138 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5722 | /* 13140 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5723 | /* 13142 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5724 | /* 13146 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5725 | /* 13151 */ GIR_RootConstrainSelectedInstOperands, |
| 5726 | /* 13152 */ // GIR_Coverage, 23868, |
| 5727 | /* 13152 */ GIR_EraseRootFromParent_Done, |
| 5728 | /* 13153 */ // Label 420: @13153 |
| 5729 | /* 13153 */ GIM_Try, /*On fail goto*//*Label 421*/ GIMT_Encode4(13211), // Rule ID 4964 // |
| 5730 | /* 13158 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 5731 | /* 13161 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5732 | /* 13165 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5733 | /* 13169 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5734 | /* 13173 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5735 | /* 13176 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5736 | /* 13180 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5737 | /* 13184 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5738 | /* 13186 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5739 | /* 13193 */ // (mul:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5740 | /* 13193 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLDZrm), |
| 5741 | /* 13196 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5742 | /* 13198 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5743 | /* 13200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5744 | /* 13204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5745 | /* 13209 */ GIR_RootConstrainSelectedInstOperands, |
| 5746 | /* 13210 */ // GIR_Coverage, 4964, |
| 5747 | /* 13210 */ GIR_EraseRootFromParent_Done, |
| 5748 | /* 13211 */ // Label 421: @13211 |
| 5749 | /* 13211 */ GIM_Try, /*On fail goto*//*Label 422*/ GIMT_Encode4(13234), // Rule ID 4961 // |
| 5750 | /* 13216 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 5751 | /* 13219 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5752 | /* 13223 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5753 | /* 13227 */ // (mul:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMULLDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 5754 | /* 13227 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLDZrr), |
| 5755 | /* 13232 */ GIR_RootConstrainSelectedInstOperands, |
| 5756 | /* 13233 */ // GIR_Coverage, 4961, |
| 5757 | /* 13233 */ GIR_Done, |
| 5758 | /* 13234 */ // Label 422: @13234 |
| 5759 | /* 13234 */ GIM_Reject, |
| 5760 | /* 13235 */ // Label 419: @13235 |
| 5761 | /* 13235 */ GIM_Reject, |
| 5762 | /* 13236 */ // Label 352: @13236 |
| 5763 | /* 13236 */ GIM_Try, /*On fail goto*//*Label 423*/ GIMT_Encode4(13391), |
| 5764 | /* 13241 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 5765 | /* 13244 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 5766 | /* 13247 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5767 | /* 13251 */ GIM_Try, /*On fail goto*//*Label 424*/ GIMT_Encode4(13309), // Rule ID 23886 // |
| 5768 | /* 13256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 5769 | /* 13259 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5770 | /* 13263 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5771 | /* 13267 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5772 | /* 13270 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5773 | /* 13274 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5774 | /* 13278 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5775 | /* 13282 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5776 | /* 13284 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5777 | /* 13291 */ // (mul:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMULLWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5778 | /* 13291 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZrm), |
| 5779 | /* 13294 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5780 | /* 13296 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5781 | /* 13298 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5782 | /* 13302 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5783 | /* 13307 */ GIR_RootConstrainSelectedInstOperands, |
| 5784 | /* 13308 */ // GIR_Coverage, 23886, |
| 5785 | /* 13308 */ GIR_EraseRootFromParent_Done, |
| 5786 | /* 13309 */ // Label 424: @13309 |
| 5787 | /* 13309 */ GIM_Try, /*On fail goto*//*Label 425*/ GIMT_Encode4(13367), // Rule ID 4991 // |
| 5788 | /* 13314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 5789 | /* 13317 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5790 | /* 13321 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5791 | /* 13325 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5792 | /* 13329 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5793 | /* 13332 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 5794 | /* 13336 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5795 | /* 13340 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5796 | /* 13342 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5797 | /* 13349 */ // (mul:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULLWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 5798 | /* 13349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULLWZrm), |
| 5799 | /* 13352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5800 | /* 13354 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5801 | /* 13356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5802 | /* 13360 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5803 | /* 13365 */ GIR_RootConstrainSelectedInstOperands, |
| 5804 | /* 13366 */ // GIR_Coverage, 4991, |
| 5805 | /* 13366 */ GIR_EraseRootFromParent_Done, |
| 5806 | /* 13367 */ // Label 425: @13367 |
| 5807 | /* 13367 */ GIM_Try, /*On fail goto*//*Label 426*/ GIMT_Encode4(13390), // Rule ID 4988 // |
| 5808 | /* 13372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 5809 | /* 13375 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5810 | /* 13379 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 5811 | /* 13383 */ // (mul:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMULLWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 5812 | /* 13383 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULLWZrr), |
| 5813 | /* 13388 */ GIR_RootConstrainSelectedInstOperands, |
| 5814 | /* 13389 */ // GIR_Coverage, 4988, |
| 5815 | /* 13389 */ GIR_Done, |
| 5816 | /* 13390 */ // Label 426: @13390 |
| 5817 | /* 13390 */ GIM_Reject, |
| 5818 | /* 13391 */ // Label 423: @13391 |
| 5819 | /* 13391 */ GIM_Reject, |
| 5820 | /* 13392 */ // Label 353: @13392 |
| 5821 | /* 13392 */ GIM_Reject, |
| 5822 | /* 13393 */ // Label 3: @13393 |
| 5823 | /* 13393 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(25), /*)*//*default:*//*Label 450*/ GIMT_Encode4(23468), |
| 5824 | /* 13404 */ /*GILLT_s1*//*Label 427*/ GIMT_Encode4(13504), |
| 5825 | /* 13408 */ /*GILLT_s8*//*Label 428*/ GIMT_Encode4(13850), |
| 5826 | /* 13412 */ /*GILLT_s16*//*Label 429*/ GIMT_Encode4(14121), |
| 5827 | /* 13416 */ /*GILLT_s32*//*Label 430*/ GIMT_Encode4(14684), |
| 5828 | /* 13420 */ /*GILLT_s64*//*Label 431*/ GIMT_Encode4(16374), GIMT_Encode4(0), GIMT_Encode4(0), |
| 5829 | /* 13432 */ /*GILLT_v2s1*//*Label 432*/ GIMT_Encode4(17942), |
| 5830 | /* 13436 */ /*GILLT_v2s64*//*Label 433*/ GIMT_Encode4(18288), |
| 5831 | /* 13440 */ /*GILLT_v4s1*//*Label 434*/ GIMT_Encode4(18630), |
| 5832 | /* 13444 */ /*GILLT_v4s32*//*Label 435*/ GIMT_Encode4(18976), |
| 5833 | /* 13448 */ /*GILLT_v4s64*//*Label 436*/ GIMT_Encode4(19318), |
| 5834 | /* 13452 */ /*GILLT_v8s1*//*Label 437*/ GIMT_Encode4(19784), |
| 5835 | /* 13456 */ /*GILLT_v8s16*//*Label 438*/ GIMT_Encode4(20282), |
| 5836 | /* 13460 */ /*GILLT_v8s32*//*Label 439*/ GIMT_Encode4(20624), |
| 5837 | /* 13464 */ /*GILLT_v8s64*//*Label 440*/ GIMT_Encode4(21090), |
| 5838 | /* 13468 */ /*GILLT_v16s1*//*Label 441*/ GIMT_Encode4(21246), |
| 5839 | /* 13472 */ /*GILLT_v16s8*//*Label 442*/ GIMT_Encode4(21406), |
| 5840 | /* 13476 */ /*GILLT_v16s16*//*Label 443*/ GIMT_Encode4(21748), |
| 5841 | /* 13480 */ /*GILLT_v16s32*//*Label 444*/ GIMT_Encode4(22214), |
| 5842 | /* 13484 */ /*GILLT_v32s1*//*Label 445*/ GIMT_Encode4(22370), |
| 5843 | /* 13488 */ /*GILLT_v32s8*//*Label 446*/ GIMT_Encode4(22530), |
| 5844 | /* 13492 */ /*GILLT_v32s16*//*Label 447*/ GIMT_Encode4(22996), |
| 5845 | /* 13496 */ /*GILLT_v64s1*//*Label 448*/ GIMT_Encode4(23152), |
| 5846 | /* 13500 */ /*GILLT_v64s8*//*Label 449*/ GIMT_Encode4(23312), |
| 5847 | /* 13504 */ // Label 427: @13504 |
| 5848 | /* 13504 */ GIM_Try, /*On fail goto*//*Label 451*/ GIMT_Encode4(13849), |
| 5849 | /* 13509 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s1, |
| 5850 | /* 13512 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s1, |
| 5851 | /* 13515 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 5852 | /* 13519 */ GIM_Try, /*On fail goto*//*Label 452*/ GIMT_Encode4(13639), // Rule ID 19486 // |
| 5853 | /* 13524 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5854 | /* 13528 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 5855 | /* 13532 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 5856 | /* 13536 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 5857 | /* 13540 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 5858 | /* 13545 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5859 | /* 13549 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 5860 | /* 13555 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 5861 | /* 13557 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 5862 | /* 13561 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 5863 | /* 13563 */ // (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] }) |
| 5864 | /* 13563 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 5865 | /* 13566 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5866 | /* 13570 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5867 | /* 13575 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 5868 | /* 13579 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 5869 | /* 13584 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 5870 | /* 13587 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5871 | /* 13591 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5872 | /* 13596 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 5873 | /* 13600 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 5874 | /* 13605 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 5875 | /* 13608 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 5876 | /* 13612 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5877 | /* 13617 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 5878 | /* 13620 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 5879 | /* 13623 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 5880 | /* 13625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5881 | /* 13628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5882 | /* 13630 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 5883 | /* 13633 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 5884 | /* 13638 */ // GIR_Coverage, 19486, |
| 5885 | /* 13638 */ GIR_EraseRootFromParent_Done, |
| 5886 | /* 13639 */ // Label 452: @13639 |
| 5887 | /* 13639 */ GIM_Try, /*On fail goto*//*Label 453*/ GIMT_Encode4(13759), // Rule ID 25449 // |
| 5888 | /* 13644 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 5889 | /* 13648 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5890 | /* 13652 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 5891 | /* 13656 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 5892 | /* 13660 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 5893 | /* 13664 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 5894 | /* 13669 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5895 | /* 13673 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 5896 | /* 13679 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 5897 | /* 13681 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 5898 | /* 13683 */ // (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] }) |
| 5899 | /* 13683 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 5900 | /* 13686 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5901 | /* 13690 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5902 | /* 13695 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 5903 | /* 13699 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 5904 | /* 13704 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 5905 | /* 13707 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5906 | /* 13711 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5907 | /* 13716 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 5908 | /* 13720 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 5909 | /* 13725 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 5910 | /* 13728 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 5911 | /* 13732 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5912 | /* 13737 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 5913 | /* 13740 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 5914 | /* 13743 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 5915 | /* 13745 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5916 | /* 13748 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5917 | /* 13750 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 5918 | /* 13753 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 5919 | /* 13758 */ // GIR_Coverage, 25449, |
| 5920 | /* 13758 */ GIR_EraseRootFromParent_Done, |
| 5921 | /* 13759 */ // Label 453: @13759 |
| 5922 | /* 13759 */ GIM_Try, /*On fail goto*//*Label 454*/ GIMT_Encode4(13848), // Rule ID 19482 // |
| 5923 | /* 13764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 5924 | /* 13768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 5925 | /* 13772 */ // (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] }) |
| 5926 | /* 13772 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 5927 | /* 13775 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5928 | /* 13779 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5929 | /* 13784 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 5930 | /* 13788 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 5931 | /* 13793 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 5932 | /* 13796 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5933 | /* 13800 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5934 | /* 13805 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 5935 | /* 13809 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 5936 | /* 13814 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 5937 | /* 13817 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 5938 | /* 13821 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 5939 | /* 13826 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 5940 | /* 13829 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 5941 | /* 13832 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 5942 | /* 13834 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 5943 | /* 13837 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5944 | /* 13839 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 5945 | /* 13842 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 5946 | /* 13847 */ // GIR_Coverage, 19482, |
| 5947 | /* 13847 */ GIR_EraseRootFromParent_Done, |
| 5948 | /* 13848 */ // Label 454: @13848 |
| 5949 | /* 13848 */ GIM_Reject, |
| 5950 | /* 13849 */ // Label 451: @13849 |
| 5951 | /* 13849 */ GIM_Reject, |
| 5952 | /* 13850 */ // Label 428: @13850 |
| 5953 | /* 13850 */ GIM_Try, /*On fail goto*//*Label 455*/ GIMT_Encode4(14120), |
| 5954 | /* 13855 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 5955 | /* 13858 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 5956 | /* 13861 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 5957 | /* 13865 */ GIM_Try, /*On fail goto*//*Label 456*/ GIMT_Encode4(13926), // Rule ID 26151 // |
| 5958 | /* 13870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5959 | /* 13873 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 5960 | /* 13877 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5961 | /* 13881 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5962 | /* 13884 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5963 | /* 13888 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 5964 | /* 13892 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 5965 | /* 13896 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5966 | /* 13898 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5967 | /* 13905 */ // (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) |
| 5968 | /* 13905 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8rm), |
| 5969 | /* 13908 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5970 | /* 13910 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 5971 | /* 13912 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5972 | /* 13916 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5973 | /* 13919 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5974 | /* 13924 */ GIR_RootConstrainSelectedInstOperands, |
| 5975 | /* 13925 */ // GIR_Coverage, 26151, |
| 5976 | /* 13925 */ GIR_EraseRootFromParent_Done, |
| 5977 | /* 13926 */ // Label 456: @13926 |
| 5978 | /* 13926 */ GIM_Try, /*On fail goto*//*Label 457*/ GIMT_Encode4(13987), // Rule ID 22934 // |
| 5979 | /* 13931 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 5980 | /* 13934 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 5981 | /* 13938 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 5982 | /* 13942 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 5983 | /* 13946 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 5984 | /* 13949 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 5985 | /* 13953 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 5986 | /* 13957 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5987 | /* 13959 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 5988 | /* 13966 */ // (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) |
| 5989 | /* 13966 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8rm), |
| 5990 | /* 13969 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 5991 | /* 13971 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 5992 | /* 13973 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 5993 | /* 13977 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 5994 | /* 13980 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 5995 | /* 13985 */ GIR_RootConstrainSelectedInstOperands, |
| 5996 | /* 13986 */ // GIR_Coverage, 22934, |
| 5997 | /* 13986 */ GIR_EraseRootFromParent_Done, |
| 5998 | /* 13987 */ // Label 457: @13987 |
| 5999 | /* 13987 */ GIM_Try, /*On fail goto*//*Label 458*/ GIMT_Encode4(14024), // Rule ID 22938 // |
| 6000 | /* 13992 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6001 | /* 13995 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6002 | /* 13999 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6003 | /* 14003 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6004 | /* 14007 */ // MIs[1] Operand 1 |
| 6005 | /* 14007 */ // No operand predicates |
| 6006 | /* 14007 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6007 | /* 14009 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (AND8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 6008 | /* 14009 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8ri), |
| 6009 | /* 14012 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6010 | /* 14014 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6011 | /* 14016 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6012 | /* 14019 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6013 | /* 14022 */ GIR_RootConstrainSelectedInstOperands, |
| 6014 | /* 14023 */ // GIR_Coverage, 22938, |
| 6015 | /* 14023 */ GIR_EraseRootFromParent_Done, |
| 6016 | /* 14024 */ // Label 458: @14024 |
| 6017 | /* 14024 */ GIM_Try, /*On fail goto*//*Label 459*/ GIMT_Encode4(14061), // Rule ID 23028 // |
| 6018 | /* 14029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6019 | /* 14032 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6020 | /* 14036 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6021 | /* 14040 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6022 | /* 14044 */ // MIs[1] Operand 1 |
| 6023 | /* 14044 */ // No operand predicates |
| 6024 | /* 14044 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6025 | /* 14046 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (AND8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 6026 | /* 14046 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8ri_ND), |
| 6027 | /* 14049 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6028 | /* 14051 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6029 | /* 14053 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6030 | /* 14056 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6031 | /* 14059 */ GIR_RootConstrainSelectedInstOperands, |
| 6032 | /* 14060 */ // GIR_Coverage, 23028, |
| 6033 | /* 14060 */ GIR_EraseRootFromParent_Done, |
| 6034 | /* 14061 */ // Label 459: @14061 |
| 6035 | /* 14061 */ GIM_Try, /*On fail goto*//*Label 460*/ GIMT_Encode4(14090), // Rule ID 22930 // |
| 6036 | /* 14066 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6037 | /* 14069 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6038 | /* 14073 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6039 | /* 14077 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (AND8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 6040 | /* 14077 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND8rr), |
| 6041 | /* 14082 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 6042 | /* 14088 */ GIR_RootConstrainSelectedInstOperands, |
| 6043 | /* 14089 */ // GIR_Coverage, 22930, |
| 6044 | /* 14089 */ GIR_Done, |
| 6045 | /* 14090 */ // Label 460: @14090 |
| 6046 | /* 14090 */ GIM_Try, /*On fail goto*//*Label 461*/ GIMT_Encode4(14119), // Rule ID 23020 // |
| 6047 | /* 14095 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6048 | /* 14098 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6049 | /* 14102 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6050 | /* 14106 */ // (and:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (AND8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 6051 | /* 14106 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND8rr_ND), |
| 6052 | /* 14111 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 6053 | /* 14117 */ GIR_RootConstrainSelectedInstOperands, |
| 6054 | /* 14118 */ // GIR_Coverage, 23020, |
| 6055 | /* 14118 */ GIR_Done, |
| 6056 | /* 14119 */ // Label 461: @14119 |
| 6057 | /* 14119 */ GIM_Reject, |
| 6058 | /* 14120 */ // Label 455: @14120 |
| 6059 | /* 14120 */ GIM_Reject, |
| 6060 | /* 14121 */ // Label 429: @14121 |
| 6061 | /* 14121 */ GIM_Try, /*On fail goto*//*Label 462*/ GIMT_Encode4(14683), |
| 6062 | /* 14126 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 6063 | /* 14129 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 6064 | /* 14132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6065 | /* 14136 */ GIM_Try, /*On fail goto*//*Label 463*/ GIMT_Encode4(14197), // Rule ID 26152 // |
| 6066 | /* 14141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6067 | /* 14144 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6068 | /* 14148 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6069 | /* 14152 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6070 | /* 14155 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6071 | /* 14159 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 6072 | /* 14163 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6073 | /* 14167 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6074 | /* 14169 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6075 | /* 14176 */ // (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) |
| 6076 | /* 14176 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16rm), |
| 6077 | /* 14179 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6078 | /* 14181 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6079 | /* 14183 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6080 | /* 14187 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6081 | /* 14190 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6082 | /* 14195 */ GIR_RootConstrainSelectedInstOperands, |
| 6083 | /* 14196 */ // GIR_Coverage, 26152, |
| 6084 | /* 14196 */ GIR_EraseRootFromParent_Done, |
| 6085 | /* 14197 */ // Label 463: @14197 |
| 6086 | /* 14197 */ GIM_Try, /*On fail goto*//*Label 464*/ GIMT_Encode4(14258), // Rule ID 22935 // |
| 6087 | /* 14202 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6088 | /* 14205 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6089 | /* 14209 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6090 | /* 14213 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6091 | /* 14217 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6092 | /* 14220 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6093 | /* 14224 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 6094 | /* 14228 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6095 | /* 14230 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6096 | /* 14237 */ // (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) |
| 6097 | /* 14237 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16rm), |
| 6098 | /* 14240 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6099 | /* 14242 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6100 | /* 14244 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6101 | /* 14248 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6102 | /* 14251 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6103 | /* 14256 */ GIR_RootConstrainSelectedInstOperands, |
| 6104 | /* 14257 */ // GIR_Coverage, 22935, |
| 6105 | /* 14257 */ GIR_EraseRootFromParent_Done, |
| 6106 | /* 14258 */ // Label 464: @14258 |
| 6107 | /* 14258 */ GIM_Try, /*On fail goto*//*Label 465*/ GIMT_Encode4(14360), // Rule ID 26118 // |
| 6108 | /* 14263 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6109 | /* 14267 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 6110 | /* 14271 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 6111 | /* 14275 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 6112 | /* 14279 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 6113 | /* 14283 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6114 | /* 14288 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6115 | /* 14292 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6116 | /* 14294 */ // (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] })) |
| 6117 | /* 14294 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 6118 | /* 14297 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 6119 | /* 14301 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6120 | /* 14306 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 6121 | /* 14308 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 6122 | /* 14311 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 6123 | /* 14315 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6124 | /* 14320 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6125 | /* 14323 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 6126 | /* 14327 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 6127 | /* 14330 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 6128 | /* 14335 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 6129 | /* 14340 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 6130 | /* 14345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR16rr), |
| 6131 | /* 14348 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6132 | /* 14350 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6133 | /* 14352 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6134 | /* 14355 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6135 | /* 14358 */ GIR_RootConstrainSelectedInstOperands, |
| 6136 | /* 14359 */ // GIR_Coverage, 26118, |
| 6137 | /* 14359 */ GIR_EraseRootFromParent_Done, |
| 6138 | /* 14360 */ // Label 465: @14360 |
| 6139 | /* 14360 */ GIM_Try, /*On fail goto*//*Label 466*/ GIMT_Encode4(14462), // Rule ID 22856 // |
| 6140 | /* 14365 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6141 | /* 14369 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6142 | /* 14373 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 6143 | /* 14377 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 6144 | /* 14381 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 6145 | /* 14385 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 6146 | /* 14389 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6147 | /* 14394 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6148 | /* 14396 */ // (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] })) |
| 6149 | /* 14396 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 6150 | /* 14399 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 6151 | /* 14403 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6152 | /* 14408 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 6153 | /* 14410 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 6154 | /* 14413 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 6155 | /* 14417 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6156 | /* 14422 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6157 | /* 14425 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 6158 | /* 14429 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 6159 | /* 14432 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 6160 | /* 14437 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 6161 | /* 14442 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 6162 | /* 14447 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR16rr), |
| 6163 | /* 14450 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6164 | /* 14452 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6165 | /* 14454 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6166 | /* 14457 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6167 | /* 14460 */ GIR_RootConstrainSelectedInstOperands, |
| 6168 | /* 14461 */ // GIR_Coverage, 22856, |
| 6169 | /* 14461 */ GIR_EraseRootFromParent_Done, |
| 6170 | /* 14462 */ // Label 466: @14462 |
| 6171 | /* 14462 */ GIM_Try, /*On fail goto*//*Label 467*/ GIMT_Encode4(14550), // Rule ID 22716 // |
| 6172 | /* 14467 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6173 | /* 14471 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(255), |
| 6174 | /* 14482 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, 255:{ *:[i16] }) => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rr8:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i8] } GR16:{ *:[i16] }:$src1, sub_8bit:{ *:[i32] })), sub_16bit:{ *:[i32] }) |
| 6175 | /* 14482 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s8, |
| 6176 | /* 14485 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6177 | /* 14489 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6178 | /* 14494 */ GIR_CopySubReg, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src1 |
| 6179 | /* 14500 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 6180 | /* 14505 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 6181 | /* 14510 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6182 | /* 14513 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 6183 | /* 14517 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6184 | /* 14522 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6185 | /* 14525 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6186 | /* 14527 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6187 | /* 14530 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6188 | /* 14532 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 6189 | /* 14539 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 6190 | /* 14544 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 6191 | /* 14549 */ // GIR_Coverage, 22716, |
| 6192 | /* 14549 */ GIR_EraseRootFromParent_Done, |
| 6193 | /* 14550 */ // Label 467: @14550 |
| 6194 | /* 14550 */ GIM_Try, /*On fail goto*//*Label 468*/ GIMT_Encode4(14587), // Rule ID 22939 // |
| 6195 | /* 14555 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6196 | /* 14558 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6197 | /* 14562 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6198 | /* 14566 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6199 | /* 14570 */ // MIs[1] Operand 1 |
| 6200 | /* 14570 */ // No operand predicates |
| 6201 | /* 14570 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6202 | /* 14572 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (AND16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 6203 | /* 14572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16ri), |
| 6204 | /* 14575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6205 | /* 14577 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6206 | /* 14579 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6207 | /* 14582 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6208 | /* 14585 */ GIR_RootConstrainSelectedInstOperands, |
| 6209 | /* 14586 */ // GIR_Coverage, 22939, |
| 6210 | /* 14586 */ GIR_EraseRootFromParent_Done, |
| 6211 | /* 14587 */ // Label 468: @14587 |
| 6212 | /* 14587 */ GIM_Try, /*On fail goto*//*Label 469*/ GIMT_Encode4(14624), // Rule ID 23029 // |
| 6213 | /* 14592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6214 | /* 14595 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6215 | /* 14599 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6216 | /* 14603 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6217 | /* 14607 */ // MIs[1] Operand 1 |
| 6218 | /* 14607 */ // No operand predicates |
| 6219 | /* 14607 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6220 | /* 14609 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (AND16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 6221 | /* 14609 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16ri_ND), |
| 6222 | /* 14612 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6223 | /* 14614 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6224 | /* 14616 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6225 | /* 14619 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6226 | /* 14622 */ GIR_RootConstrainSelectedInstOperands, |
| 6227 | /* 14623 */ // GIR_Coverage, 23029, |
| 6228 | /* 14623 */ GIR_EraseRootFromParent_Done, |
| 6229 | /* 14624 */ // Label 469: @14624 |
| 6230 | /* 14624 */ GIM_Try, /*On fail goto*//*Label 470*/ GIMT_Encode4(14653), // Rule ID 22931 // |
| 6231 | /* 14629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6232 | /* 14632 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6233 | /* 14636 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6234 | /* 14640 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (AND16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 6235 | /* 14640 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND16rr), |
| 6236 | /* 14645 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 6237 | /* 14651 */ GIR_RootConstrainSelectedInstOperands, |
| 6238 | /* 14652 */ // GIR_Coverage, 22931, |
| 6239 | /* 14652 */ GIR_Done, |
| 6240 | /* 14653 */ // Label 470: @14653 |
| 6241 | /* 14653 */ GIM_Try, /*On fail goto*//*Label 471*/ GIMT_Encode4(14682), // Rule ID 23021 // |
| 6242 | /* 14658 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6243 | /* 14661 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6244 | /* 14665 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 6245 | /* 14669 */ // (and:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (AND16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 6246 | /* 14669 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND16rr_ND), |
| 6247 | /* 14674 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 6248 | /* 14680 */ GIR_RootConstrainSelectedInstOperands, |
| 6249 | /* 14681 */ // GIR_Coverage, 23021, |
| 6250 | /* 14681 */ GIR_Done, |
| 6251 | /* 14682 */ // Label 471: @14682 |
| 6252 | /* 14682 */ GIM_Reject, |
| 6253 | /* 14683 */ // Label 462: @14683 |
| 6254 | /* 14683 */ GIM_Reject, |
| 6255 | /* 14684 */ // Label 430: @14684 |
| 6256 | /* 14684 */ GIM_Try, /*On fail goto*//*Label 472*/ GIMT_Encode4(16373), |
| 6257 | /* 14689 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 6258 | /* 14692 */ GIM_Try, /*On fail goto*//*Label 473*/ GIMT_Encode4(14784), // Rule ID 17536 // |
| 6259 | /* 14697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 6260 | /* 14700 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6261 | /* 14703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6262 | /* 14707 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6263 | /* 14711 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6264 | /* 14715 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6265 | /* 14719 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6266 | /* 14723 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6267 | /* 14728 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6268 | /* 14732 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6269 | /* 14736 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6270 | /* 14740 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6271 | /* 14743 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 6272 | /* 14747 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6273 | /* 14751 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6274 | /* 14753 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6275 | /* 14760 */ // (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) |
| 6276 | /* 14760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rm), |
| 6277 | /* 14763 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6278 | /* 14765 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6279 | /* 14769 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6280 | /* 14773 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6281 | /* 14776 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6282 | /* 14782 */ GIR_RootConstrainSelectedInstOperands, |
| 6283 | /* 14783 */ // GIR_Coverage, 17536, |
| 6284 | /* 14783 */ GIR_EraseRootFromParent_Done, |
| 6285 | /* 14784 */ // Label 473: @14784 |
| 6286 | /* 14784 */ GIM_Try, /*On fail goto*//*Label 474*/ GIMT_Encode4(14876), // Rule ID 17540 // |
| 6287 | /* 14789 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 6288 | /* 14792 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6289 | /* 14795 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6290 | /* 14799 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6291 | /* 14803 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6292 | /* 14807 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6293 | /* 14811 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6294 | /* 14815 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6295 | /* 14820 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6296 | /* 14824 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6297 | /* 14828 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6298 | /* 14832 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6299 | /* 14835 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 6300 | /* 14839 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6301 | /* 14843 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6302 | /* 14845 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6303 | /* 14852 */ // (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) |
| 6304 | /* 14852 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rm_EVEX), |
| 6305 | /* 14855 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6306 | /* 14857 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6307 | /* 14861 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6308 | /* 14865 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6309 | /* 14868 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6310 | /* 14874 */ GIR_RootConstrainSelectedInstOperands, |
| 6311 | /* 14875 */ // GIR_Coverage, 17540, |
| 6312 | /* 14875 */ GIR_EraseRootFromParent_Done, |
| 6313 | /* 14876 */ // Label 474: @14876 |
| 6314 | /* 14876 */ GIM_Try, /*On fail goto*//*Label 475*/ GIMT_Encode4(14968), // Rule ID 25185 // |
| 6315 | /* 14881 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 6316 | /* 14884 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6317 | /* 14887 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6318 | /* 14891 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6319 | /* 14895 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6320 | /* 14899 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6321 | /* 14902 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6322 | /* 14906 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6323 | /* 14910 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6324 | /* 14914 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6325 | /* 14918 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 6326 | /* 14922 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6327 | /* 14926 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6328 | /* 14931 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 6329 | /* 14935 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6330 | /* 14937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6331 | /* 14944 */ // (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) |
| 6332 | /* 14944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rm), |
| 6333 | /* 14947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6334 | /* 14949 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src1 |
| 6335 | /* 14953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6336 | /* 14957 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6337 | /* 14960 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6338 | /* 14966 */ GIR_RootConstrainSelectedInstOperands, |
| 6339 | /* 14967 */ // GIR_Coverage, 25185, |
| 6340 | /* 14967 */ GIR_EraseRootFromParent_Done, |
| 6341 | /* 14968 */ // Label 475: @14968 |
| 6342 | /* 14968 */ GIM_Try, /*On fail goto*//*Label 476*/ GIMT_Encode4(15060), // Rule ID 25189 // |
| 6343 | /* 14973 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 6344 | /* 14976 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6345 | /* 14979 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6346 | /* 14983 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6347 | /* 14987 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6348 | /* 14991 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6349 | /* 14994 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6350 | /* 14998 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6351 | /* 15002 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6352 | /* 15006 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6353 | /* 15010 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 6354 | /* 15014 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6355 | /* 15018 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6356 | /* 15023 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 6357 | /* 15027 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6358 | /* 15029 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6359 | /* 15036 */ // (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) |
| 6360 | /* 15036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rm_EVEX), |
| 6361 | /* 15039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6362 | /* 15041 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src1 |
| 6363 | /* 15045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6364 | /* 15049 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6365 | /* 15052 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6366 | /* 15058 */ GIR_RootConstrainSelectedInstOperands, |
| 6367 | /* 15059 */ // GIR_Coverage, 25189, |
| 6368 | /* 15059 */ GIR_EraseRootFromParent_Done, |
| 6369 | /* 15060 */ // Label 476: @15060 |
| 6370 | /* 15060 */ GIM_Try, /*On fail goto*//*Label 477*/ GIMT_Encode4(15128), // Rule ID 26153 // |
| 6371 | /* 15065 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6372 | /* 15068 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6373 | /* 15071 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6374 | /* 15075 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6375 | /* 15079 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6376 | /* 15083 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6377 | /* 15086 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6378 | /* 15090 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6379 | /* 15094 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6380 | /* 15098 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6381 | /* 15100 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6382 | /* 15107 */ // (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) |
| 6383 | /* 15107 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32rm), |
| 6384 | /* 15110 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6385 | /* 15112 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6386 | /* 15114 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6387 | /* 15118 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6388 | /* 15121 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6389 | /* 15126 */ GIR_RootConstrainSelectedInstOperands, |
| 6390 | /* 15127 */ // GIR_Coverage, 26153, |
| 6391 | /* 15127 */ GIR_EraseRootFromParent_Done, |
| 6392 | /* 15128 */ // Label 477: @15128 |
| 6393 | /* 15128 */ GIM_Try, /*On fail goto*//*Label 478*/ GIMT_Encode4(15196), // Rule ID 22936 // |
| 6394 | /* 15133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6395 | /* 15136 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6396 | /* 15139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6397 | /* 15143 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6398 | /* 15147 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6399 | /* 15151 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6400 | /* 15155 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6401 | /* 15158 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6402 | /* 15162 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 6403 | /* 15166 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6404 | /* 15168 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6405 | /* 15175 */ // (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) |
| 6406 | /* 15175 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32rm), |
| 6407 | /* 15178 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6408 | /* 15180 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6409 | /* 15182 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6410 | /* 15186 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6411 | /* 15189 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6412 | /* 15194 */ GIR_RootConstrainSelectedInstOperands, |
| 6413 | /* 15195 */ // GIR_Coverage, 22936, |
| 6414 | /* 15195 */ GIR_EraseRootFromParent_Done, |
| 6415 | /* 15196 */ // Label 478: @15196 |
| 6416 | /* 15196 */ GIM_Try, /*On fail goto*//*Label 479*/ GIMT_Encode4(15273), // Rule ID 25077 // |
| 6417 | /* 15201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6418 | /* 15204 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6419 | /* 15207 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6420 | /* 15211 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6421 | /* 15215 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 6422 | /* 15219 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6423 | /* 15223 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6424 | /* 15227 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6425 | /* 15232 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 6426 | /* 15236 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6427 | /* 15240 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6428 | /* 15244 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6429 | /* 15248 */ // MIs[2] src |
| 6430 | /* 15248 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 6431 | /* 15253 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 6432 | /* 15257 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6433 | /* 15259 */ // (and:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (BLCIC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 6434 | /* 15259 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCIC32rr), |
| 6435 | /* 15262 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6436 | /* 15264 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 6437 | /* 15268 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6438 | /* 15271 */ GIR_RootConstrainSelectedInstOperands, |
| 6439 | /* 15272 */ // GIR_Coverage, 25077, |
| 6440 | /* 15272 */ GIR_EraseRootFromParent_Done, |
| 6441 | /* 15273 */ // Label 479: @15273 |
| 6442 | /* 15273 */ GIM_Try, /*On fail goto*//*Label 480*/ GIMT_Encode4(15350), // Rule ID 25089 // |
| 6443 | /* 15278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6444 | /* 15281 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6445 | /* 15284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6446 | /* 15288 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6447 | /* 15292 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 6448 | /* 15296 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6449 | /* 15300 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6450 | /* 15304 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6451 | /* 15309 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6452 | /* 15313 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6453 | /* 15317 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6454 | /* 15321 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6455 | /* 15325 */ // MIs[2] src |
| 6456 | /* 15325 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 6457 | /* 15330 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 6458 | /* 15334 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6459 | /* 15336 */ // (and:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (TZMSK32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 6460 | /* 15336 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZMSK32rr), |
| 6461 | /* 15339 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6462 | /* 15341 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 6463 | /* 15345 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6464 | /* 15348 */ GIR_RootConstrainSelectedInstOperands, |
| 6465 | /* 15349 */ // GIR_Coverage, 25089, |
| 6466 | /* 15349 */ GIR_EraseRootFromParent_Done, |
| 6467 | /* 15350 */ // Label 480: @15350 |
| 6468 | /* 15350 */ GIM_Try, /*On fail goto*//*Label 481*/ GIMT_Encode4(15427), // Rule ID 17344 // |
| 6469 | /* 15355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6470 | /* 15358 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6471 | /* 15361 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6472 | /* 15365 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6473 | /* 15369 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6474 | /* 15373 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6475 | /* 15377 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6476 | /* 15381 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6477 | /* 15386 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6478 | /* 15390 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6479 | /* 15394 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 6480 | /* 15398 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6481 | /* 15402 */ // MIs[2] src |
| 6482 | /* 15402 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 6483 | /* 15407 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 6484 | /* 15411 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6485 | /* 15413 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (BLCIC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 6486 | /* 15413 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCIC32rr), |
| 6487 | /* 15416 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6488 | /* 15418 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 6489 | /* 15422 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6490 | /* 15425 */ GIR_RootConstrainSelectedInstOperands, |
| 6491 | /* 15426 */ // GIR_Coverage, 17344, |
| 6492 | /* 15426 */ GIR_EraseRootFromParent_Done, |
| 6493 | /* 15427 */ // Label 481: @15427 |
| 6494 | /* 15427 */ GIM_Try, /*On fail goto*//*Label 482*/ GIMT_Encode4(15504), // Rule ID 17356 // |
| 6495 | /* 15432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6496 | /* 15435 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6497 | /* 15438 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6498 | /* 15442 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6499 | /* 15446 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6500 | /* 15450 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6501 | /* 15454 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6502 | /* 15458 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6503 | /* 15463 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6504 | /* 15467 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6505 | /* 15471 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 6506 | /* 15475 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 6507 | /* 15479 */ // MIs[2] src |
| 6508 | /* 15479 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 6509 | /* 15484 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 6510 | /* 15488 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6511 | /* 15490 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (TZMSK32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 6512 | /* 15490 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZMSK32rr), |
| 6513 | /* 15493 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6514 | /* 15495 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 6515 | /* 15499 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6516 | /* 15502 */ GIR_RootConstrainSelectedInstOperands, |
| 6517 | /* 15503 */ // GIR_Coverage, 17356, |
| 6518 | /* 15503 */ GIR_EraseRootFromParent_Done, |
| 6519 | /* 15504 */ // Label 482: @15504 |
| 6520 | /* 15504 */ GIM_Try, /*On fail goto*//*Label 483*/ GIMT_Encode4(15562), // Rule ID 25071 // |
| 6521 | /* 15509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6522 | /* 15512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6523 | /* 15516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6524 | /* 15520 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 6525 | /* 15524 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6526 | /* 15528 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6527 | /* 15532 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6528 | /* 15537 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 6529 | /* 15541 */ // MIs[0] src |
| 6530 | /* 15541 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 6531 | /* 15546 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6532 | /* 15548 */ // (and:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLCFILL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 6533 | /* 15548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCFILL32rr), |
| 6534 | /* 15551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6535 | /* 15553 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 6536 | /* 15557 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6537 | /* 15560 */ GIR_RootConstrainSelectedInstOperands, |
| 6538 | /* 15561 */ // GIR_Coverage, 25071, |
| 6539 | /* 15561 */ GIR_EraseRootFromParent_Done, |
| 6540 | /* 15562 */ // Label 483: @15562 |
| 6541 | /* 15562 */ GIM_Try, /*On fail goto*//*Label 484*/ GIMT_Encode4(15671), // Rule ID 26124 // |
| 6542 | /* 15567 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6543 | /* 15570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6544 | /* 15574 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6545 | /* 15578 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 6546 | /* 15582 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6547 | /* 15586 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 6548 | /* 15590 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 6549 | /* 15594 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6550 | /* 15599 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6551 | /* 15603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6552 | /* 15605 */ // (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] })) |
| 6553 | /* 15605 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 6554 | /* 15608 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 6555 | /* 15612 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6556 | /* 15617 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 6557 | /* 15619 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6558 | /* 15622 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 6559 | /* 15626 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6560 | /* 15631 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6561 | /* 15634 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 6562 | /* 15638 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 6563 | /* 15641 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 6564 | /* 15646 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 6565 | /* 15651 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 6566 | /* 15656 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR32rr), |
| 6567 | /* 15659 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6568 | /* 15661 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6569 | /* 15663 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6570 | /* 15666 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6571 | /* 15669 */ GIR_RootConstrainSelectedInstOperands, |
| 6572 | /* 15670 */ // GIR_Coverage, 26124, |
| 6573 | /* 15670 */ GIR_EraseRootFromParent_Done, |
| 6574 | /* 15671 */ // Label 484: @15671 |
| 6575 | /* 15671 */ GIM_Try, /*On fail goto*//*Label 485*/ GIMT_Encode4(15725), // Rule ID 17338 // |
| 6576 | /* 15676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6577 | /* 15679 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6578 | /* 15682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6579 | /* 15686 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6580 | /* 15690 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6581 | /* 15694 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 6582 | /* 15698 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6583 | /* 15702 */ // MIs[1] src |
| 6584 | /* 15702 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 6585 | /* 15707 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 6586 | /* 15711 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6587 | /* 15713 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src, (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (BLCFILL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 6588 | /* 15713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCFILL32rr), |
| 6589 | /* 15716 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6590 | /* 15718 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 6591 | /* 15720 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6592 | /* 15723 */ GIR_RootConstrainSelectedInstOperands, |
| 6593 | /* 15724 */ // GIR_Coverage, 17338, |
| 6594 | /* 15724 */ GIR_EraseRootFromParent_Done, |
| 6595 | /* 15725 */ // Label 485: @15725 |
| 6596 | /* 15725 */ GIM_Try, /*On fail goto*//*Label 486*/ GIMT_Encode4(15834), // Rule ID 22862 // |
| 6597 | /* 15730 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6598 | /* 15733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6599 | /* 15737 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6600 | /* 15741 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6601 | /* 15745 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 6602 | /* 15749 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6603 | /* 15753 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 6604 | /* 15757 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 6605 | /* 15761 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 6606 | /* 15766 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6607 | /* 15768 */ // (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] })) |
| 6608 | /* 15768 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 6609 | /* 15771 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 6610 | /* 15775 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6611 | /* 15780 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 6612 | /* 15782 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6613 | /* 15785 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 6614 | /* 15789 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6615 | /* 15794 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 6616 | /* 15797 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 6617 | /* 15801 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 6618 | /* 15804 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 6619 | /* 15809 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 6620 | /* 15814 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 6621 | /* 15819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR32rr), |
| 6622 | /* 15822 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6623 | /* 15824 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6624 | /* 15826 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6625 | /* 15829 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6626 | /* 15832 */ GIR_RootConstrainSelectedInstOperands, |
| 6627 | /* 15833 */ // GIR_Coverage, 22862, |
| 6628 | /* 15833 */ GIR_EraseRootFromParent_Done, |
| 6629 | /* 15834 */ // Label 486: @15834 |
| 6630 | /* 15834 */ GIM_Try, /*On fail goto*//*Label 487*/ GIMT_Encode4(15899), // Rule ID 22714 // |
| 6631 | /* 15839 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6632 | /* 15842 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6633 | /* 15846 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6634 | /* 15850 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(65535), |
| 6635 | /* 15861 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, 65535:{ *:[i32] }) => (MOVZX32rr16:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i16] } GR32:{ *:[i32] }:$src1, sub_16bit:{ *:[i32] })) |
| 6636 | /* 15861 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 6637 | /* 15864 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6638 | /* 15868 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6639 | /* 15873 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(4), // src1 |
| 6640 | /* 15879 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 6641 | /* 15884 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 6642 | /* 15889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr16), |
| 6643 | /* 15892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6644 | /* 15894 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6645 | /* 15897 */ GIR_RootConstrainSelectedInstOperands, |
| 6646 | /* 15898 */ // GIR_Coverage, 22714, |
| 6647 | /* 15898 */ GIR_EraseRootFromParent_Done, |
| 6648 | /* 15899 */ // Label 487: @15899 |
| 6649 | /* 15899 */ GIM_Try, /*On fail goto*//*Label 488*/ GIMT_Encode4(15964), // Rule ID 22715 // |
| 6650 | /* 15904 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6651 | /* 15907 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6652 | /* 15911 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6653 | /* 15915 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(255), |
| 6654 | /* 15926 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, 255:{ *:[i32] }) => (MOVZX32rr8:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i8] } GR32:{ *:[i32] }:$src1, sub_8bit:{ *:[i32] })) |
| 6655 | /* 15926 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s8, |
| 6656 | /* 15929 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 6657 | /* 15933 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6658 | /* 15938 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src1 |
| 6659 | /* 15944 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 6660 | /* 15949 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 6661 | /* 15954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 6662 | /* 15957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6663 | /* 15959 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6664 | /* 15962 */ GIR_RootConstrainSelectedInstOperands, |
| 6665 | /* 15963 */ // GIR_Coverage, 22715, |
| 6666 | /* 15963 */ GIR_EraseRootFromParent_Done, |
| 6667 | /* 15964 */ // Label 488: @15964 |
| 6668 | /* 15964 */ GIM_Try, /*On fail goto*//*Label 489*/ GIMT_Encode4(16008), // Rule ID 22940 // |
| 6669 | /* 15969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6670 | /* 15972 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6671 | /* 15975 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6672 | /* 15979 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6673 | /* 15983 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6674 | /* 15987 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6675 | /* 15991 */ // MIs[1] Operand 1 |
| 6676 | /* 15991 */ // No operand predicates |
| 6677 | /* 15991 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6678 | /* 15993 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (AND32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 6679 | /* 15993 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32ri), |
| 6680 | /* 15996 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6681 | /* 15998 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6682 | /* 16000 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6683 | /* 16003 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6684 | /* 16006 */ GIR_RootConstrainSelectedInstOperands, |
| 6685 | /* 16007 */ // GIR_Coverage, 22940, |
| 6686 | /* 16007 */ GIR_EraseRootFromParent_Done, |
| 6687 | /* 16008 */ // Label 489: @16008 |
| 6688 | /* 16008 */ GIM_Try, /*On fail goto*//*Label 490*/ GIMT_Encode4(16052), // Rule ID 23030 // |
| 6689 | /* 16013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6690 | /* 16016 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6691 | /* 16019 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6692 | /* 16023 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6693 | /* 16027 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6694 | /* 16031 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 6695 | /* 16035 */ // MIs[1] Operand 1 |
| 6696 | /* 16035 */ // No operand predicates |
| 6697 | /* 16035 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6698 | /* 16037 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (AND32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 6699 | /* 16037 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32ri_ND), |
| 6700 | /* 16040 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6701 | /* 16042 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6702 | /* 16044 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 6703 | /* 16047 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6704 | /* 16050 */ GIR_RootConstrainSelectedInstOperands, |
| 6705 | /* 16051 */ // GIR_Coverage, 23030, |
| 6706 | /* 16051 */ GIR_EraseRootFromParent_Done, |
| 6707 | /* 16052 */ // Label 490: @16052 |
| 6708 | /* 16052 */ GIM_Try, /*On fail goto*//*Label 491*/ GIMT_Encode4(16114), // Rule ID 17534 // |
| 6709 | /* 16057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 6710 | /* 16060 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6711 | /* 16063 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6712 | /* 16067 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6713 | /* 16071 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6714 | /* 16075 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6715 | /* 16079 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6716 | /* 16083 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6717 | /* 16088 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6718 | /* 16092 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6719 | /* 16096 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6720 | /* 16098 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }), GR32:{ *:[i32] }:$src2) => (ANDN32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 6721 | /* 16098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rr), |
| 6722 | /* 16101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6723 | /* 16103 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6724 | /* 16107 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 6725 | /* 16109 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6726 | /* 16112 */ GIR_RootConstrainSelectedInstOperands, |
| 6727 | /* 16113 */ // GIR_Coverage, 17534, |
| 6728 | /* 16113 */ GIR_EraseRootFromParent_Done, |
| 6729 | /* 16114 */ // Label 491: @16114 |
| 6730 | /* 16114 */ GIM_Try, /*On fail goto*//*Label 492*/ GIMT_Encode4(16176), // Rule ID 17538 // |
| 6731 | /* 16119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 6732 | /* 16122 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6733 | /* 16125 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6734 | /* 16129 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6735 | /* 16133 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6736 | /* 16137 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6737 | /* 16141 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6738 | /* 16145 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6739 | /* 16150 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6740 | /* 16154 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6741 | /* 16158 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6742 | /* 16160 */ // (and:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }), GR32:{ *:[i32] }:$src2) => (ANDN32rr_EVEX:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 6743 | /* 16160 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rr_EVEX), |
| 6744 | /* 16163 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6745 | /* 16165 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6746 | /* 16169 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 6747 | /* 16171 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6748 | /* 16174 */ GIR_RootConstrainSelectedInstOperands, |
| 6749 | /* 16175 */ // GIR_Coverage, 17538, |
| 6750 | /* 16175 */ GIR_EraseRootFromParent_Done, |
| 6751 | /* 16176 */ // Label 492: @16176 |
| 6752 | /* 16176 */ GIM_Try, /*On fail goto*//*Label 493*/ GIMT_Encode4(16238), // Rule ID 25183 // |
| 6753 | /* 16181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 6754 | /* 16184 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6755 | /* 16187 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6756 | /* 16191 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6757 | /* 16195 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6758 | /* 16199 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6759 | /* 16203 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6760 | /* 16207 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6761 | /* 16211 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6762 | /* 16216 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6763 | /* 16220 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6764 | /* 16222 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src2, (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] })) => (ANDN32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 6765 | /* 16222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rr), |
| 6766 | /* 16225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6767 | /* 16227 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6768 | /* 16231 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 6769 | /* 16233 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6770 | /* 16236 */ GIR_RootConstrainSelectedInstOperands, |
| 6771 | /* 16237 */ // GIR_Coverage, 25183, |
| 6772 | /* 16237 */ GIR_EraseRootFromParent_Done, |
| 6773 | /* 16238 */ // Label 493: @16238 |
| 6774 | /* 16238 */ GIM_Try, /*On fail goto*//*Label 494*/ GIMT_Encode4(16300), // Rule ID 25187 // |
| 6775 | /* 16243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 6776 | /* 16246 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6777 | /* 16249 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6778 | /* 16253 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6779 | /* 16257 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6780 | /* 16261 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6781 | /* 16265 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 6782 | /* 16269 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6783 | /* 16273 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6784 | /* 16278 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6785 | /* 16282 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6786 | /* 16284 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src2, (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] })) => (ANDN32rr_EVEX:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 6787 | /* 16284 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN32rr_EVEX), |
| 6788 | /* 16287 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6789 | /* 16289 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6790 | /* 16293 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 6791 | /* 16295 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6792 | /* 16298 */ GIR_RootConstrainSelectedInstOperands, |
| 6793 | /* 16299 */ // GIR_Coverage, 25187, |
| 6794 | /* 16299 */ GIR_EraseRootFromParent_Done, |
| 6795 | /* 16300 */ // Label 494: @16300 |
| 6796 | /* 16300 */ GIM_Try, /*On fail goto*//*Label 495*/ GIMT_Encode4(16336), // Rule ID 22932 // |
| 6797 | /* 16305 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6798 | /* 16308 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6799 | /* 16311 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6800 | /* 16315 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6801 | /* 16319 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6802 | /* 16323 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (AND32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 6803 | /* 16323 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND32rr), |
| 6804 | /* 16328 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 6805 | /* 16334 */ GIR_RootConstrainSelectedInstOperands, |
| 6806 | /* 16335 */ // GIR_Coverage, 22932, |
| 6807 | /* 16335 */ GIR_Done, |
| 6808 | /* 16336 */ // Label 495: @16336 |
| 6809 | /* 16336 */ GIM_Try, /*On fail goto*//*Label 496*/ GIMT_Encode4(16372), // Rule ID 23022 // |
| 6810 | /* 16341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 6811 | /* 16344 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 6812 | /* 16347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6813 | /* 16351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6814 | /* 16355 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 6815 | /* 16359 */ // (and:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (AND32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 6816 | /* 16359 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND32rr_ND), |
| 6817 | /* 16364 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 6818 | /* 16370 */ GIR_RootConstrainSelectedInstOperands, |
| 6819 | /* 16371 */ // GIR_Coverage, 23022, |
| 6820 | /* 16371 */ GIR_Done, |
| 6821 | /* 16372 */ // Label 496: @16372 |
| 6822 | /* 16372 */ GIM_Reject, |
| 6823 | /* 16373 */ // Label 472: @16373 |
| 6824 | /* 16373 */ GIM_Reject, |
| 6825 | /* 16374 */ // Label 431: @16374 |
| 6826 | /* 16374 */ GIM_Try, /*On fail goto*//*Label 497*/ GIMT_Encode4(17941), |
| 6827 | /* 16379 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 6828 | /* 16382 */ GIM_Try, /*On fail goto*//*Label 498*/ GIMT_Encode4(16474), // Rule ID 17537 // |
| 6829 | /* 16387 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 6830 | /* 16390 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 6831 | /* 16393 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6832 | /* 16397 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6833 | /* 16401 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6834 | /* 16405 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 6835 | /* 16409 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6836 | /* 16413 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6837 | /* 16418 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6838 | /* 16422 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6839 | /* 16426 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6840 | /* 16430 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6841 | /* 16433 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 6842 | /* 16437 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 6843 | /* 16441 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6844 | /* 16443 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6845 | /* 16450 */ // (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) |
| 6846 | /* 16450 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rm), |
| 6847 | /* 16453 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6848 | /* 16455 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6849 | /* 16459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6850 | /* 16463 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6851 | /* 16466 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6852 | /* 16472 */ GIR_RootConstrainSelectedInstOperands, |
| 6853 | /* 16473 */ // GIR_Coverage, 17537, |
| 6854 | /* 16473 */ GIR_EraseRootFromParent_Done, |
| 6855 | /* 16474 */ // Label 498: @16474 |
| 6856 | /* 16474 */ GIM_Try, /*On fail goto*//*Label 499*/ GIMT_Encode4(16566), // Rule ID 17541 // |
| 6857 | /* 16479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 6858 | /* 16482 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 6859 | /* 16485 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6860 | /* 16489 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6861 | /* 16493 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6862 | /* 16497 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 6863 | /* 16501 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6864 | /* 16505 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6865 | /* 16510 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 6866 | /* 16514 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6867 | /* 16518 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6868 | /* 16522 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6869 | /* 16525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 6870 | /* 16529 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 6871 | /* 16533 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6872 | /* 16535 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6873 | /* 16542 */ // (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) |
| 6874 | /* 16542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rm_EVEX), |
| 6875 | /* 16545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6876 | /* 16547 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 6877 | /* 16551 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6878 | /* 16555 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6879 | /* 16558 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6880 | /* 16564 */ GIR_RootConstrainSelectedInstOperands, |
| 6881 | /* 16565 */ // GIR_Coverage, 17541, |
| 6882 | /* 16565 */ GIR_EraseRootFromParent_Done, |
| 6883 | /* 16566 */ // Label 499: @16566 |
| 6884 | /* 16566 */ GIM_Try, /*On fail goto*//*Label 500*/ GIMT_Encode4(16658), // Rule ID 25186 // |
| 6885 | /* 16571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 6886 | /* 16574 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 6887 | /* 16577 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6888 | /* 16581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6889 | /* 16585 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6890 | /* 16589 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6891 | /* 16592 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6892 | /* 16596 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6893 | /* 16600 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6894 | /* 16604 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6895 | /* 16608 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 6896 | /* 16612 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 6897 | /* 16616 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6898 | /* 16621 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 6899 | /* 16625 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6900 | /* 16627 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6901 | /* 16634 */ // (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) |
| 6902 | /* 16634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rm), |
| 6903 | /* 16637 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6904 | /* 16639 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src1 |
| 6905 | /* 16643 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6906 | /* 16647 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6907 | /* 16650 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6908 | /* 16656 */ GIR_RootConstrainSelectedInstOperands, |
| 6909 | /* 16657 */ // GIR_Coverage, 25186, |
| 6910 | /* 16657 */ GIR_EraseRootFromParent_Done, |
| 6911 | /* 16658 */ // Label 500: @16658 |
| 6912 | /* 16658 */ GIM_Try, /*On fail goto*//*Label 501*/ GIMT_Encode4(16750), // Rule ID 25190 // |
| 6913 | /* 16663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 6914 | /* 16666 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 6915 | /* 16669 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6916 | /* 16673 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6917 | /* 16677 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6918 | /* 16681 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6919 | /* 16684 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6920 | /* 16688 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6921 | /* 16692 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6922 | /* 16696 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6923 | /* 16700 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 6924 | /* 16704 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 6925 | /* 16708 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6926 | /* 16713 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 6927 | /* 16717 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 6928 | /* 16719 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6929 | /* 16726 */ // (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) |
| 6930 | /* 16726 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rm_EVEX), |
| 6931 | /* 16729 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6932 | /* 16731 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src1 |
| 6933 | /* 16735 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6934 | /* 16739 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6935 | /* 16742 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 6936 | /* 16748 */ GIR_RootConstrainSelectedInstOperands, |
| 6937 | /* 16749 */ // GIR_Coverage, 25190, |
| 6938 | /* 16749 */ GIR_EraseRootFromParent_Done, |
| 6939 | /* 16750 */ // Label 501: @16750 |
| 6940 | /* 16750 */ GIM_Try, /*On fail goto*//*Label 502*/ GIMT_Encode4(16818), // Rule ID 26154 // |
| 6941 | /* 16755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6942 | /* 16758 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 6943 | /* 16761 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6944 | /* 16765 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6945 | /* 16769 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6946 | /* 16773 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6947 | /* 16776 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6948 | /* 16780 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6949 | /* 16784 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6950 | /* 16788 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6951 | /* 16790 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6952 | /* 16797 */ // (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) |
| 6953 | /* 16797 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64rm), |
| 6954 | /* 16800 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6955 | /* 16802 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 6956 | /* 16804 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6957 | /* 16808 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6958 | /* 16811 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6959 | /* 16816 */ GIR_RootConstrainSelectedInstOperands, |
| 6960 | /* 16817 */ // GIR_Coverage, 26154, |
| 6961 | /* 16817 */ GIR_EraseRootFromParent_Done, |
| 6962 | /* 16818 */ // Label 502: @16818 |
| 6963 | /* 16818 */ GIM_Try, /*On fail goto*//*Label 503*/ GIMT_Encode4(16886), // Rule ID 22937 // |
| 6964 | /* 16823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 6965 | /* 16826 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 6966 | /* 16829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6967 | /* 16833 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6968 | /* 16837 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 6969 | /* 16841 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 6970 | /* 16845 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 6971 | /* 16848 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 6972 | /* 16852 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 6973 | /* 16856 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6974 | /* 16858 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 6975 | /* 16865 */ // (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) |
| 6976 | /* 16865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64rm), |
| 6977 | /* 16868 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 6978 | /* 16870 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 6979 | /* 16872 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 6980 | /* 16876 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 6981 | /* 16879 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 6982 | /* 16884 */ GIR_RootConstrainSelectedInstOperands, |
| 6983 | /* 16885 */ // GIR_Coverage, 22937, |
| 6984 | /* 16885 */ GIR_EraseRootFromParent_Done, |
| 6985 | /* 16886 */ // Label 503: @16886 |
| 6986 | /* 16886 */ GIM_Try, /*On fail goto*//*Label 504*/ GIMT_Encode4(16963), // Rule ID 25078 // |
| 6987 | /* 16891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 6988 | /* 16894 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 6989 | /* 16897 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6990 | /* 16901 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 6991 | /* 16905 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 6992 | /* 16909 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 6993 | /* 16913 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6994 | /* 16917 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 6995 | /* 16922 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 6996 | /* 16926 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 6997 | /* 16930 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 6998 | /* 16934 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 6999 | /* 16938 */ // MIs[2] src |
| 7000 | /* 16938 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7001 | /* 16943 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 7002 | /* 16947 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7003 | /* 16949 */ // (and:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (BLCIC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7004 | /* 16949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCIC64rr), |
| 7005 | /* 16952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7006 | /* 16954 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7007 | /* 16958 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7008 | /* 16961 */ GIR_RootConstrainSelectedInstOperands, |
| 7009 | /* 16962 */ // GIR_Coverage, 25078, |
| 7010 | /* 16962 */ GIR_EraseRootFromParent_Done, |
| 7011 | /* 16963 */ // Label 504: @16963 |
| 7012 | /* 16963 */ GIM_Try, /*On fail goto*//*Label 505*/ GIMT_Encode4(17040), // Rule ID 25090 // |
| 7013 | /* 16968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7014 | /* 16971 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7015 | /* 16974 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7016 | /* 16978 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7017 | /* 16982 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7018 | /* 16986 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7019 | /* 16990 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7020 | /* 16994 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7021 | /* 16999 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 7022 | /* 17003 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7023 | /* 17007 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7024 | /* 17011 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7025 | /* 17015 */ // MIs[2] src |
| 7026 | /* 17015 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7027 | /* 17020 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 7028 | /* 17024 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7029 | /* 17026 */ // (and:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (TZMSK64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7030 | /* 17026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZMSK64rr), |
| 7031 | /* 17029 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7032 | /* 17031 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7033 | /* 17035 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7034 | /* 17038 */ GIR_RootConstrainSelectedInstOperands, |
| 7035 | /* 17039 */ // GIR_Coverage, 25090, |
| 7036 | /* 17039 */ GIR_EraseRootFromParent_Done, |
| 7037 | /* 17040 */ // Label 505: @17040 |
| 7038 | /* 17040 */ GIM_Try, /*On fail goto*//*Label 506*/ GIMT_Encode4(17117), // Rule ID 17345 // |
| 7039 | /* 17045 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7040 | /* 17048 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7041 | /* 17051 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7042 | /* 17055 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7043 | /* 17059 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7044 | /* 17063 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7045 | /* 17067 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7046 | /* 17071 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7047 | /* 17076 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 7048 | /* 17080 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7049 | /* 17084 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7050 | /* 17088 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7051 | /* 17092 */ // MIs[2] src |
| 7052 | /* 17092 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7053 | /* 17097 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 7054 | /* 17101 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7055 | /* 17103 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (BLCIC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7056 | /* 17103 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCIC64rr), |
| 7057 | /* 17106 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7058 | /* 17108 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7059 | /* 17112 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7060 | /* 17115 */ GIR_RootConstrainSelectedInstOperands, |
| 7061 | /* 17116 */ // GIR_Coverage, 17345, |
| 7062 | /* 17116 */ GIR_EraseRootFromParent_Done, |
| 7063 | /* 17117 */ // Label 506: @17117 |
| 7064 | /* 17117 */ GIM_Try, /*On fail goto*//*Label 507*/ GIMT_Encode4(17194), // Rule ID 17357 // |
| 7065 | /* 17122 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7066 | /* 17125 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7067 | /* 17128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7068 | /* 17132 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7069 | /* 17136 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7070 | /* 17140 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7071 | /* 17144 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7072 | /* 17148 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7073 | /* 17153 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 7074 | /* 17157 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 7075 | /* 17161 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7076 | /* 17165 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 7077 | /* 17169 */ // MIs[2] src |
| 7078 | /* 17169 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7079 | /* 17174 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 7080 | /* 17178 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7081 | /* 17180 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (TZMSK64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7082 | /* 17180 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZMSK64rr), |
| 7083 | /* 17183 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7084 | /* 17185 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7085 | /* 17189 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7086 | /* 17192 */ GIR_RootConstrainSelectedInstOperands, |
| 7087 | /* 17193 */ // GIR_Coverage, 17357, |
| 7088 | /* 17193 */ GIR_EraseRootFromParent_Done, |
| 7089 | /* 17194 */ // Label 507: @17194 |
| 7090 | /* 17194 */ GIM_Try, /*On fail goto*//*Label 508*/ GIMT_Encode4(17252), // Rule ID 25072 // |
| 7091 | /* 17199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7092 | /* 17202 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7093 | /* 17206 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7094 | /* 17210 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7095 | /* 17214 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7096 | /* 17218 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7097 | /* 17222 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7098 | /* 17227 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 7099 | /* 17231 */ // MIs[0] src |
| 7100 | /* 17231 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 7101 | /* 17236 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7102 | /* 17238 */ // (and:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLCFILL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7103 | /* 17238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCFILL64rr), |
| 7104 | /* 17241 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7105 | /* 17243 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 7106 | /* 17247 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7107 | /* 17250 */ GIR_RootConstrainSelectedInstOperands, |
| 7108 | /* 17251 */ // GIR_Coverage, 25072, |
| 7109 | /* 17251 */ GIR_EraseRootFromParent_Done, |
| 7110 | /* 17252 */ // Label 508: @17252 |
| 7111 | /* 17252 */ GIM_Try, /*On fail goto*//*Label 509*/ GIMT_Encode4(17361), // Rule ID 26130 // |
| 7112 | /* 17257 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7113 | /* 17260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7114 | /* 17264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7115 | /* 17268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 7116 | /* 17272 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7117 | /* 17276 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 7118 | /* 17280 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 7119 | /* 17284 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 7120 | /* 17289 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7121 | /* 17293 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7122 | /* 17295 */ // (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] })) |
| 7123 | /* 17295 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 7124 | /* 17298 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 7125 | /* 17302 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7126 | /* 17307 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 7127 | /* 17309 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 7128 | /* 17312 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 7129 | /* 17316 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7130 | /* 17321 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7131 | /* 17324 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 7132 | /* 17328 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 7133 | /* 17331 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 7134 | /* 17336 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 7135 | /* 17341 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 7136 | /* 17346 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR64rr), |
| 7137 | /* 17349 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7138 | /* 17351 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7139 | /* 17353 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7140 | /* 17356 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7141 | /* 17359 */ GIR_RootConstrainSelectedInstOperands, |
| 7142 | /* 17360 */ // GIR_Coverage, 26130, |
| 7143 | /* 17360 */ GIR_EraseRootFromParent_Done, |
| 7144 | /* 17361 */ // Label 509: @17361 |
| 7145 | /* 17361 */ GIM_Try, /*On fail goto*//*Label 510*/ GIMT_Encode4(17415), // Rule ID 17339 // |
| 7146 | /* 17366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 7147 | /* 17369 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7148 | /* 17372 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7149 | /* 17376 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7150 | /* 17380 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7151 | /* 17384 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 7152 | /* 17388 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7153 | /* 17392 */ // MIs[1] src |
| 7154 | /* 17392 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 7155 | /* 17397 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 7156 | /* 17401 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7157 | /* 17403 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src, (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (BLCFILL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 7158 | /* 17403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCFILL64rr), |
| 7159 | /* 17406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7160 | /* 17408 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 7161 | /* 17410 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7162 | /* 17413 */ GIR_RootConstrainSelectedInstOperands, |
| 7163 | /* 17414 */ // GIR_Coverage, 17339, |
| 7164 | /* 17414 */ GIR_EraseRootFromParent_Done, |
| 7165 | /* 17415 */ // Label 510: @17415 |
| 7166 | /* 17415 */ GIM_Try, /*On fail goto*//*Label 511*/ GIMT_Encode4(17524), // Rule ID 22868 // |
| 7167 | /* 17420 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7168 | /* 17423 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7169 | /* 17427 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7170 | /* 17431 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7171 | /* 17435 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 7172 | /* 17439 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7173 | /* 17443 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 7174 | /* 17447 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 7175 | /* 17451 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 7176 | /* 17456 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7177 | /* 17458 */ // (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] })) |
| 7178 | /* 17458 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 7179 | /* 17461 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 7180 | /* 17465 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7181 | /* 17470 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 7182 | /* 17472 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 7183 | /* 17475 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 7184 | /* 17479 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7185 | /* 17484 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7186 | /* 17487 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 7187 | /* 17491 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 7188 | /* 17494 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 7189 | /* 17499 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 7190 | /* 17504 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 7191 | /* 17509 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTR64rr), |
| 7192 | /* 17512 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7193 | /* 17514 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7194 | /* 17516 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7195 | /* 17519 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7196 | /* 17522 */ GIR_RootConstrainSelectedInstOperands, |
| 7197 | /* 17523 */ // GIR_Coverage, 22868, |
| 7198 | /* 17523 */ GIR_EraseRootFromParent_Done, |
| 7199 | /* 17524 */ // Label 511: @17524 |
| 7200 | /* 17524 */ GIM_Try, /*On fail goto*//*Label 512*/ GIMT_Encode4(17572), // Rule ID 22941 // |
| 7201 | /* 17529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 7202 | /* 17532 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7203 | /* 17535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7204 | /* 17539 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7205 | /* 17543 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7206 | /* 17547 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7207 | /* 17551 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 7208 | /* 17555 */ // MIs[1] Operand 1 |
| 7209 | /* 17555 */ // No operand predicates |
| 7210 | /* 17555 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7211 | /* 17557 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (AND64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 7212 | /* 17557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64ri32), |
| 7213 | /* 17560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7214 | /* 17562 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7215 | /* 17564 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 7216 | /* 17567 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7217 | /* 17570 */ GIR_RootConstrainSelectedInstOperands, |
| 7218 | /* 17571 */ // GIR_Coverage, 22941, |
| 7219 | /* 17571 */ GIR_EraseRootFromParent_Done, |
| 7220 | /* 17572 */ // Label 512: @17572 |
| 7221 | /* 17572 */ GIM_Try, /*On fail goto*//*Label 513*/ GIMT_Encode4(17620), // Rule ID 23031 // |
| 7222 | /* 17577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 7223 | /* 17580 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7224 | /* 17583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7225 | /* 17587 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7226 | /* 17591 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7227 | /* 17595 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7228 | /* 17599 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 7229 | /* 17603 */ // MIs[1] Operand 1 |
| 7230 | /* 17603 */ // No operand predicates |
| 7231 | /* 17603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7232 | /* 17605 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (AND64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 7233 | /* 17605 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64ri32_ND), |
| 7234 | /* 17608 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7235 | /* 17610 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7236 | /* 17612 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 7237 | /* 17615 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7238 | /* 17618 */ GIR_RootConstrainSelectedInstOperands, |
| 7239 | /* 17619 */ // GIR_Coverage, 23031, |
| 7240 | /* 17619 */ GIR_EraseRootFromParent_Done, |
| 7241 | /* 17620 */ // Label 513: @17620 |
| 7242 | /* 17620 */ GIM_Try, /*On fail goto*//*Label 514*/ GIMT_Encode4(17682), // Rule ID 17535 // |
| 7243 | /* 17625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 7244 | /* 17628 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7245 | /* 17631 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7246 | /* 17635 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7247 | /* 17639 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7248 | /* 17643 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7249 | /* 17647 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7250 | /* 17651 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7251 | /* 17656 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 7252 | /* 17660 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7253 | /* 17664 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7254 | /* 17666 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }), GR64:{ *:[i64] }:$src2) => (ANDN64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7255 | /* 17666 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rr), |
| 7256 | /* 17669 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7257 | /* 17671 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7258 | /* 17675 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 7259 | /* 17677 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7260 | /* 17680 */ GIR_RootConstrainSelectedInstOperands, |
| 7261 | /* 17681 */ // GIR_Coverage, 17535, |
| 7262 | /* 17681 */ GIR_EraseRootFromParent_Done, |
| 7263 | /* 17682 */ // Label 514: @17682 |
| 7264 | /* 17682 */ GIM_Try, /*On fail goto*//*Label 515*/ GIMT_Encode4(17744), // Rule ID 17539 // |
| 7265 | /* 17687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 7266 | /* 17690 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7267 | /* 17693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7268 | /* 17697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7269 | /* 17701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7270 | /* 17705 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7271 | /* 17709 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7272 | /* 17713 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7273 | /* 17718 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 7274 | /* 17722 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7275 | /* 17726 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7276 | /* 17728 */ // (and:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }), GR64:{ *:[i64] }:$src2) => (ANDN64rr_EVEX:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7277 | /* 17728 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rr_EVEX), |
| 7278 | /* 17731 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7279 | /* 17733 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7280 | /* 17737 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 7281 | /* 17739 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7282 | /* 17742 */ GIR_RootConstrainSelectedInstOperands, |
| 7283 | /* 17743 */ // GIR_Coverage, 17539, |
| 7284 | /* 17743 */ GIR_EraseRootFromParent_Done, |
| 7285 | /* 17744 */ // Label 515: @17744 |
| 7286 | /* 17744 */ GIM_Try, /*On fail goto*//*Label 516*/ GIMT_Encode4(17806), // Rule ID 25184 // |
| 7287 | /* 17749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_NoEGPR), |
| 7288 | /* 17752 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7289 | /* 17755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7290 | /* 17759 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7291 | /* 17763 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7292 | /* 17767 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7293 | /* 17771 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7294 | /* 17775 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7295 | /* 17779 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7296 | /* 17784 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 7297 | /* 17788 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7298 | /* 17790 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src2, (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] })) => (ANDN64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7299 | /* 17790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rr), |
| 7300 | /* 17793 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7301 | /* 17795 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7302 | /* 17799 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 7303 | /* 17801 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7304 | /* 17804 */ GIR_RootConstrainSelectedInstOperands, |
| 7305 | /* 17805 */ // GIR_Coverage, 25184, |
| 7306 | /* 17805 */ GIR_EraseRootFromParent_Done, |
| 7307 | /* 17806 */ // Label 516: @17806 |
| 7308 | /* 17806 */ GIM_Try, /*On fail goto*//*Label 517*/ GIMT_Encode4(17868), // Rule ID 25188 // |
| 7309 | /* 17811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI_HasEGPR), |
| 7310 | /* 17814 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7311 | /* 17817 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7312 | /* 17821 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7313 | /* 17825 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7314 | /* 17829 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7315 | /* 17833 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 7316 | /* 17837 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7317 | /* 17841 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7318 | /* 17846 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 7319 | /* 17850 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7320 | /* 17852 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src2, (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] })) => (ANDN64rr_EVEX:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7321 | /* 17852 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ANDN64rr_EVEX), |
| 7322 | /* 17855 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7323 | /* 17857 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7324 | /* 17861 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 7325 | /* 17863 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 7326 | /* 17866 */ GIR_RootConstrainSelectedInstOperands, |
| 7327 | /* 17867 */ // GIR_Coverage, 25188, |
| 7328 | /* 17867 */ GIR_EraseRootFromParent_Done, |
| 7329 | /* 17868 */ // Label 517: @17868 |
| 7330 | /* 17868 */ GIM_Try, /*On fail goto*//*Label 518*/ GIMT_Encode4(17904), // Rule ID 22933 // |
| 7331 | /* 17873 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 7332 | /* 17876 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7333 | /* 17879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7334 | /* 17883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7335 | /* 17887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7336 | /* 17891 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (AND64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7337 | /* 17891 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND64rr), |
| 7338 | /* 17896 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 7339 | /* 17902 */ GIR_RootConstrainSelectedInstOperands, |
| 7340 | /* 17903 */ // GIR_Coverage, 22933, |
| 7341 | /* 17903 */ GIR_Done, |
| 7342 | /* 17904 */ // Label 518: @17904 |
| 7343 | /* 17904 */ GIM_Try, /*On fail goto*//*Label 519*/ GIMT_Encode4(17940), // Rule ID 23023 // |
| 7344 | /* 17909 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 7345 | /* 17912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 7346 | /* 17915 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7347 | /* 17919 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7348 | /* 17923 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 7349 | /* 17927 */ // (and:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (AND64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 7350 | /* 17927 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::AND64rr_ND), |
| 7351 | /* 17932 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 7352 | /* 17938 */ GIR_RootConstrainSelectedInstOperands, |
| 7353 | /* 17939 */ // GIR_Coverage, 23023, |
| 7354 | /* 17939 */ GIR_Done, |
| 7355 | /* 17940 */ // Label 519: @17940 |
| 7356 | /* 17940 */ GIM_Reject, |
| 7357 | /* 17941 */ // Label 497: @17941 |
| 7358 | /* 17941 */ GIM_Reject, |
| 7359 | /* 17942 */ // Label 432: @17942 |
| 7360 | /* 17942 */ GIM_Try, /*On fail goto*//*Label 520*/ GIMT_Encode4(18287), |
| 7361 | /* 17947 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 7362 | /* 17950 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s1, |
| 7363 | /* 17953 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7364 | /* 17957 */ GIM_Try, /*On fail goto*//*Label 521*/ GIMT_Encode4(18077), // Rule ID 19487 // |
| 7365 | /* 17962 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7366 | /* 17966 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7367 | /* 17970 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 7368 | /* 17974 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 7369 | /* 17978 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7370 | /* 17983 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 7371 | /* 17987 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 7372 | /* 17993 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 7373 | /* 17995 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7374 | /* 17999 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7375 | /* 18001 */ // (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] }) |
| 7376 | /* 18001 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 7377 | /* 18004 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7378 | /* 18008 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7379 | /* 18013 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 7380 | /* 18017 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7381 | /* 18022 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 7382 | /* 18025 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7383 | /* 18029 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7384 | /* 18034 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7385 | /* 18038 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7386 | /* 18043 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 7387 | /* 18046 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 7388 | /* 18050 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7389 | /* 18055 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7390 | /* 18058 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 7391 | /* 18061 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7392 | /* 18063 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7393 | /* 18066 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7394 | /* 18068 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7395 | /* 18071 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 7396 | /* 18076 */ // GIR_Coverage, 19487, |
| 7397 | /* 18076 */ GIR_EraseRootFromParent_Done, |
| 7398 | /* 18077 */ // Label 521: @18077 |
| 7399 | /* 18077 */ GIM_Try, /*On fail goto*//*Label 522*/ GIMT_Encode4(18197), // Rule ID 25450 // |
| 7400 | /* 18082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7401 | /* 18086 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7402 | /* 18090 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7403 | /* 18094 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 7404 | /* 18098 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 7405 | /* 18102 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7406 | /* 18107 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 7407 | /* 18111 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 7408 | /* 18117 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 7409 | /* 18119 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7410 | /* 18121 */ // (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] }) |
| 7411 | /* 18121 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 7412 | /* 18124 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7413 | /* 18128 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7414 | /* 18133 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 7415 | /* 18137 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7416 | /* 18142 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 7417 | /* 18145 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7418 | /* 18149 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7419 | /* 18154 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7420 | /* 18158 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7421 | /* 18163 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 7422 | /* 18166 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 7423 | /* 18170 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7424 | /* 18175 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7425 | /* 18178 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 7426 | /* 18181 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7427 | /* 18183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7428 | /* 18186 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7429 | /* 18188 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7430 | /* 18191 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 7431 | /* 18196 */ // GIR_Coverage, 25450, |
| 7432 | /* 18196 */ GIR_EraseRootFromParent_Done, |
| 7433 | /* 18197 */ // Label 522: @18197 |
| 7434 | /* 18197 */ GIM_Try, /*On fail goto*//*Label 523*/ GIMT_Encode4(18286), // Rule ID 19483 // |
| 7435 | /* 18202 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7436 | /* 18206 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 7437 | /* 18210 */ // (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] }) |
| 7438 | /* 18210 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 7439 | /* 18213 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7440 | /* 18217 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7441 | /* 18222 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 7442 | /* 18226 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7443 | /* 18231 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 7444 | /* 18234 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7445 | /* 18238 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7446 | /* 18243 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 7447 | /* 18247 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7448 | /* 18252 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 7449 | /* 18255 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 7450 | /* 18259 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7451 | /* 18264 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7452 | /* 18267 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 7453 | /* 18270 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7454 | /* 18272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7455 | /* 18275 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7456 | /* 18277 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7457 | /* 18280 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 7458 | /* 18285 */ // GIR_Coverage, 19483, |
| 7459 | /* 18285 */ GIR_EraseRootFromParent_Done, |
| 7460 | /* 18286 */ // Label 523: @18286 |
| 7461 | /* 18286 */ GIM_Reject, |
| 7462 | /* 18287 */ // Label 520: @18287 |
| 7463 | /* 18287 */ GIM_Reject, |
| 7464 | /* 18288 */ // Label 433: @18288 |
| 7465 | /* 18288 */ GIM_Try, /*On fail goto*//*Label 524*/ GIMT_Encode4(18629), |
| 7466 | /* 18293 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 7467 | /* 18296 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 7468 | /* 18299 */ GIM_Try, /*On fail goto*//*Label 525*/ GIMT_Encode4(18361), // Rule ID 23442 // |
| 7469 | /* 18304 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 7470 | /* 18307 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7471 | /* 18311 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7472 | /* 18315 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7473 | /* 18319 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7474 | /* 18322 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7475 | /* 18326 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7476 | /* 18330 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7477 | /* 18334 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7478 | /* 18336 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7479 | /* 18343 */ // (and:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src1) => (VPANDrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7480 | /* 18343 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 7481 | /* 18346 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7482 | /* 18348 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7483 | /* 18350 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7484 | /* 18354 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7485 | /* 18359 */ GIR_RootConstrainSelectedInstOperands, |
| 7486 | /* 18360 */ // GIR_Coverage, 23442, |
| 7487 | /* 18360 */ GIR_EraseRootFromParent_Done, |
| 7488 | /* 18361 */ // Label 525: @18361 |
| 7489 | /* 18361 */ GIM_Try, /*On fail goto*//*Label 526*/ GIMT_Encode4(18423), // Rule ID 24231 // |
| 7490 | /* 18366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7491 | /* 18369 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7492 | /* 18373 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7493 | /* 18377 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7494 | /* 18381 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7495 | /* 18384 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7496 | /* 18388 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7497 | /* 18392 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7498 | /* 18396 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7499 | /* 18398 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7500 | /* 18405 */ // (and:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPANDQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7501 | /* 18405 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 7502 | /* 18408 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7503 | /* 18410 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7504 | /* 18412 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7505 | /* 18416 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7506 | /* 18421 */ GIR_RootConstrainSelectedInstOperands, |
| 7507 | /* 18422 */ // GIR_Coverage, 24231, |
| 7508 | /* 18422 */ GIR_EraseRootFromParent_Done, |
| 7509 | /* 18423 */ // Label 526: @18423 |
| 7510 | /* 18423 */ GIM_Try, /*On fail goto*//*Label 527*/ GIMT_Encode4(18485), // Rule ID 2111 // |
| 7511 | /* 18428 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 7512 | /* 18431 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7513 | /* 18435 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7514 | /* 18439 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7515 | /* 18443 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7516 | /* 18447 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7517 | /* 18450 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7518 | /* 18454 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7519 | /* 18458 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7520 | /* 18460 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7521 | /* 18467 */ // (and:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7522 | /* 18467 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 7523 | /* 18470 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7524 | /* 18472 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7525 | /* 18474 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7526 | /* 18478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7527 | /* 18483 */ GIR_RootConstrainSelectedInstOperands, |
| 7528 | /* 18484 */ // GIR_Coverage, 2111, |
| 7529 | /* 18484 */ GIR_EraseRootFromParent_Done, |
| 7530 | /* 18485 */ // Label 527: @18485 |
| 7531 | /* 18485 */ GIM_Try, /*On fail goto*//*Label 528*/ GIMT_Encode4(18547), // Rule ID 5711 // |
| 7532 | /* 18490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7533 | /* 18493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7534 | /* 18497 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7535 | /* 18501 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7536 | /* 18505 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7537 | /* 18509 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7538 | /* 18512 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7539 | /* 18516 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7540 | /* 18520 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7541 | /* 18522 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7542 | /* 18529 */ // (and:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7543 | /* 18529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 7544 | /* 18532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7545 | /* 18534 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7546 | /* 18536 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7547 | /* 18540 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7548 | /* 18545 */ GIR_RootConstrainSelectedInstOperands, |
| 7549 | /* 18546 */ // GIR_Coverage, 5711, |
| 7550 | /* 18546 */ GIR_EraseRootFromParent_Done, |
| 7551 | /* 18547 */ // Label 528: @18547 |
| 7552 | /* 18547 */ GIM_Try, /*On fail goto*//*Label 529*/ GIMT_Encode4(18574), // Rule ID 2110 // |
| 7553 | /* 18552 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 7554 | /* 18555 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7555 | /* 18559 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7556 | /* 18563 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7557 | /* 18567 */ // (and:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPANDrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 7558 | /* 18567 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDrr), |
| 7559 | /* 18572 */ GIR_RootConstrainSelectedInstOperands, |
| 7560 | /* 18573 */ // GIR_Coverage, 2110, |
| 7561 | /* 18573 */ GIR_Done, |
| 7562 | /* 18574 */ // Label 529: @18574 |
| 7563 | /* 18574 */ GIM_Try, /*On fail goto*//*Label 530*/ GIMT_Encode4(18601), // Rule ID 2112 // |
| 7564 | /* 18579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 7565 | /* 18582 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7566 | /* 18586 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7567 | /* 18590 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7568 | /* 18594 */ // (and:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PANDrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 7569 | /* 18594 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PANDrr), |
| 7570 | /* 18599 */ GIR_RootConstrainSelectedInstOperands, |
| 7571 | /* 18600 */ // GIR_Coverage, 2112, |
| 7572 | /* 18600 */ GIR_Done, |
| 7573 | /* 18601 */ // Label 530: @18601 |
| 7574 | /* 18601 */ GIM_Try, /*On fail goto*//*Label 531*/ GIMT_Encode4(18628), // Rule ID 5708 // |
| 7575 | /* 18606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7576 | /* 18609 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7577 | /* 18613 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7578 | /* 18617 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7579 | /* 18621 */ // (and:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPANDQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 7580 | /* 18621 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rr), |
| 7581 | /* 18626 */ GIR_RootConstrainSelectedInstOperands, |
| 7582 | /* 18627 */ // GIR_Coverage, 5708, |
| 7583 | /* 18627 */ GIR_Done, |
| 7584 | /* 18628 */ // Label 531: @18628 |
| 7585 | /* 18628 */ GIM_Reject, |
| 7586 | /* 18629 */ // Label 524: @18629 |
| 7587 | /* 18629 */ GIM_Reject, |
| 7588 | /* 18630 */ // Label 434: @18630 |
| 7589 | /* 18630 */ GIM_Try, /*On fail goto*//*Label 532*/ GIMT_Encode4(18975), |
| 7590 | /* 18635 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 7591 | /* 18638 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 7592 | /* 18641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 7593 | /* 18645 */ GIM_Try, /*On fail goto*//*Label 533*/ GIMT_Encode4(18765), // Rule ID 19488 // |
| 7594 | /* 18650 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7595 | /* 18654 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7596 | /* 18658 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 7597 | /* 18662 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 7598 | /* 18666 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 7599 | /* 18671 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 7600 | /* 18675 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 7601 | /* 18681 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 7602 | /* 18683 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 7603 | /* 18687 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7604 | /* 18689 */ // (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] }) |
| 7605 | /* 18689 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 7606 | /* 18692 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7607 | /* 18696 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7608 | /* 18701 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 7609 | /* 18705 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7610 | /* 18710 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 7611 | /* 18713 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7612 | /* 18717 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7613 | /* 18722 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7614 | /* 18726 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7615 | /* 18731 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 7616 | /* 18734 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 7617 | /* 18738 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7618 | /* 18743 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7619 | /* 18746 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 7620 | /* 18749 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7621 | /* 18751 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7622 | /* 18754 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7623 | /* 18756 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7624 | /* 18759 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 7625 | /* 18764 */ // GIR_Coverage, 19488, |
| 7626 | /* 18764 */ GIR_EraseRootFromParent_Done, |
| 7627 | /* 18765 */ // Label 533: @18765 |
| 7628 | /* 18765 */ GIM_Try, /*On fail goto*//*Label 534*/ GIMT_Encode4(18885), // Rule ID 25451 // |
| 7629 | /* 18770 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 7630 | /* 18774 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7631 | /* 18778 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7632 | /* 18782 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 7633 | /* 18786 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 7634 | /* 18790 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 7635 | /* 18795 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 7636 | /* 18799 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 7637 | /* 18805 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 7638 | /* 18807 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 7639 | /* 18809 */ // (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] }) |
| 7640 | /* 18809 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 7641 | /* 18812 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7642 | /* 18816 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7643 | /* 18821 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 7644 | /* 18825 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7645 | /* 18830 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 7646 | /* 18833 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7647 | /* 18837 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7648 | /* 18842 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 7649 | /* 18846 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7650 | /* 18851 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 7651 | /* 18854 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 7652 | /* 18858 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7653 | /* 18863 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7654 | /* 18866 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 7655 | /* 18869 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7656 | /* 18871 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7657 | /* 18874 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7658 | /* 18876 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7659 | /* 18879 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 7660 | /* 18884 */ // GIR_Coverage, 25451, |
| 7661 | /* 18884 */ GIR_EraseRootFromParent_Done, |
| 7662 | /* 18885 */ // Label 534: @18885 |
| 7663 | /* 18885 */ GIM_Try, /*On fail goto*//*Label 535*/ GIMT_Encode4(18974), // Rule ID 19484 // |
| 7664 | /* 18890 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 7665 | /* 18894 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 7666 | /* 18898 */ // (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] }) |
| 7667 | /* 18898 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 7668 | /* 18901 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7669 | /* 18905 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7670 | /* 18910 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 7671 | /* 18914 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7672 | /* 18919 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 7673 | /* 18922 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7674 | /* 18926 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7675 | /* 18931 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 7676 | /* 18935 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 7677 | /* 18940 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 7678 | /* 18943 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 7679 | /* 18947 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7680 | /* 18952 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 7681 | /* 18955 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 7682 | /* 18958 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7683 | /* 18960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 7684 | /* 18963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7685 | /* 18965 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7686 | /* 18968 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 7687 | /* 18973 */ // GIR_Coverage, 19484, |
| 7688 | /* 18973 */ GIR_EraseRootFromParent_Done, |
| 7689 | /* 18974 */ // Label 535: @18974 |
| 7690 | /* 18974 */ GIM_Reject, |
| 7691 | /* 18975 */ // Label 532: @18975 |
| 7692 | /* 18975 */ GIM_Reject, |
| 7693 | /* 18976 */ // Label 435: @18976 |
| 7694 | /* 18976 */ GIM_Try, /*On fail goto*//*Label 536*/ GIMT_Encode4(19317), |
| 7695 | /* 18981 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 7696 | /* 18984 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 7697 | /* 18987 */ GIM_Try, /*On fail goto*//*Label 537*/ GIMT_Encode4(19049), // Rule ID 24249 // |
| 7698 | /* 18992 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7699 | /* 18995 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7700 | /* 18999 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7701 | /* 19003 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7702 | /* 19007 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7703 | /* 19010 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7704 | /* 19014 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7705 | /* 19018 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7706 | /* 19022 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7707 | /* 19024 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7708 | /* 19031 */ // (and:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPANDDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7709 | /* 19031 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZ128rm), |
| 7710 | /* 19034 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7711 | /* 19036 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7712 | /* 19038 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7713 | /* 19042 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7714 | /* 19047 */ GIR_RootConstrainSelectedInstOperands, |
| 7715 | /* 19048 */ // GIR_Coverage, 24249, |
| 7716 | /* 19048 */ GIR_EraseRootFromParent_Done, |
| 7717 | /* 19049 */ // Label 537: @19049 |
| 7718 | /* 19049 */ GIM_Try, /*On fail goto*//*Label 538*/ GIMT_Encode4(19111), // Rule ID 25335 // |
| 7719 | /* 19054 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 7720 | /* 19057 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7721 | /* 19061 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7722 | /* 19065 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7723 | /* 19069 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7724 | /* 19072 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7725 | /* 19076 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7726 | /* 19080 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7727 | /* 19084 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7728 | /* 19086 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7729 | /* 19093 */ // (and:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPANDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7730 | /* 19093 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 7731 | /* 19096 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7732 | /* 19098 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7733 | /* 19100 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7734 | /* 19104 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7735 | /* 19109 */ GIR_RootConstrainSelectedInstOperands, |
| 7736 | /* 19110 */ // GIR_Coverage, 25335, |
| 7737 | /* 19110 */ GIR_EraseRootFromParent_Done, |
| 7738 | /* 19111 */ // Label 538: @19111 |
| 7739 | /* 19111 */ GIM_Try, /*On fail goto*//*Label 539*/ GIMT_Encode4(19173), // Rule ID 5738 // |
| 7740 | /* 19116 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7741 | /* 19119 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7742 | /* 19123 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7743 | /* 19127 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7744 | /* 19131 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7745 | /* 19135 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7746 | /* 19138 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7747 | /* 19142 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7748 | /* 19146 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7749 | /* 19148 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7750 | /* 19155 */ // (and:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7751 | /* 19155 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZ128rm), |
| 7752 | /* 19158 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7753 | /* 19160 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7754 | /* 19162 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7755 | /* 19166 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7756 | /* 19171 */ GIR_RootConstrainSelectedInstOperands, |
| 7757 | /* 19172 */ // GIR_Coverage, 5738, |
| 7758 | /* 19172 */ GIR_EraseRootFromParent_Done, |
| 7759 | /* 19173 */ // Label 539: @19173 |
| 7760 | /* 19173 */ GIM_Try, /*On fail goto*//*Label 540*/ GIMT_Encode4(19235), // Rule ID 18150 // |
| 7761 | /* 19178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 7762 | /* 19181 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7763 | /* 19185 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7764 | /* 19189 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7765 | /* 19193 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7766 | /* 19197 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7767 | /* 19200 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7768 | /* 19204 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7769 | /* 19208 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7770 | /* 19210 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7771 | /* 19217 */ // (and:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7772 | /* 19217 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 7773 | /* 19220 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7774 | /* 19222 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7775 | /* 19224 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7776 | /* 19228 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7777 | /* 19233 */ GIR_RootConstrainSelectedInstOperands, |
| 7778 | /* 19234 */ // GIR_Coverage, 18150, |
| 7779 | /* 19234 */ GIR_EraseRootFromParent_Done, |
| 7780 | /* 19235 */ // Label 540: @19235 |
| 7781 | /* 19235 */ GIM_Try, /*On fail goto*//*Label 541*/ GIMT_Encode4(19262), // Rule ID 5735 // |
| 7782 | /* 19240 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7783 | /* 19243 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7784 | /* 19247 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7785 | /* 19251 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 7786 | /* 19255 */ // (and:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPANDDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 7787 | /* 19255 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDDZ128rr), |
| 7788 | /* 19260 */ GIR_RootConstrainSelectedInstOperands, |
| 7789 | /* 19261 */ // GIR_Coverage, 5735, |
| 7790 | /* 19261 */ GIR_Done, |
| 7791 | /* 19262 */ // Label 541: @19262 |
| 7792 | /* 19262 */ GIM_Try, /*On fail goto*//*Label 542*/ GIMT_Encode4(19289), // Rule ID 18138 // |
| 7793 | /* 19267 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 7794 | /* 19270 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7795 | /* 19274 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7796 | /* 19278 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7797 | /* 19282 */ // (and:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPANDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 7798 | /* 19282 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDrr), |
| 7799 | /* 19287 */ GIR_RootConstrainSelectedInstOperands, |
| 7800 | /* 19288 */ // GIR_Coverage, 18138, |
| 7801 | /* 19288 */ GIR_Done, |
| 7802 | /* 19289 */ // Label 542: @19289 |
| 7803 | /* 19289 */ GIM_Try, /*On fail goto*//*Label 543*/ GIMT_Encode4(19316), // Rule ID 18162 // |
| 7804 | /* 19294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 7805 | /* 19297 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7806 | /* 19301 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7807 | /* 19305 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 7808 | /* 19309 */ // (and:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PANDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 7809 | /* 19309 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PANDrr), |
| 7810 | /* 19314 */ GIR_RootConstrainSelectedInstOperands, |
| 7811 | /* 19315 */ // GIR_Coverage, 18162, |
| 7812 | /* 19315 */ GIR_Done, |
| 7813 | /* 19316 */ // Label 543: @19316 |
| 7814 | /* 19316 */ GIM_Reject, |
| 7815 | /* 19317 */ // Label 536: @19317 |
| 7816 | /* 19317 */ GIM_Reject, |
| 7817 | /* 19318 */ // Label 436: @19318 |
| 7818 | /* 19318 */ GIM_Try, /*On fail goto*//*Label 544*/ GIMT_Encode4(19783), |
| 7819 | /* 19323 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 7820 | /* 19326 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 7821 | /* 19329 */ GIM_Try, /*On fail goto*//*Label 545*/ GIMT_Encode4(19391), // Rule ID 23444 // |
| 7822 | /* 19334 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 7823 | /* 19337 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7824 | /* 19341 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7825 | /* 19345 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7826 | /* 19349 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7827 | /* 19352 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7828 | /* 19356 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7829 | /* 19360 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7830 | /* 19364 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7831 | /* 19366 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7832 | /* 19373 */ // (and:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VPANDYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7833 | /* 19373 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 7834 | /* 19376 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7835 | /* 19378 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7836 | /* 19380 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7837 | /* 19384 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7838 | /* 19389 */ GIR_RootConstrainSelectedInstOperands, |
| 7839 | /* 19390 */ // GIR_Coverage, 23444, |
| 7840 | /* 19390 */ GIR_EraseRootFromParent_Done, |
| 7841 | /* 19391 */ // Label 545: @19391 |
| 7842 | /* 19391 */ GIM_Try, /*On fail goto*//*Label 546*/ GIMT_Encode4(19453), // Rule ID 24225 // |
| 7843 | /* 19396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7844 | /* 19399 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 7845 | /* 19403 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7846 | /* 19407 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7847 | /* 19411 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7848 | /* 19414 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7849 | /* 19418 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7850 | /* 19422 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 7851 | /* 19426 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7852 | /* 19428 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7853 | /* 19435 */ // (and:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPANDQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7854 | /* 19435 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 7855 | /* 19438 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7856 | /* 19440 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7857 | /* 19442 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7858 | /* 19446 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7859 | /* 19451 */ GIR_RootConstrainSelectedInstOperands, |
| 7860 | /* 19452 */ // GIR_Coverage, 24225, |
| 7861 | /* 19452 */ GIR_EraseRootFromParent_Done, |
| 7862 | /* 19453 */ // Label 546: @19453 |
| 7863 | /* 19453 */ GIM_Try, /*On fail goto*//*Label 547*/ GIMT_Encode4(19515), // Rule ID 25324 // |
| 7864 | /* 19458 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 7865 | /* 19461 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7866 | /* 19465 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7867 | /* 19469 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7868 | /* 19473 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7869 | /* 19476 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7870 | /* 19480 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7871 | /* 19484 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7872 | /* 19488 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7873 | /* 19490 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7874 | /* 19497 */ // (and:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VANDPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7875 | /* 19497 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 7876 | /* 19500 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7877 | /* 19502 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 7878 | /* 19504 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7879 | /* 19508 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7880 | /* 19513 */ GIR_RootConstrainSelectedInstOperands, |
| 7881 | /* 19514 */ // GIR_Coverage, 25324, |
| 7882 | /* 19514 */ GIR_EraseRootFromParent_Done, |
| 7883 | /* 19515 */ // Label 547: @19515 |
| 7884 | /* 19515 */ GIM_Try, /*On fail goto*//*Label 548*/ GIMT_Encode4(19577), // Rule ID 2115 // |
| 7885 | /* 19520 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 7886 | /* 19523 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7887 | /* 19527 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7888 | /* 19531 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7889 | /* 19535 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7890 | /* 19539 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7891 | /* 19542 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7892 | /* 19546 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7893 | /* 19550 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7894 | /* 19552 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7895 | /* 19559 */ // (and:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7896 | /* 19559 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 7897 | /* 19562 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7898 | /* 19564 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7899 | /* 19566 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7900 | /* 19570 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7901 | /* 19575 */ GIR_RootConstrainSelectedInstOperands, |
| 7902 | /* 19576 */ // GIR_Coverage, 2115, |
| 7903 | /* 19576 */ GIR_EraseRootFromParent_Done, |
| 7904 | /* 19577 */ // Label 548: @19577 |
| 7905 | /* 19577 */ GIM_Try, /*On fail goto*//*Label 549*/ GIMT_Encode4(19639), // Rule ID 5702 // |
| 7906 | /* 19582 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7907 | /* 19585 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 7908 | /* 19589 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 7909 | /* 19593 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7910 | /* 19597 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7911 | /* 19601 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7912 | /* 19604 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7913 | /* 19608 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7914 | /* 19612 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7915 | /* 19614 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7916 | /* 19621 */ // (and:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7917 | /* 19621 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 7918 | /* 19624 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7919 | /* 19626 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7920 | /* 19628 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7921 | /* 19632 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7922 | /* 19637 */ GIR_RootConstrainSelectedInstOperands, |
| 7923 | /* 19638 */ // GIR_Coverage, 5702, |
| 7924 | /* 19638 */ GIR_EraseRootFromParent_Done, |
| 7925 | /* 19639 */ // Label 549: @19639 |
| 7926 | /* 19639 */ GIM_Try, /*On fail goto*//*Label 550*/ GIMT_Encode4(19701), // Rule ID 18123 // |
| 7927 | /* 19644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 7928 | /* 19647 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7929 | /* 19651 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7930 | /* 19655 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7931 | /* 19659 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 7932 | /* 19663 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 7933 | /* 19666 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 7934 | /* 19670 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 7935 | /* 19674 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7936 | /* 19676 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 7937 | /* 19683 */ // (and:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VANDPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 7938 | /* 19683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 7939 | /* 19686 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 7940 | /* 19688 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 7941 | /* 19690 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 7942 | /* 19694 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 7943 | /* 19699 */ GIR_RootConstrainSelectedInstOperands, |
| 7944 | /* 19700 */ // GIR_Coverage, 18123, |
| 7945 | /* 19700 */ GIR_EraseRootFromParent_Done, |
| 7946 | /* 19701 */ // Label 550: @19701 |
| 7947 | /* 19701 */ GIM_Try, /*On fail goto*//*Label 551*/ GIMT_Encode4(19728), // Rule ID 2114 // |
| 7948 | /* 19706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 7949 | /* 19709 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7950 | /* 19713 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7951 | /* 19717 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7952 | /* 19721 */ // (and:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPANDYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 7953 | /* 19721 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDYrr), |
| 7954 | /* 19726 */ GIR_RootConstrainSelectedInstOperands, |
| 7955 | /* 19727 */ // GIR_Coverage, 2114, |
| 7956 | /* 19727 */ GIR_Done, |
| 7957 | /* 19728 */ // Label 551: @19728 |
| 7958 | /* 19728 */ GIM_Try, /*On fail goto*//*Label 552*/ GIMT_Encode4(19755), // Rule ID 5699 // |
| 7959 | /* 19733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 7960 | /* 19736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 7961 | /* 19740 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 7962 | /* 19744 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 7963 | /* 19748 */ // (and:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPANDQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 7964 | /* 19748 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rr), |
| 7965 | /* 19753 */ GIR_RootConstrainSelectedInstOperands, |
| 7966 | /* 19754 */ // GIR_Coverage, 5699, |
| 7967 | /* 19754 */ GIR_Done, |
| 7968 | /* 19755 */ // Label 552: @19755 |
| 7969 | /* 19755 */ GIM_Try, /*On fail goto*//*Label 553*/ GIMT_Encode4(19782), // Rule ID 18107 // |
| 7970 | /* 19760 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 7971 | /* 19763 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7972 | /* 19767 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7973 | /* 19771 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 7974 | /* 19775 */ // (and:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VANDPSYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 7975 | /* 19775 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VANDPSYrr), |
| 7976 | /* 19780 */ GIR_RootConstrainSelectedInstOperands, |
| 7977 | /* 19781 */ // GIR_Coverage, 18107, |
| 7978 | /* 19781 */ GIR_Done, |
| 7979 | /* 19782 */ // Label 553: @19782 |
| 7980 | /* 19782 */ GIM_Reject, |
| 7981 | /* 19783 */ // Label 544: @19783 |
| 7982 | /* 19783 */ GIM_Reject, |
| 7983 | /* 19784 */ // Label 437: @19784 |
| 7984 | /* 19784 */ GIM_Try, /*On fail goto*//*Label 554*/ GIMT_Encode4(20281), |
| 7985 | /* 19789 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 7986 | /* 19792 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 7987 | /* 19795 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 7988 | /* 19799 */ GIM_Try, /*On fail goto*//*Label 555*/ GIMT_Encode4(19859), // Rule ID 4433 // |
| 7989 | /* 19804 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 7990 | /* 19807 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 7991 | /* 19811 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 7992 | /* 19815 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 7993 | /* 19819 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 7994 | /* 19823 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 7995 | /* 19828 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 7996 | /* 19832 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 7997 | /* 19838 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 7998 | /* 19840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 7999 | /* 19844 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8000 | /* 19846 */ // (and:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] }), VK8:{ *:[v8i1] }:$src2) => (KANDNBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 8001 | /* 19846 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNBkk), |
| 8002 | /* 19849 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8003 | /* 19851 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8004 | /* 19855 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 8005 | /* 19857 */ GIR_RootConstrainSelectedInstOperands, |
| 8006 | /* 19858 */ // GIR_Coverage, 4433, |
| 8007 | /* 19858 */ GIR_EraseRootFromParent_Done, |
| 8008 | /* 19859 */ // Label 555: @19859 |
| 8009 | /* 19859 */ GIM_Try, /*On fail goto*//*Label 556*/ GIMT_Encode4(19982), // Rule ID 19485 // |
| 8010 | /* 19864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 8011 | /* 19867 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8012 | /* 19871 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8013 | /* 19875 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 8014 | /* 19879 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 8015 | /* 19883 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8016 | /* 19888 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8017 | /* 19892 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8018 | /* 19898 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8019 | /* 19900 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8020 | /* 19904 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8021 | /* 19906 */ // (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] }) |
| 8022 | /* 19906 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8023 | /* 19909 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8024 | /* 19913 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8025 | /* 19918 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 8026 | /* 19922 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8027 | /* 19927 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8028 | /* 19930 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8029 | /* 19934 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8030 | /* 19939 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8031 | /* 19943 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8032 | /* 19948 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8033 | /* 19951 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8034 | /* 19955 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8035 | /* 19960 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8036 | /* 19963 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8037 | /* 19966 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8038 | /* 19968 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8039 | /* 19971 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8040 | /* 19973 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8041 | /* 19976 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 8042 | /* 19981 */ // GIR_Coverage, 19485, |
| 8043 | /* 19981 */ GIR_EraseRootFromParent_Done, |
| 8044 | /* 19982 */ // Label 556: @19982 |
| 8045 | /* 19982 */ GIM_Try, /*On fail goto*//*Label 557*/ GIMT_Encode4(20042), // Rule ID 23774 // |
| 8046 | /* 19987 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 8047 | /* 19990 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8048 | /* 19994 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8049 | /* 19998 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8050 | /* 20002 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 8051 | /* 20006 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 8052 | /* 20010 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8053 | /* 20015 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8054 | /* 20019 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8055 | /* 20025 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8056 | /* 20027 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8057 | /* 20029 */ // (and:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src2, (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] })) => (KANDNBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 8058 | /* 20029 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNBkk), |
| 8059 | /* 20032 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8060 | /* 20034 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8061 | /* 20038 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 8062 | /* 20040 */ GIR_RootConstrainSelectedInstOperands, |
| 8063 | /* 20041 */ // GIR_Coverage, 23774, |
| 8064 | /* 20041 */ GIR_EraseRootFromParent_Done, |
| 8065 | /* 20042 */ // Label 557: @20042 |
| 8066 | /* 20042 */ GIM_Try, /*On fail goto*//*Label 558*/ GIMT_Encode4(20165), // Rule ID 25448 // |
| 8067 | /* 20047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 8068 | /* 20050 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8069 | /* 20054 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8070 | /* 20058 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8071 | /* 20062 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 8072 | /* 20066 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 8073 | /* 20070 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8074 | /* 20075 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8075 | /* 20079 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8076 | /* 20085 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8077 | /* 20087 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8078 | /* 20089 */ // (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] }) |
| 8079 | /* 20089 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8080 | /* 20092 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8081 | /* 20096 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8082 | /* 20101 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 8083 | /* 20105 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8084 | /* 20110 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8085 | /* 20113 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8086 | /* 20117 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8087 | /* 20122 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8088 | /* 20126 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8089 | /* 20131 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8090 | /* 20134 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8091 | /* 20138 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8092 | /* 20143 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8093 | /* 20146 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8094 | /* 20149 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8095 | /* 20151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8096 | /* 20154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8097 | /* 20156 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8098 | /* 20159 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 8099 | /* 20164 */ // GIR_Coverage, 25448, |
| 8100 | /* 20164 */ GIR_EraseRootFromParent_Done, |
| 8101 | /* 20165 */ // Label 558: @20165 |
| 8102 | /* 20165 */ GIM_Try, /*On fail goto*//*Label 559*/ GIMT_Encode4(20188), // Rule ID 4417 // |
| 8103 | /* 20170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 8104 | /* 20173 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8105 | /* 20177 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8106 | /* 20181 */ // (and:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (KANDBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 8107 | /* 20181 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KANDBkk), |
| 8108 | /* 20186 */ GIR_RootConstrainSelectedInstOperands, |
| 8109 | /* 20187 */ // GIR_Coverage, 4417, |
| 8110 | /* 20187 */ GIR_Done, |
| 8111 | /* 20188 */ // Label 559: @20188 |
| 8112 | /* 20188 */ GIM_Try, /*On fail goto*//*Label 560*/ GIMT_Encode4(20280), // Rule ID 19481 // |
| 8113 | /* 20193 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 8114 | /* 20196 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8115 | /* 20200 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 8116 | /* 20204 */ // (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] }) |
| 8117 | /* 20204 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 8118 | /* 20207 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8119 | /* 20211 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8120 | /* 20216 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 8121 | /* 20220 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8122 | /* 20225 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 8123 | /* 20228 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8124 | /* 20232 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8125 | /* 20237 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 8126 | /* 20241 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 8127 | /* 20246 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 8128 | /* 20249 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 8129 | /* 20253 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 8130 | /* 20258 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 8131 | /* 20261 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 8132 | /* 20264 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 8133 | /* 20266 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 8134 | /* 20269 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8135 | /* 20271 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 8136 | /* 20274 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 8137 | /* 20279 */ // GIR_Coverage, 19481, |
| 8138 | /* 20279 */ GIR_EraseRootFromParent_Done, |
| 8139 | /* 20280 */ // Label 560: @20280 |
| 8140 | /* 20280 */ GIM_Reject, |
| 8141 | /* 20281 */ // Label 554: @20281 |
| 8142 | /* 20281 */ GIM_Reject, |
| 8143 | /* 20282 */ // Label 438: @20282 |
| 8144 | /* 20282 */ GIM_Try, /*On fail goto*//*Label 561*/ GIMT_Encode4(20623), |
| 8145 | /* 20287 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 8146 | /* 20290 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8147 | /* 20293 */ GIM_Try, /*On fail goto*//*Label 562*/ GIMT_Encode4(20355), // Rule ID 25334 // |
| 8148 | /* 20298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8149 | /* 20301 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8150 | /* 20305 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8151 | /* 20309 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8152 | /* 20313 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8153 | /* 20316 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8154 | /* 20320 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8155 | /* 20324 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8156 | /* 20328 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8157 | /* 20330 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8158 | /* 20337 */ // (and:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPANDrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8159 | /* 20337 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8160 | /* 20340 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8161 | /* 20342 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8162 | /* 20344 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8163 | /* 20348 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8164 | /* 20353 */ GIR_RootConstrainSelectedInstOperands, |
| 8165 | /* 20354 */ // GIR_Coverage, 25334, |
| 8166 | /* 20354 */ GIR_EraseRootFromParent_Done, |
| 8167 | /* 20355 */ // Label 562: @20355 |
| 8168 | /* 20355 */ GIM_Try, /*On fail goto*//*Label 563*/ GIMT_Encode4(20417), // Rule ID 25515 // |
| 8169 | /* 20360 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8170 | /* 20363 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8171 | /* 20367 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8172 | /* 20371 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8173 | /* 20375 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8174 | /* 20378 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8175 | /* 20382 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8176 | /* 20386 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8177 | /* 20390 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8178 | /* 20392 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8179 | /* 20399 */ // (and:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPANDQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8180 | /* 20399 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 8181 | /* 20402 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8182 | /* 20404 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8183 | /* 20406 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8184 | /* 20410 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8185 | /* 20415 */ GIR_RootConstrainSelectedInstOperands, |
| 8186 | /* 20416 */ // GIR_Coverage, 25515, |
| 8187 | /* 20416 */ GIR_EraseRootFromParent_Done, |
| 8188 | /* 20417 */ // Label 563: @20417 |
| 8189 | /* 20417 */ GIM_Try, /*On fail goto*//*Label 564*/ GIMT_Encode4(20479), // Rule ID 18149 // |
| 8190 | /* 20422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8191 | /* 20425 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8192 | /* 20429 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8193 | /* 20433 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8194 | /* 20437 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8195 | /* 20441 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8196 | /* 20444 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8197 | /* 20448 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8198 | /* 20452 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8199 | /* 20454 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8200 | /* 20461 */ // (and:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8201 | /* 20461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8202 | /* 20464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8203 | /* 20466 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8204 | /* 20468 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8205 | /* 20472 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8206 | /* 20477 */ GIR_RootConstrainSelectedInstOperands, |
| 8207 | /* 20478 */ // GIR_Coverage, 18149, |
| 8208 | /* 20478 */ GIR_EraseRootFromParent_Done, |
| 8209 | /* 20479 */ // Label 564: @20479 |
| 8210 | /* 20479 */ GIM_Try, /*On fail goto*//*Label 565*/ GIMT_Encode4(20541), // Rule ID 20034 // |
| 8211 | /* 20484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8212 | /* 20487 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8213 | /* 20491 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8214 | /* 20495 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8215 | /* 20499 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8216 | /* 20503 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8217 | /* 20506 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8218 | /* 20510 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8219 | /* 20514 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8220 | /* 20516 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8221 | /* 20523 */ // (and:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8222 | /* 20523 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 8223 | /* 20526 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8224 | /* 20528 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8225 | /* 20530 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8226 | /* 20534 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8227 | /* 20539 */ GIR_RootConstrainSelectedInstOperands, |
| 8228 | /* 20540 */ // GIR_Coverage, 20034, |
| 8229 | /* 20540 */ GIR_EraseRootFromParent_Done, |
| 8230 | /* 20541 */ // Label 565: @20541 |
| 8231 | /* 20541 */ GIM_Try, /*On fail goto*//*Label 566*/ GIMT_Encode4(20568), // Rule ID 18137 // |
| 8232 | /* 20546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8233 | /* 20549 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8234 | /* 20553 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8235 | /* 20557 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8236 | /* 20561 */ // (and:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPANDrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 8237 | /* 20561 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDrr), |
| 8238 | /* 20566 */ GIR_RootConstrainSelectedInstOperands, |
| 8239 | /* 20567 */ // GIR_Coverage, 18137, |
| 8240 | /* 20567 */ GIR_Done, |
| 8241 | /* 20568 */ // Label 566: @20568 |
| 8242 | /* 20568 */ GIM_Try, /*On fail goto*//*Label 567*/ GIMT_Encode4(20595), // Rule ID 18161 // |
| 8243 | /* 20573 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 8244 | /* 20576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8245 | /* 20580 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8246 | /* 20584 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8247 | /* 20588 */ // (and:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PANDrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 8248 | /* 20588 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PANDrr), |
| 8249 | /* 20593 */ GIR_RootConstrainSelectedInstOperands, |
| 8250 | /* 20594 */ // GIR_Coverage, 18161, |
| 8251 | /* 20594 */ GIR_Done, |
| 8252 | /* 20595 */ // Label 567: @20595 |
| 8253 | /* 20595 */ GIM_Try, /*On fail goto*//*Label 568*/ GIMT_Encode4(20622), // Rule ID 20026 // |
| 8254 | /* 20600 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8255 | /* 20603 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8256 | /* 20607 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8257 | /* 20611 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8258 | /* 20615 */ // (and:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPANDQZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 8259 | /* 20615 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rr), |
| 8260 | /* 20620 */ GIR_RootConstrainSelectedInstOperands, |
| 8261 | /* 20621 */ // GIR_Coverage, 20026, |
| 8262 | /* 20621 */ GIR_Done, |
| 8263 | /* 20622 */ // Label 568: @20622 |
| 8264 | /* 20622 */ GIM_Reject, |
| 8265 | /* 20623 */ // Label 561: @20623 |
| 8266 | /* 20623 */ GIM_Reject, |
| 8267 | /* 20624 */ // Label 439: @20624 |
| 8268 | /* 20624 */ GIM_Try, /*On fail goto*//*Label 569*/ GIMT_Encode4(21089), |
| 8269 | /* 20629 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 8270 | /* 20632 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 8271 | /* 20635 */ GIM_Try, /*On fail goto*//*Label 570*/ GIMT_Encode4(20697), // Rule ID 24243 // |
| 8272 | /* 20640 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8273 | /* 20643 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8274 | /* 20647 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8275 | /* 20651 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8276 | /* 20655 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8277 | /* 20658 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8278 | /* 20662 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8279 | /* 20666 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8280 | /* 20670 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8281 | /* 20672 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8282 | /* 20679 */ // (and:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPANDDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8283 | /* 20679 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZ256rm), |
| 8284 | /* 20682 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8285 | /* 20684 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8286 | /* 20686 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8287 | /* 20690 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8288 | /* 20695 */ GIR_RootConstrainSelectedInstOperands, |
| 8289 | /* 20696 */ // GIR_Coverage, 24243, |
| 8290 | /* 20696 */ GIR_EraseRootFromParent_Done, |
| 8291 | /* 20697 */ // Label 570: @20697 |
| 8292 | /* 20697 */ GIM_Try, /*On fail goto*//*Label 571*/ GIMT_Encode4(20759), // Rule ID 25314 // |
| 8293 | /* 20702 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8294 | /* 20705 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8295 | /* 20709 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8296 | /* 20713 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8297 | /* 20717 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8298 | /* 20720 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8299 | /* 20724 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8300 | /* 20728 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8301 | /* 20732 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8302 | /* 20734 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8303 | /* 20741 */ // (and:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPANDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8304 | /* 20741 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8305 | /* 20744 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8306 | /* 20746 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8307 | /* 20748 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8308 | /* 20752 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8309 | /* 20757 */ GIR_RootConstrainSelectedInstOperands, |
| 8310 | /* 20758 */ // GIR_Coverage, 25314, |
| 8311 | /* 20758 */ GIR_EraseRootFromParent_Done, |
| 8312 | /* 20759 */ // Label 571: @20759 |
| 8313 | /* 20759 */ GIM_Try, /*On fail goto*//*Label 572*/ GIMT_Encode4(20821), // Rule ID 25323 // |
| 8314 | /* 20764 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8315 | /* 20767 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8316 | /* 20771 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8317 | /* 20775 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8318 | /* 20779 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8319 | /* 20782 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8320 | /* 20786 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8321 | /* 20790 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8322 | /* 20794 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8323 | /* 20796 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8324 | /* 20803 */ // (and:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VANDPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8325 | /* 20803 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8326 | /* 20806 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8327 | /* 20808 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8328 | /* 20810 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8329 | /* 20814 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8330 | /* 20819 */ GIR_RootConstrainSelectedInstOperands, |
| 8331 | /* 20820 */ // GIR_Coverage, 25323, |
| 8332 | /* 20820 */ GIR_EraseRootFromParent_Done, |
| 8333 | /* 20821 */ // Label 572: @20821 |
| 8334 | /* 20821 */ GIM_Try, /*On fail goto*//*Label 573*/ GIMT_Encode4(20883), // Rule ID 5729 // |
| 8335 | /* 20826 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8336 | /* 20829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8337 | /* 20833 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8338 | /* 20837 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8339 | /* 20841 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8340 | /* 20845 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8341 | /* 20848 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8342 | /* 20852 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8343 | /* 20856 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8344 | /* 20858 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8345 | /* 20865 */ // (and:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8346 | /* 20865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZ256rm), |
| 8347 | /* 20868 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8348 | /* 20870 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8349 | /* 20872 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8350 | /* 20876 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8351 | /* 20881 */ GIR_RootConstrainSelectedInstOperands, |
| 8352 | /* 20882 */ // GIR_Coverage, 5729, |
| 8353 | /* 20882 */ GIR_EraseRootFromParent_Done, |
| 8354 | /* 20883 */ // Label 573: @20883 |
| 8355 | /* 20883 */ GIM_Try, /*On fail goto*//*Label 574*/ GIMT_Encode4(20945), // Rule ID 18094 // |
| 8356 | /* 20888 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8357 | /* 20891 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8358 | /* 20895 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8359 | /* 20899 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8360 | /* 20903 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8361 | /* 20907 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8362 | /* 20910 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8363 | /* 20914 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8364 | /* 20918 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8365 | /* 20920 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8366 | /* 20927 */ // (and:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8367 | /* 20927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8368 | /* 20930 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8369 | /* 20932 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8370 | /* 20934 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8371 | /* 20938 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8372 | /* 20943 */ GIR_RootConstrainSelectedInstOperands, |
| 8373 | /* 20944 */ // GIR_Coverage, 18094, |
| 8374 | /* 20944 */ GIR_EraseRootFromParent_Done, |
| 8375 | /* 20945 */ // Label 574: @20945 |
| 8376 | /* 20945 */ GIM_Try, /*On fail goto*//*Label 575*/ GIMT_Encode4(21007), // Rule ID 18122 // |
| 8377 | /* 20950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8378 | /* 20953 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8379 | /* 20957 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8380 | /* 20961 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8381 | /* 20965 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8382 | /* 20969 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8383 | /* 20972 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8384 | /* 20976 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8385 | /* 20980 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8386 | /* 20982 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8387 | /* 20989 */ // (and:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VANDPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8388 | /* 20989 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8389 | /* 20992 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8390 | /* 20994 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8391 | /* 20996 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8392 | /* 21000 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8393 | /* 21005 */ GIR_RootConstrainSelectedInstOperands, |
| 8394 | /* 21006 */ // GIR_Coverage, 18122, |
| 8395 | /* 21006 */ GIR_EraseRootFromParent_Done, |
| 8396 | /* 21007 */ // Label 575: @21007 |
| 8397 | /* 21007 */ GIM_Try, /*On fail goto*//*Label 576*/ GIMT_Encode4(21034), // Rule ID 5726 // |
| 8398 | /* 21012 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 8399 | /* 21015 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8400 | /* 21019 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8401 | /* 21023 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8402 | /* 21027 */ // (and:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPANDDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 8403 | /* 21027 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDDZ256rr), |
| 8404 | /* 21032 */ GIR_RootConstrainSelectedInstOperands, |
| 8405 | /* 21033 */ // GIR_Coverage, 5726, |
| 8406 | /* 21033 */ GIR_Done, |
| 8407 | /* 21034 */ // Label 576: @21034 |
| 8408 | /* 21034 */ GIM_Try, /*On fail goto*//*Label 577*/ GIMT_Encode4(21061), // Rule ID 18082 // |
| 8409 | /* 21039 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8410 | /* 21042 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8411 | /* 21046 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8412 | /* 21050 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8413 | /* 21054 */ // (and:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPANDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 8414 | /* 21054 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDYrr), |
| 8415 | /* 21059 */ GIR_RootConstrainSelectedInstOperands, |
| 8416 | /* 21060 */ // GIR_Coverage, 18082, |
| 8417 | /* 21060 */ GIR_Done, |
| 8418 | /* 21061 */ // Label 577: @21061 |
| 8419 | /* 21061 */ GIM_Try, /*On fail goto*//*Label 578*/ GIMT_Encode4(21088), // Rule ID 18106 // |
| 8420 | /* 21066 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8421 | /* 21069 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8422 | /* 21073 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8423 | /* 21077 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8424 | /* 21081 */ // (and:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VANDPSYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 8425 | /* 21081 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VANDPSYrr), |
| 8426 | /* 21086 */ GIR_RootConstrainSelectedInstOperands, |
| 8427 | /* 21087 */ // GIR_Coverage, 18106, |
| 8428 | /* 21087 */ GIR_Done, |
| 8429 | /* 21088 */ // Label 578: @21088 |
| 8430 | /* 21088 */ GIM_Reject, |
| 8431 | /* 21089 */ // Label 569: @21089 |
| 8432 | /* 21089 */ GIM_Reject, |
| 8433 | /* 21090 */ // Label 440: @21090 |
| 8434 | /* 21090 */ GIM_Try, /*On fail goto*//*Label 579*/ GIMT_Encode4(21245), |
| 8435 | /* 21095 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 8436 | /* 21098 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 8437 | /* 21101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8438 | /* 21105 */ GIM_Try, /*On fail goto*//*Label 580*/ GIMT_Encode4(21163), // Rule ID 24219 // |
| 8439 | /* 21110 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8440 | /* 21113 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8441 | /* 21117 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8442 | /* 21121 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8443 | /* 21124 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8444 | /* 21128 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8445 | /* 21132 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8446 | /* 21136 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8447 | /* 21138 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8448 | /* 21145 */ // (and:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPANDQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8449 | /* 21145 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 8450 | /* 21148 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8451 | /* 21150 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8452 | /* 21152 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8453 | /* 21156 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8454 | /* 21161 */ GIR_RootConstrainSelectedInstOperands, |
| 8455 | /* 21162 */ // GIR_Coverage, 24219, |
| 8456 | /* 21162 */ GIR_EraseRootFromParent_Done, |
| 8457 | /* 21163 */ // Label 580: @21163 |
| 8458 | /* 21163 */ GIM_Try, /*On fail goto*//*Label 581*/ GIMT_Encode4(21221), // Rule ID 5693 // |
| 8459 | /* 21168 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8460 | /* 21171 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8461 | /* 21175 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8462 | /* 21179 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8463 | /* 21183 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8464 | /* 21186 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8465 | /* 21190 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8466 | /* 21194 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8467 | /* 21196 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8468 | /* 21203 */ // (and:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8469 | /* 21203 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 8470 | /* 21206 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8471 | /* 21208 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8472 | /* 21210 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8473 | /* 21214 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8474 | /* 21219 */ GIR_RootConstrainSelectedInstOperands, |
| 8475 | /* 21220 */ // GIR_Coverage, 5693, |
| 8476 | /* 21220 */ GIR_EraseRootFromParent_Done, |
| 8477 | /* 21221 */ // Label 581: @21221 |
| 8478 | /* 21221 */ GIM_Try, /*On fail goto*//*Label 582*/ GIMT_Encode4(21244), // Rule ID 5690 // |
| 8479 | /* 21226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8480 | /* 21229 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8481 | /* 21233 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8482 | /* 21237 */ // (and:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPANDQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 8483 | /* 21237 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZrr), |
| 8484 | /* 21242 */ GIR_RootConstrainSelectedInstOperands, |
| 8485 | /* 21243 */ // GIR_Coverage, 5690, |
| 8486 | /* 21243 */ GIR_Done, |
| 8487 | /* 21244 */ // Label 582: @21244 |
| 8488 | /* 21244 */ GIM_Reject, |
| 8489 | /* 21245 */ // Label 579: @21245 |
| 8490 | /* 21245 */ GIM_Reject, |
| 8491 | /* 21246 */ // Label 441: @21246 |
| 8492 | /* 21246 */ GIM_Try, /*On fail goto*//*Label 583*/ GIMT_Encode4(21405), |
| 8493 | /* 21251 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 8494 | /* 21254 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 8495 | /* 21257 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 8496 | /* 21261 */ GIM_Try, /*On fail goto*//*Label 584*/ GIMT_Encode4(21321), // Rule ID 4434 // |
| 8497 | /* 21266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8498 | /* 21269 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8499 | /* 21273 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8500 | /* 21277 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 8501 | /* 21281 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 8502 | /* 21285 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 8503 | /* 21290 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8504 | /* 21294 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8505 | /* 21300 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8506 | /* 21302 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 8507 | /* 21306 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8508 | /* 21308 */ // (and:{ *:[v16i1] } (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, immAllOnesV:{ *:[v16i1] }), VK16:{ *:[v16i1] }:$src2) => (KANDNWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 8509 | /* 21308 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8510 | /* 21311 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8511 | /* 21313 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8512 | /* 21317 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 8513 | /* 21319 */ GIR_RootConstrainSelectedInstOperands, |
| 8514 | /* 21320 */ // GIR_Coverage, 4434, |
| 8515 | /* 21320 */ GIR_EraseRootFromParent_Done, |
| 8516 | /* 21321 */ // Label 584: @21321 |
| 8517 | /* 21321 */ GIM_Try, /*On fail goto*//*Label 585*/ GIMT_Encode4(21381), // Rule ID 23775 // |
| 8518 | /* 21326 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8519 | /* 21329 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 8520 | /* 21333 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8521 | /* 21337 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8522 | /* 21341 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 8523 | /* 21345 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 8524 | /* 21349 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 8525 | /* 21354 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8526 | /* 21358 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8527 | /* 21364 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8528 | /* 21366 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8529 | /* 21368 */ // (and:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src2, (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, immAllOnesV:{ *:[v16i1] })) => (KANDNWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 8530 | /* 21368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNWkk), |
| 8531 | /* 21371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8532 | /* 21373 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8533 | /* 21377 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 8534 | /* 21379 */ GIR_RootConstrainSelectedInstOperands, |
| 8535 | /* 21380 */ // GIR_Coverage, 23775, |
| 8536 | /* 21380 */ GIR_EraseRootFromParent_Done, |
| 8537 | /* 21381 */ // Label 585: @21381 |
| 8538 | /* 21381 */ GIM_Try, /*On fail goto*//*Label 586*/ GIMT_Encode4(21404), // Rule ID 4418 // |
| 8539 | /* 21386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8540 | /* 21389 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 8541 | /* 21393 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 8542 | /* 21397 */ // (and:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) => (KANDWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 8543 | /* 21397 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KANDWkk), |
| 8544 | /* 21402 */ GIR_RootConstrainSelectedInstOperands, |
| 8545 | /* 21403 */ // GIR_Coverage, 4418, |
| 8546 | /* 21403 */ GIR_Done, |
| 8547 | /* 21404 */ // Label 586: @21404 |
| 8548 | /* 21404 */ GIM_Reject, |
| 8549 | /* 21405 */ // Label 583: @21405 |
| 8550 | /* 21405 */ GIM_Reject, |
| 8551 | /* 21406 */ // Label 442: @21406 |
| 8552 | /* 21406 */ GIM_Try, /*On fail goto*//*Label 587*/ GIMT_Encode4(21747), |
| 8553 | /* 21411 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 8554 | /* 21414 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 8555 | /* 21417 */ GIM_Try, /*On fail goto*//*Label 588*/ GIMT_Encode4(21479), // Rule ID 25333 // |
| 8556 | /* 21422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8557 | /* 21425 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8558 | /* 21429 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8559 | /* 21433 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8560 | /* 21437 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8561 | /* 21440 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8562 | /* 21444 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8563 | /* 21448 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8564 | /* 21452 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8565 | /* 21454 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8566 | /* 21461 */ // (and:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPANDrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8567 | /* 21461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8568 | /* 21464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8569 | /* 21466 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8570 | /* 21468 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8571 | /* 21472 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8572 | /* 21477 */ GIR_RootConstrainSelectedInstOperands, |
| 8573 | /* 21478 */ // GIR_Coverage, 25333, |
| 8574 | /* 21478 */ GIR_EraseRootFromParent_Done, |
| 8575 | /* 21479 */ // Label 588: @21479 |
| 8576 | /* 21479 */ GIM_Try, /*On fail goto*//*Label 589*/ GIMT_Encode4(21541), // Rule ID 25514 // |
| 8577 | /* 21484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8578 | /* 21487 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8579 | /* 21491 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8580 | /* 21495 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8581 | /* 21499 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8582 | /* 21502 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8583 | /* 21506 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8584 | /* 21510 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8585 | /* 21514 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8586 | /* 21516 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8587 | /* 21523 */ // (and:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPANDQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8588 | /* 21523 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 8589 | /* 21526 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8590 | /* 21528 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8591 | /* 21530 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8592 | /* 21534 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8593 | /* 21539 */ GIR_RootConstrainSelectedInstOperands, |
| 8594 | /* 21540 */ // GIR_Coverage, 25514, |
| 8595 | /* 21540 */ GIR_EraseRootFromParent_Done, |
| 8596 | /* 21541 */ // Label 589: @21541 |
| 8597 | /* 21541 */ GIM_Try, /*On fail goto*//*Label 590*/ GIMT_Encode4(21603), // Rule ID 18148 // |
| 8598 | /* 21546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8599 | /* 21549 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8600 | /* 21553 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8601 | /* 21557 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8602 | /* 21561 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8603 | /* 21565 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8604 | /* 21568 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8605 | /* 21572 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8606 | /* 21576 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8607 | /* 21578 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8608 | /* 21585 */ // (and:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8609 | /* 21585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDrm), |
| 8610 | /* 21588 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8611 | /* 21590 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8612 | /* 21592 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8613 | /* 21596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8614 | /* 21601 */ GIR_RootConstrainSelectedInstOperands, |
| 8615 | /* 21602 */ // GIR_Coverage, 18148, |
| 8616 | /* 21602 */ GIR_EraseRootFromParent_Done, |
| 8617 | /* 21603 */ // Label 590: @21603 |
| 8618 | /* 21603 */ GIM_Try, /*On fail goto*//*Label 591*/ GIMT_Encode4(21665), // Rule ID 20033 // |
| 8619 | /* 21608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8620 | /* 21611 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8621 | /* 21615 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8622 | /* 21619 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8623 | /* 21623 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8624 | /* 21627 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8625 | /* 21630 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8626 | /* 21634 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8627 | /* 21638 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8628 | /* 21640 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8629 | /* 21647 */ // (and:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8630 | /* 21647 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rm), |
| 8631 | /* 21650 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8632 | /* 21652 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8633 | /* 21654 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8634 | /* 21658 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8635 | /* 21663 */ GIR_RootConstrainSelectedInstOperands, |
| 8636 | /* 21664 */ // GIR_Coverage, 20033, |
| 8637 | /* 21664 */ GIR_EraseRootFromParent_Done, |
| 8638 | /* 21665 */ // Label 591: @21665 |
| 8639 | /* 21665 */ GIM_Try, /*On fail goto*//*Label 592*/ GIMT_Encode4(21692), // Rule ID 18136 // |
| 8640 | /* 21670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 8641 | /* 21673 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8642 | /* 21677 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8643 | /* 21681 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8644 | /* 21685 */ // (and:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPANDrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 8645 | /* 21685 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDrr), |
| 8646 | /* 21690 */ GIR_RootConstrainSelectedInstOperands, |
| 8647 | /* 21691 */ // GIR_Coverage, 18136, |
| 8648 | /* 21691 */ GIR_Done, |
| 8649 | /* 21692 */ // Label 592: @21692 |
| 8650 | /* 21692 */ GIM_Try, /*On fail goto*//*Label 593*/ GIMT_Encode4(21719), // Rule ID 18160 // |
| 8651 | /* 21697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 8652 | /* 21700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8653 | /* 21704 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8654 | /* 21708 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 8655 | /* 21712 */ // (and:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PANDrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 8656 | /* 21712 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PANDrr), |
| 8657 | /* 21717 */ GIR_RootConstrainSelectedInstOperands, |
| 8658 | /* 21718 */ // GIR_Coverage, 18160, |
| 8659 | /* 21718 */ GIR_Done, |
| 8660 | /* 21719 */ // Label 593: @21719 |
| 8661 | /* 21719 */ GIM_Try, /*On fail goto*//*Label 594*/ GIMT_Encode4(21746), // Rule ID 20025 // |
| 8662 | /* 21724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8663 | /* 21727 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8664 | /* 21731 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8665 | /* 21735 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 8666 | /* 21739 */ // (and:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPANDQZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 8667 | /* 21739 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ128rr), |
| 8668 | /* 21744 */ GIR_RootConstrainSelectedInstOperands, |
| 8669 | /* 21745 */ // GIR_Coverage, 20025, |
| 8670 | /* 21745 */ GIR_Done, |
| 8671 | /* 21746 */ // Label 594: @21746 |
| 8672 | /* 21746 */ GIM_Reject, |
| 8673 | /* 21747 */ // Label 587: @21747 |
| 8674 | /* 21747 */ GIM_Reject, |
| 8675 | /* 21748 */ // Label 443: @21748 |
| 8676 | /* 21748 */ GIM_Try, /*On fail goto*//*Label 595*/ GIMT_Encode4(22213), |
| 8677 | /* 21753 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 8678 | /* 21756 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 8679 | /* 21759 */ GIM_Try, /*On fail goto*//*Label 596*/ GIMT_Encode4(21821), // Rule ID 25313 // |
| 8680 | /* 21764 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8681 | /* 21767 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8682 | /* 21771 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8683 | /* 21775 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8684 | /* 21779 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8685 | /* 21782 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8686 | /* 21786 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8687 | /* 21790 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8688 | /* 21794 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8689 | /* 21796 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8690 | /* 21803 */ // (and:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPANDYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8691 | /* 21803 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8692 | /* 21806 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8693 | /* 21808 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8694 | /* 21810 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8695 | /* 21814 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8696 | /* 21819 */ GIR_RootConstrainSelectedInstOperands, |
| 8697 | /* 21820 */ // GIR_Coverage, 25313, |
| 8698 | /* 21820 */ GIR_EraseRootFromParent_Done, |
| 8699 | /* 21821 */ // Label 596: @21821 |
| 8700 | /* 21821 */ GIM_Try, /*On fail goto*//*Label 597*/ GIMT_Encode4(21883), // Rule ID 25322 // |
| 8701 | /* 21826 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8702 | /* 21829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8703 | /* 21833 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8704 | /* 21837 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8705 | /* 21841 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8706 | /* 21844 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8707 | /* 21848 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8708 | /* 21852 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8709 | /* 21856 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8710 | /* 21858 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8711 | /* 21865 */ // (and:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VANDPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8712 | /* 21865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8713 | /* 21868 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8714 | /* 21870 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8715 | /* 21872 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8716 | /* 21876 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8717 | /* 21881 */ GIR_RootConstrainSelectedInstOperands, |
| 8718 | /* 21882 */ // GIR_Coverage, 25322, |
| 8719 | /* 21882 */ GIR_EraseRootFromParent_Done, |
| 8720 | /* 21883 */ // Label 597: @21883 |
| 8721 | /* 21883 */ GIM_Try, /*On fail goto*//*Label 598*/ GIMT_Encode4(21945), // Rule ID 25521 // |
| 8722 | /* 21888 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8723 | /* 21891 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8724 | /* 21895 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8725 | /* 21899 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8726 | /* 21903 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8727 | /* 21906 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8728 | /* 21910 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8729 | /* 21914 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8730 | /* 21918 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8731 | /* 21920 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8732 | /* 21927 */ // (and:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPANDQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8733 | /* 21927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 8734 | /* 21930 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8735 | /* 21932 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8736 | /* 21934 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8737 | /* 21938 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8738 | /* 21943 */ GIR_RootConstrainSelectedInstOperands, |
| 8739 | /* 21944 */ // GIR_Coverage, 25521, |
| 8740 | /* 21944 */ GIR_EraseRootFromParent_Done, |
| 8741 | /* 21945 */ // Label 598: @21945 |
| 8742 | /* 21945 */ GIM_Try, /*On fail goto*//*Label 599*/ GIMT_Encode4(22007), // Rule ID 18093 // |
| 8743 | /* 21950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8744 | /* 21953 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8745 | /* 21957 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8746 | /* 21961 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8747 | /* 21965 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8748 | /* 21969 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8749 | /* 21972 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8750 | /* 21976 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8751 | /* 21980 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8752 | /* 21982 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8753 | /* 21989 */ // (and:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8754 | /* 21989 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8755 | /* 21992 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8756 | /* 21994 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8757 | /* 21996 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8758 | /* 22000 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8759 | /* 22005 */ GIR_RootConstrainSelectedInstOperands, |
| 8760 | /* 22006 */ // GIR_Coverage, 18093, |
| 8761 | /* 22006 */ GIR_EraseRootFromParent_Done, |
| 8762 | /* 22007 */ // Label 599: @22007 |
| 8763 | /* 22007 */ GIM_Try, /*On fail goto*//*Label 600*/ GIMT_Encode4(22069), // Rule ID 18121 // |
| 8764 | /* 22012 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8765 | /* 22015 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8766 | /* 22019 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8767 | /* 22023 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8768 | /* 22027 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8769 | /* 22031 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8770 | /* 22034 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8771 | /* 22038 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8772 | /* 22042 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8773 | /* 22044 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8774 | /* 22051 */ // (and:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VANDPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8775 | /* 22051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8776 | /* 22054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8777 | /* 22056 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8778 | /* 22058 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8779 | /* 22062 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8780 | /* 22067 */ GIR_RootConstrainSelectedInstOperands, |
| 8781 | /* 22068 */ // GIR_Coverage, 18121, |
| 8782 | /* 22068 */ GIR_EraseRootFromParent_Done, |
| 8783 | /* 22069 */ // Label 600: @22069 |
| 8784 | /* 22069 */ GIM_Try, /*On fail goto*//*Label 601*/ GIMT_Encode4(22131), // Rule ID 20050 // |
| 8785 | /* 22074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8786 | /* 22077 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8787 | /* 22081 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8788 | /* 22085 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8789 | /* 22089 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8790 | /* 22093 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8791 | /* 22096 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8792 | /* 22100 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8793 | /* 22104 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8794 | /* 22106 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8795 | /* 22113 */ // (and:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8796 | /* 22113 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 8797 | /* 22116 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8798 | /* 22118 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8799 | /* 22120 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8800 | /* 22124 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8801 | /* 22129 */ GIR_RootConstrainSelectedInstOperands, |
| 8802 | /* 22130 */ // GIR_Coverage, 20050, |
| 8803 | /* 22130 */ GIR_EraseRootFromParent_Done, |
| 8804 | /* 22131 */ // Label 601: @22131 |
| 8805 | /* 22131 */ GIM_Try, /*On fail goto*//*Label 602*/ GIMT_Encode4(22158), // Rule ID 18081 // |
| 8806 | /* 22136 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8807 | /* 22139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8808 | /* 22143 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8809 | /* 22147 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8810 | /* 22151 */ // (and:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPANDYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 8811 | /* 22151 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDYrr), |
| 8812 | /* 22156 */ GIR_RootConstrainSelectedInstOperands, |
| 8813 | /* 22157 */ // GIR_Coverage, 18081, |
| 8814 | /* 22157 */ GIR_Done, |
| 8815 | /* 22158 */ // Label 602: @22158 |
| 8816 | /* 22158 */ GIM_Try, /*On fail goto*//*Label 603*/ GIMT_Encode4(22185), // Rule ID 18105 // |
| 8817 | /* 22163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8818 | /* 22166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8819 | /* 22170 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8820 | /* 22174 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8821 | /* 22178 */ // (and:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VANDPSYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 8822 | /* 22178 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VANDPSYrr), |
| 8823 | /* 22183 */ GIR_RootConstrainSelectedInstOperands, |
| 8824 | /* 22184 */ // GIR_Coverage, 18105, |
| 8825 | /* 22184 */ GIR_Done, |
| 8826 | /* 22185 */ // Label 603: @22185 |
| 8827 | /* 22185 */ GIM_Try, /*On fail goto*//*Label 604*/ GIMT_Encode4(22212), // Rule ID 20042 // |
| 8828 | /* 22190 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 8829 | /* 22193 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8830 | /* 22197 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8831 | /* 22201 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 8832 | /* 22205 */ // (and:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPANDQZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 8833 | /* 22205 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rr), |
| 8834 | /* 22210 */ GIR_RootConstrainSelectedInstOperands, |
| 8835 | /* 22211 */ // GIR_Coverage, 20042, |
| 8836 | /* 22211 */ GIR_Done, |
| 8837 | /* 22212 */ // Label 604: @22212 |
| 8838 | /* 22212 */ GIM_Reject, |
| 8839 | /* 22213 */ // Label 595: @22213 |
| 8840 | /* 22213 */ GIM_Reject, |
| 8841 | /* 22214 */ // Label 444: @22214 |
| 8842 | /* 22214 */ GIM_Try, /*On fail goto*//*Label 605*/ GIMT_Encode4(22369), |
| 8843 | /* 22219 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 8844 | /* 22222 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 8845 | /* 22225 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8846 | /* 22229 */ GIM_Try, /*On fail goto*//*Label 606*/ GIMT_Encode4(22287), // Rule ID 24237 // |
| 8847 | /* 22234 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8848 | /* 22237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8849 | /* 22241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8850 | /* 22245 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8851 | /* 22248 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8852 | /* 22252 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8853 | /* 22256 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8854 | /* 22260 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8855 | /* 22262 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8856 | /* 22269 */ // (and:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPANDDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8857 | /* 22269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZrm), |
| 8858 | /* 22272 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8859 | /* 22274 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8860 | /* 22276 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8861 | /* 22280 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8862 | /* 22285 */ GIR_RootConstrainSelectedInstOperands, |
| 8863 | /* 22286 */ // GIR_Coverage, 24237, |
| 8864 | /* 22286 */ GIR_EraseRootFromParent_Done, |
| 8865 | /* 22287 */ // Label 606: @22287 |
| 8866 | /* 22287 */ GIM_Try, /*On fail goto*//*Label 607*/ GIMT_Encode4(22345), // Rule ID 5720 // |
| 8867 | /* 22292 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8868 | /* 22295 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8869 | /* 22299 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8870 | /* 22303 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8871 | /* 22307 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8872 | /* 22310 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8873 | /* 22314 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8874 | /* 22318 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8875 | /* 22320 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8876 | /* 22327 */ // (and:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8877 | /* 22327 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDDZrm), |
| 8878 | /* 22330 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8879 | /* 22332 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 8880 | /* 22334 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8881 | /* 22338 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8882 | /* 22343 */ GIR_RootConstrainSelectedInstOperands, |
| 8883 | /* 22344 */ // GIR_Coverage, 5720, |
| 8884 | /* 22344 */ GIR_EraseRootFromParent_Done, |
| 8885 | /* 22345 */ // Label 607: @22345 |
| 8886 | /* 22345 */ GIM_Try, /*On fail goto*//*Label 608*/ GIMT_Encode4(22368), // Rule ID 5717 // |
| 8887 | /* 22350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 8888 | /* 22353 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8889 | /* 22357 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 8890 | /* 22361 */ // (and:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPANDDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 8891 | /* 22361 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDDZrr), |
| 8892 | /* 22366 */ GIR_RootConstrainSelectedInstOperands, |
| 8893 | /* 22367 */ // GIR_Coverage, 5717, |
| 8894 | /* 22367 */ GIR_Done, |
| 8895 | /* 22368 */ // Label 608: @22368 |
| 8896 | /* 22368 */ GIM_Reject, |
| 8897 | /* 22369 */ // Label 605: @22369 |
| 8898 | /* 22369 */ GIM_Reject, |
| 8899 | /* 22370 */ // Label 445: @22370 |
| 8900 | /* 22370 */ GIM_Try, /*On fail goto*//*Label 609*/ GIMT_Encode4(22529), |
| 8901 | /* 22375 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 8902 | /* 22378 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 8903 | /* 22381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 8904 | /* 22385 */ GIM_Try, /*On fail goto*//*Label 610*/ GIMT_Encode4(22445), // Rule ID 4435 // |
| 8905 | /* 22390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 8906 | /* 22393 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8907 | /* 22397 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8908 | /* 22401 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 8909 | /* 22405 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 8910 | /* 22409 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 8911 | /* 22414 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8912 | /* 22418 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8913 | /* 22424 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8914 | /* 22426 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 8915 | /* 22430 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8916 | /* 22432 */ // (and:{ *:[v32i1] } (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, immAllOnesV:{ *:[v32i1] }), VK32:{ *:[v32i1] }:$src2) => (KANDNDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 8917 | /* 22432 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNDkk), |
| 8918 | /* 22435 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8919 | /* 22437 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8920 | /* 22441 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 8921 | /* 22443 */ GIR_RootConstrainSelectedInstOperands, |
| 8922 | /* 22444 */ // GIR_Coverage, 4435, |
| 8923 | /* 22444 */ GIR_EraseRootFromParent_Done, |
| 8924 | /* 22445 */ // Label 610: @22445 |
| 8925 | /* 22445 */ GIM_Try, /*On fail goto*//*Label 611*/ GIMT_Encode4(22505), // Rule ID 23776 // |
| 8926 | /* 22450 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 8927 | /* 22453 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 8928 | /* 22457 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 8929 | /* 22461 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 8930 | /* 22465 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 8931 | /* 22469 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 8932 | /* 22473 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 8933 | /* 22478 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 8934 | /* 22482 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 8935 | /* 22488 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 8936 | /* 22490 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 8937 | /* 22492 */ // (and:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src2, (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, immAllOnesV:{ *:[v32i1] })) => (KANDNDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 8938 | /* 22492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNDkk), |
| 8939 | /* 22495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8940 | /* 22497 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 8941 | /* 22501 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 8942 | /* 22503 */ GIR_RootConstrainSelectedInstOperands, |
| 8943 | /* 22504 */ // GIR_Coverage, 23776, |
| 8944 | /* 22504 */ GIR_EraseRootFromParent_Done, |
| 8945 | /* 22505 */ // Label 611: @22505 |
| 8946 | /* 22505 */ GIM_Try, /*On fail goto*//*Label 612*/ GIMT_Encode4(22528), // Rule ID 4419 // |
| 8947 | /* 22510 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 8948 | /* 22513 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 8949 | /* 22517 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 8950 | /* 22521 */ // (and:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) => (KANDDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 8951 | /* 22521 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KANDDkk), |
| 8952 | /* 22526 */ GIR_RootConstrainSelectedInstOperands, |
| 8953 | /* 22527 */ // GIR_Coverage, 4419, |
| 8954 | /* 22527 */ GIR_Done, |
| 8955 | /* 22528 */ // Label 612: @22528 |
| 8956 | /* 22528 */ GIM_Reject, |
| 8957 | /* 22529 */ // Label 609: @22529 |
| 8958 | /* 22529 */ GIM_Reject, |
| 8959 | /* 22530 */ // Label 446: @22530 |
| 8960 | /* 22530 */ GIM_Try, /*On fail goto*//*Label 613*/ GIMT_Encode4(22995), |
| 8961 | /* 22535 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 8962 | /* 22538 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 8963 | /* 22541 */ GIM_Try, /*On fail goto*//*Label 614*/ GIMT_Encode4(22603), // Rule ID 25312 // |
| 8964 | /* 22546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 8965 | /* 22549 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8966 | /* 22553 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8967 | /* 22557 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8968 | /* 22561 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8969 | /* 22564 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8970 | /* 22568 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8971 | /* 22572 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8972 | /* 22576 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8973 | /* 22578 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8974 | /* 22585 */ // (and:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPANDYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8975 | /* 22585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 8976 | /* 22588 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8977 | /* 22590 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8978 | /* 22592 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 8979 | /* 22596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 8980 | /* 22601 */ GIR_RootConstrainSelectedInstOperands, |
| 8981 | /* 22602 */ // GIR_Coverage, 25312, |
| 8982 | /* 22602 */ GIR_EraseRootFromParent_Done, |
| 8983 | /* 22603 */ // Label 614: @22603 |
| 8984 | /* 22603 */ GIM_Try, /*On fail goto*//*Label 615*/ GIMT_Encode4(22665), // Rule ID 25321 // |
| 8985 | /* 22608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 8986 | /* 22611 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8987 | /* 22615 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 8988 | /* 22619 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 8989 | /* 22623 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 8990 | /* 22626 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 8991 | /* 22630 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 8992 | /* 22634 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 8993 | /* 22638 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8994 | /* 22640 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 8995 | /* 22647 */ // (and:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VANDPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 8996 | /* 22647 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 8997 | /* 22650 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 8998 | /* 22652 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 8999 | /* 22654 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9000 | /* 22658 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9001 | /* 22663 */ GIR_RootConstrainSelectedInstOperands, |
| 9002 | /* 22664 */ // GIR_Coverage, 25321, |
| 9003 | /* 22664 */ GIR_EraseRootFromParent_Done, |
| 9004 | /* 22665 */ // Label 615: @22665 |
| 9005 | /* 22665 */ GIM_Try, /*On fail goto*//*Label 616*/ GIMT_Encode4(22727), // Rule ID 25520 // |
| 9006 | /* 22670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9007 | /* 22673 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9008 | /* 22677 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9009 | /* 22681 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9010 | /* 22685 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9011 | /* 22688 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9012 | /* 22692 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9013 | /* 22696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9014 | /* 22700 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9015 | /* 22702 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9016 | /* 22709 */ // (and:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPANDQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9017 | /* 22709 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 9018 | /* 22712 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9019 | /* 22714 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9020 | /* 22716 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9021 | /* 22720 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9022 | /* 22725 */ GIR_RootConstrainSelectedInstOperands, |
| 9023 | /* 22726 */ // GIR_Coverage, 25520, |
| 9024 | /* 22726 */ GIR_EraseRootFromParent_Done, |
| 9025 | /* 22727 */ // Label 616: @22727 |
| 9026 | /* 22727 */ GIM_Try, /*On fail goto*//*Label 617*/ GIMT_Encode4(22789), // Rule ID 18092 // |
| 9027 | /* 22732 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9028 | /* 22735 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9029 | /* 22739 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9030 | /* 22743 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9031 | /* 22747 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9032 | /* 22751 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9033 | /* 22754 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9034 | /* 22758 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9035 | /* 22762 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9036 | /* 22764 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9037 | /* 22771 */ // (and:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9038 | /* 22771 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDYrm), |
| 9039 | /* 22774 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9040 | /* 22776 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9041 | /* 22778 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9042 | /* 22782 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9043 | /* 22787 */ GIR_RootConstrainSelectedInstOperands, |
| 9044 | /* 22788 */ // GIR_Coverage, 18092, |
| 9045 | /* 22788 */ GIR_EraseRootFromParent_Done, |
| 9046 | /* 22789 */ // Label 617: @22789 |
| 9047 | /* 22789 */ GIM_Try, /*On fail goto*//*Label 618*/ GIMT_Encode4(22851), // Rule ID 18120 // |
| 9048 | /* 22794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9049 | /* 22797 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9050 | /* 22801 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9051 | /* 22805 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9052 | /* 22809 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9053 | /* 22813 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9054 | /* 22816 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9055 | /* 22820 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9056 | /* 22824 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9057 | /* 22826 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9058 | /* 22833 */ // (and:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VANDPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9059 | /* 22833 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VANDPSYrm), |
| 9060 | /* 22836 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9061 | /* 22838 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9062 | /* 22840 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9063 | /* 22844 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9064 | /* 22849 */ GIR_RootConstrainSelectedInstOperands, |
| 9065 | /* 22850 */ // GIR_Coverage, 18120, |
| 9066 | /* 22850 */ GIR_EraseRootFromParent_Done, |
| 9067 | /* 22851 */ // Label 618: @22851 |
| 9068 | /* 22851 */ GIM_Try, /*On fail goto*//*Label 619*/ GIMT_Encode4(22913), // Rule ID 20049 // |
| 9069 | /* 22856 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9070 | /* 22859 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9071 | /* 22863 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9072 | /* 22867 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9073 | /* 22871 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9074 | /* 22875 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9075 | /* 22878 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9076 | /* 22882 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9077 | /* 22886 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9078 | /* 22888 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9079 | /* 22895 */ // (and:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9080 | /* 22895 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rm), |
| 9081 | /* 22898 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9082 | /* 22900 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9083 | /* 22902 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9084 | /* 22906 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9085 | /* 22911 */ GIR_RootConstrainSelectedInstOperands, |
| 9086 | /* 22912 */ // GIR_Coverage, 20049, |
| 9087 | /* 22912 */ GIR_EraseRootFromParent_Done, |
| 9088 | /* 22913 */ // Label 619: @22913 |
| 9089 | /* 22913 */ GIM_Try, /*On fail goto*//*Label 620*/ GIMT_Encode4(22940), // Rule ID 18080 // |
| 9090 | /* 22918 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 9091 | /* 22921 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9092 | /* 22925 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9093 | /* 22929 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9094 | /* 22933 */ // (and:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPANDYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 9095 | /* 22933 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDYrr), |
| 9096 | /* 22938 */ GIR_RootConstrainSelectedInstOperands, |
| 9097 | /* 22939 */ // GIR_Coverage, 18080, |
| 9098 | /* 22939 */ GIR_Done, |
| 9099 | /* 22940 */ // Label 620: @22940 |
| 9100 | /* 22940 */ GIM_Try, /*On fail goto*//*Label 621*/ GIMT_Encode4(22967), // Rule ID 18104 // |
| 9101 | /* 22945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 9102 | /* 22948 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9103 | /* 22952 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9104 | /* 22956 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 9105 | /* 22960 */ // (and:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VANDPSYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 9106 | /* 22960 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VANDPSYrr), |
| 9107 | /* 22965 */ GIR_RootConstrainSelectedInstOperands, |
| 9108 | /* 22966 */ // GIR_Coverage, 18104, |
| 9109 | /* 22966 */ GIR_Done, |
| 9110 | /* 22967 */ // Label 621: @22967 |
| 9111 | /* 22967 */ GIM_Try, /*On fail goto*//*Label 622*/ GIMT_Encode4(22994), // Rule ID 20041 // |
| 9112 | /* 22972 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 9113 | /* 22975 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9114 | /* 22979 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9115 | /* 22983 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 9116 | /* 22987 */ // (and:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPANDQZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 9117 | /* 22987 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZ256rr), |
| 9118 | /* 22992 */ GIR_RootConstrainSelectedInstOperands, |
| 9119 | /* 22993 */ // GIR_Coverage, 20041, |
| 9120 | /* 22993 */ GIR_Done, |
| 9121 | /* 22994 */ // Label 622: @22994 |
| 9122 | /* 22994 */ GIM_Reject, |
| 9123 | /* 22995 */ // Label 613: @22995 |
| 9124 | /* 22995 */ GIM_Reject, |
| 9125 | /* 22996 */ // Label 447: @22996 |
| 9126 | /* 22996 */ GIM_Try, /*On fail goto*//*Label 623*/ GIMT_Encode4(23151), |
| 9127 | /* 23001 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 9128 | /* 23004 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 9129 | /* 23007 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9130 | /* 23011 */ GIM_Try, /*On fail goto*//*Label 624*/ GIMT_Encode4(23069), // Rule ID 25527 // |
| 9131 | /* 23016 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9132 | /* 23019 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9133 | /* 23023 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9134 | /* 23027 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9135 | /* 23030 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9136 | /* 23034 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9137 | /* 23038 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9138 | /* 23042 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9139 | /* 23044 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9140 | /* 23051 */ // (and:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPANDQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9141 | /* 23051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9142 | /* 23054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9143 | /* 23056 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9144 | /* 23058 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9145 | /* 23062 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9146 | /* 23067 */ GIR_RootConstrainSelectedInstOperands, |
| 9147 | /* 23068 */ // GIR_Coverage, 25527, |
| 9148 | /* 23068 */ GIR_EraseRootFromParent_Done, |
| 9149 | /* 23069 */ // Label 624: @23069 |
| 9150 | /* 23069 */ GIM_Try, /*On fail goto*//*Label 625*/ GIMT_Encode4(23127), // Rule ID 20066 // |
| 9151 | /* 23074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9152 | /* 23077 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9153 | /* 23081 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9154 | /* 23085 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9155 | /* 23089 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9156 | /* 23092 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9157 | /* 23096 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9158 | /* 23100 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9159 | /* 23102 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9160 | /* 23109 */ // (and:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9161 | /* 23109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9162 | /* 23112 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9163 | /* 23114 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9164 | /* 23116 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9165 | /* 23120 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9166 | /* 23125 */ GIR_RootConstrainSelectedInstOperands, |
| 9167 | /* 23126 */ // GIR_Coverage, 20066, |
| 9168 | /* 23126 */ GIR_EraseRootFromParent_Done, |
| 9169 | /* 23127 */ // Label 625: @23127 |
| 9170 | /* 23127 */ GIM_Try, /*On fail goto*//*Label 626*/ GIMT_Encode4(23150), // Rule ID 20058 // |
| 9171 | /* 23132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9172 | /* 23135 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9173 | /* 23139 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9174 | /* 23143 */ // (and:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPANDQZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 9175 | /* 23143 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZrr), |
| 9176 | /* 23148 */ GIR_RootConstrainSelectedInstOperands, |
| 9177 | /* 23149 */ // GIR_Coverage, 20058, |
| 9178 | /* 23149 */ GIR_Done, |
| 9179 | /* 23150 */ // Label 626: @23150 |
| 9180 | /* 23150 */ GIM_Reject, |
| 9181 | /* 23151 */ // Label 623: @23151 |
| 9182 | /* 23151 */ GIM_Reject, |
| 9183 | /* 23152 */ // Label 448: @23152 |
| 9184 | /* 23152 */ GIM_Try, /*On fail goto*//*Label 627*/ GIMT_Encode4(23311), |
| 9185 | /* 23157 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 9186 | /* 23160 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s1, |
| 9187 | /* 23163 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9188 | /* 23167 */ GIM_Try, /*On fail goto*//*Label 628*/ GIMT_Encode4(23227), // Rule ID 4436 // |
| 9189 | /* 23172 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9190 | /* 23175 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9191 | /* 23179 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9192 | /* 23183 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 9193 | /* 23187 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 9194 | /* 23191 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9195 | /* 23196 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 9196 | /* 23200 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 9197 | /* 23206 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 9198 | /* 23208 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9199 | /* 23212 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9200 | /* 23214 */ // (and:{ *:[v64i1] } (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, immAllOnesV:{ *:[v64i1] }), VK64:{ *:[v64i1] }:$src2) => (KANDNQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 9201 | /* 23214 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNQkk), |
| 9202 | /* 23217 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9203 | /* 23219 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 9204 | /* 23223 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 9205 | /* 23225 */ GIR_RootConstrainSelectedInstOperands, |
| 9206 | /* 23226 */ // GIR_Coverage, 4436, |
| 9207 | /* 23226 */ GIR_EraseRootFromParent_Done, |
| 9208 | /* 23227 */ // Label 628: @23227 |
| 9209 | /* 23227 */ GIM_Try, /*On fail goto*//*Label 629*/ GIMT_Encode4(23287), // Rule ID 23777 // |
| 9210 | /* 23232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9211 | /* 23235 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9212 | /* 23239 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9213 | /* 23243 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9214 | /* 23247 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 9215 | /* 23251 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 9216 | /* 23255 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9217 | /* 23260 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 9218 | /* 23264 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 9219 | /* 23270 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 9220 | /* 23272 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9221 | /* 23274 */ // (and:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src2, (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, immAllOnesV:{ *:[v64i1] })) => (KANDNQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 9222 | /* 23274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KANDNQkk), |
| 9223 | /* 23277 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9224 | /* 23279 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 9225 | /* 23283 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 9226 | /* 23285 */ GIR_RootConstrainSelectedInstOperands, |
| 9227 | /* 23286 */ // GIR_Coverage, 23777, |
| 9228 | /* 23286 */ GIR_EraseRootFromParent_Done, |
| 9229 | /* 23287 */ // Label 629: @23287 |
| 9230 | /* 23287 */ GIM_Try, /*On fail goto*//*Label 630*/ GIMT_Encode4(23310), // Rule ID 4420 // |
| 9231 | /* 23292 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 9232 | /* 23295 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9233 | /* 23299 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 9234 | /* 23303 */ // (and:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) => (KANDQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 9235 | /* 23303 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KANDQkk), |
| 9236 | /* 23308 */ GIR_RootConstrainSelectedInstOperands, |
| 9237 | /* 23309 */ // GIR_Coverage, 4420, |
| 9238 | /* 23309 */ GIR_Done, |
| 9239 | /* 23310 */ // Label 630: @23310 |
| 9240 | /* 23310 */ GIM_Reject, |
| 9241 | /* 23311 */ // Label 627: @23311 |
| 9242 | /* 23311 */ GIM_Reject, |
| 9243 | /* 23312 */ // Label 449: @23312 |
| 9244 | /* 23312 */ GIM_Try, /*On fail goto*//*Label 631*/ GIMT_Encode4(23467), |
| 9245 | /* 23317 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 9246 | /* 23320 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 9247 | /* 23323 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9248 | /* 23327 */ GIM_Try, /*On fail goto*//*Label 632*/ GIMT_Encode4(23385), // Rule ID 25526 // |
| 9249 | /* 23332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9250 | /* 23335 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9251 | /* 23339 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9252 | /* 23343 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9253 | /* 23346 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9254 | /* 23350 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9255 | /* 23354 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9256 | /* 23358 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9257 | /* 23360 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9258 | /* 23367 */ // (and:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPANDQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9259 | /* 23367 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9260 | /* 23370 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9261 | /* 23372 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9262 | /* 23374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9263 | /* 23378 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9264 | /* 23383 */ GIR_RootConstrainSelectedInstOperands, |
| 9265 | /* 23384 */ // GIR_Coverage, 25526, |
| 9266 | /* 23384 */ GIR_EraseRootFromParent_Done, |
| 9267 | /* 23385 */ // Label 632: @23385 |
| 9268 | /* 23385 */ GIM_Try, /*On fail goto*//*Label 633*/ GIMT_Encode4(23443), // Rule ID 20065 // |
| 9269 | /* 23390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9270 | /* 23393 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9271 | /* 23397 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9272 | /* 23401 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9273 | /* 23405 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9274 | /* 23408 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 9275 | /* 23412 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9276 | /* 23416 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9277 | /* 23418 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9278 | /* 23425 */ // (and:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPANDQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 9279 | /* 23425 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPANDQZrm), |
| 9280 | /* 23428 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9281 | /* 23430 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9282 | /* 23432 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9283 | /* 23436 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9284 | /* 23441 */ GIR_RootConstrainSelectedInstOperands, |
| 9285 | /* 23442 */ // GIR_Coverage, 20065, |
| 9286 | /* 23442 */ GIR_EraseRootFromParent_Done, |
| 9287 | /* 23443 */ // Label 633: @23443 |
| 9288 | /* 23443 */ GIM_Try, /*On fail goto*//*Label 634*/ GIMT_Encode4(23466), // Rule ID 20057 // |
| 9289 | /* 23448 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 9290 | /* 23451 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9291 | /* 23455 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 9292 | /* 23459 */ // (and:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPANDQZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 9293 | /* 23459 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPANDQZrr), |
| 9294 | /* 23464 */ GIR_RootConstrainSelectedInstOperands, |
| 9295 | /* 23465 */ // GIR_Coverage, 20057, |
| 9296 | /* 23465 */ GIR_Done, |
| 9297 | /* 23466 */ // Label 634: @23466 |
| 9298 | /* 23466 */ GIM_Reject, |
| 9299 | /* 23467 */ // Label 631: @23467 |
| 9300 | /* 23467 */ GIM_Reject, |
| 9301 | /* 23468 */ // Label 450: @23468 |
| 9302 | /* 23468 */ GIM_Reject, |
| 9303 | /* 23469 */ // Label 4: @23469 |
| 9304 | /* 23469 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(25), /*)*//*default:*//*Label 658*/ GIMT_Encode4(31356), |
| 9305 | /* 23480 */ /*GILLT_s1*//*Label 635*/ GIMT_Encode4(23580), |
| 9306 | /* 23484 */ /*GILLT_s8*//*Label 636*/ GIMT_Encode4(23680), |
| 9307 | /* 23488 */ /*GILLT_s16*//*Label 637*/ GIMT_Encode4(23951), |
| 9308 | /* 23492 */ /*GILLT_s32*//*Label 638*/ GIMT_Encode4(24426), |
| 9309 | /* 23496 */ /*GILLT_s64*//*Label 639*/ GIMT_Encode4(25746), GIMT_Encode4(0), GIMT_Encode4(0), |
| 9310 | /* 23508 */ /*GILLT_v2s1*//*Label 640*/ GIMT_Encode4(27074), |
| 9311 | /* 23512 */ /*GILLT_v2s64*//*Label 641*/ GIMT_Encode4(27174), |
| 9312 | /* 23516 */ /*GILLT_v4s1*//*Label 642*/ GIMT_Encode4(27516), |
| 9313 | /* 23520 */ /*GILLT_v4s32*//*Label 643*/ GIMT_Encode4(27616), |
| 9314 | /* 23524 */ /*GILLT_v4s64*//*Label 644*/ GIMT_Encode4(27958), |
| 9315 | /* 23528 */ /*GILLT_v8s1*//*Label 645*/ GIMT_Encode4(28424), |
| 9316 | /* 23532 */ /*GILLT_v8s16*//*Label 646*/ GIMT_Encode4(28548), |
| 9317 | /* 23536 */ /*GILLT_v8s32*//*Label 647*/ GIMT_Encode4(28890), |
| 9318 | /* 23540 */ /*GILLT_v8s64*//*Label 648*/ GIMT_Encode4(29356), |
| 9319 | /* 23544 */ /*GILLT_v16s1*//*Label 649*/ GIMT_Encode4(29512), |
| 9320 | /* 23548 */ /*GILLT_v16s8*//*Label 650*/ GIMT_Encode4(29546), |
| 9321 | /* 23552 */ /*GILLT_v16s16*//*Label 651*/ GIMT_Encode4(29888), |
| 9322 | /* 23556 */ /*GILLT_v16s32*//*Label 652*/ GIMT_Encode4(30354), |
| 9323 | /* 23560 */ /*GILLT_v32s1*//*Label 653*/ GIMT_Encode4(30510), |
| 9324 | /* 23564 */ /*GILLT_v32s8*//*Label 654*/ GIMT_Encode4(30544), |
| 9325 | /* 23568 */ /*GILLT_v32s16*//*Label 655*/ GIMT_Encode4(31010), |
| 9326 | /* 23572 */ /*GILLT_v64s1*//*Label 656*/ GIMT_Encode4(31166), |
| 9327 | /* 23576 */ /*GILLT_v64s8*//*Label 657*/ GIMT_Encode4(31200), |
| 9328 | /* 23580 */ // Label 635: @23580 |
| 9329 | /* 23580 */ GIM_Try, /*On fail goto*//*Label 659*/ GIMT_Encode4(23679), // Rule ID 19490 // |
| 9330 | /* 23585 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s1, |
| 9331 | /* 23588 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s1, |
| 9332 | /* 23591 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 9333 | /* 23595 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 9334 | /* 23599 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 9335 | /* 23603 */ // (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] }) |
| 9336 | /* 23603 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 9337 | /* 23606 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 9338 | /* 23610 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9339 | /* 23615 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 9340 | /* 23619 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 9341 | /* 23624 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 9342 | /* 23627 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 9343 | /* 23631 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9344 | /* 23636 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 9345 | /* 23640 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 9346 | /* 23645 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 9347 | /* 23648 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 9348 | /* 23652 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9349 | /* 23657 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 9350 | /* 23660 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 9351 | /* 23663 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 9352 | /* 23665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 9353 | /* 23668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9354 | /* 23670 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 9355 | /* 23673 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 9356 | /* 23678 */ // GIR_Coverage, 19490, |
| 9357 | /* 23678 */ GIR_EraseRootFromParent_Done, |
| 9358 | /* 23679 */ // Label 659: @23679 |
| 9359 | /* 23679 */ GIM_Reject, |
| 9360 | /* 23680 */ // Label 636: @23680 |
| 9361 | /* 23680 */ GIM_Try, /*On fail goto*//*Label 660*/ GIMT_Encode4(23950), |
| 9362 | /* 23685 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 9363 | /* 23688 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 9364 | /* 23691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9365 | /* 23695 */ GIM_Try, /*On fail goto*//*Label 661*/ GIMT_Encode4(23756), // Rule ID 26143 // |
| 9366 | /* 23700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9367 | /* 23703 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9368 | /* 23707 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9369 | /* 23711 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9370 | /* 23714 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9371 | /* 23718 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 9372 | /* 23722 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9373 | /* 23726 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9374 | /* 23728 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9375 | /* 23735 */ // (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) |
| 9376 | /* 23735 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8rm), |
| 9377 | /* 23738 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9378 | /* 23740 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9379 | /* 23742 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9380 | /* 23746 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9381 | /* 23749 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9382 | /* 23754 */ GIR_RootConstrainSelectedInstOperands, |
| 9383 | /* 23755 */ // GIR_Coverage, 26143, |
| 9384 | /* 23755 */ GIR_EraseRootFromParent_Done, |
| 9385 | /* 23756 */ // Label 661: @23756 |
| 9386 | /* 23756 */ GIM_Try, /*On fail goto*//*Label 662*/ GIMT_Encode4(23817), // Rule ID 22910 // |
| 9387 | /* 23761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9388 | /* 23764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9389 | /* 23768 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9390 | /* 23772 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9391 | /* 23776 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9392 | /* 23779 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9393 | /* 23783 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 9394 | /* 23787 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9395 | /* 23789 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9396 | /* 23796 */ // (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) |
| 9397 | /* 23796 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8rm), |
| 9398 | /* 23799 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9399 | /* 23801 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9400 | /* 23803 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9401 | /* 23807 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9402 | /* 23810 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9403 | /* 23815 */ GIR_RootConstrainSelectedInstOperands, |
| 9404 | /* 23816 */ // GIR_Coverage, 22910, |
| 9405 | /* 23816 */ GIR_EraseRootFromParent_Done, |
| 9406 | /* 23817 */ // Label 662: @23817 |
| 9407 | /* 23817 */ GIM_Try, /*On fail goto*//*Label 663*/ GIMT_Encode4(23854), // Rule ID 22914 // |
| 9408 | /* 23822 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9409 | /* 23825 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9410 | /* 23829 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9411 | /* 23833 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9412 | /* 23837 */ // MIs[1] Operand 1 |
| 9413 | /* 23837 */ // No operand predicates |
| 9414 | /* 23837 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9415 | /* 23839 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (OR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 9416 | /* 23839 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8ri), |
| 9417 | /* 23842 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9418 | /* 23844 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9419 | /* 23846 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 9420 | /* 23849 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9421 | /* 23852 */ GIR_RootConstrainSelectedInstOperands, |
| 9422 | /* 23853 */ // GIR_Coverage, 22914, |
| 9423 | /* 23853 */ GIR_EraseRootFromParent_Done, |
| 9424 | /* 23854 */ // Label 663: @23854 |
| 9425 | /* 23854 */ GIM_Try, /*On fail goto*//*Label 664*/ GIMT_Encode4(23891), // Rule ID 23004 // |
| 9426 | /* 23859 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 9427 | /* 23862 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9428 | /* 23866 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9429 | /* 23870 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9430 | /* 23874 */ // MIs[1] Operand 1 |
| 9431 | /* 23874 */ // No operand predicates |
| 9432 | /* 23874 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9433 | /* 23876 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (OR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 9434 | /* 23876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8ri_ND), |
| 9435 | /* 23879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9436 | /* 23881 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9437 | /* 23883 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 9438 | /* 23886 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9439 | /* 23889 */ GIR_RootConstrainSelectedInstOperands, |
| 9440 | /* 23890 */ // GIR_Coverage, 23004, |
| 9441 | /* 23890 */ GIR_EraseRootFromParent_Done, |
| 9442 | /* 23891 */ // Label 664: @23891 |
| 9443 | /* 23891 */ GIM_Try, /*On fail goto*//*Label 665*/ GIMT_Encode4(23920), // Rule ID 22906 // |
| 9444 | /* 23896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9445 | /* 23899 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9446 | /* 23903 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9447 | /* 23907 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (OR8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 9448 | /* 23907 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR8rr), |
| 9449 | /* 23912 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 9450 | /* 23918 */ GIR_RootConstrainSelectedInstOperands, |
| 9451 | /* 23919 */ // GIR_Coverage, 22906, |
| 9452 | /* 23919 */ GIR_Done, |
| 9453 | /* 23920 */ // Label 665: @23920 |
| 9454 | /* 23920 */ GIM_Try, /*On fail goto*//*Label 666*/ GIMT_Encode4(23949), // Rule ID 22996 // |
| 9455 | /* 23925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 9456 | /* 23928 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9457 | /* 23932 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9458 | /* 23936 */ // (or:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (OR8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 9459 | /* 23936 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR8rr_ND), |
| 9460 | /* 23941 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 9461 | /* 23947 */ GIR_RootConstrainSelectedInstOperands, |
| 9462 | /* 23948 */ // GIR_Coverage, 22996, |
| 9463 | /* 23948 */ GIR_Done, |
| 9464 | /* 23949 */ // Label 666: @23949 |
| 9465 | /* 23949 */ GIM_Reject, |
| 9466 | /* 23950 */ // Label 660: @23950 |
| 9467 | /* 23950 */ GIM_Reject, |
| 9468 | /* 23951 */ // Label 637: @23951 |
| 9469 | /* 23951 */ GIM_Try, /*On fail goto*//*Label 667*/ GIMT_Encode4(24425), |
| 9470 | /* 23956 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 9471 | /* 23959 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 9472 | /* 23962 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9473 | /* 23966 */ GIM_Try, /*On fail goto*//*Label 668*/ GIMT_Encode4(24027), // Rule ID 26144 // |
| 9474 | /* 23971 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9475 | /* 23974 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9476 | /* 23978 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9477 | /* 23982 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9478 | /* 23985 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9479 | /* 23989 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 9480 | /* 23993 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9481 | /* 23997 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9482 | /* 23999 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9483 | /* 24006 */ // (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) |
| 9484 | /* 24006 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16rm), |
| 9485 | /* 24009 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9486 | /* 24011 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9487 | /* 24013 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9488 | /* 24017 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9489 | /* 24020 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9490 | /* 24025 */ GIR_RootConstrainSelectedInstOperands, |
| 9491 | /* 24026 */ // GIR_Coverage, 26144, |
| 9492 | /* 24026 */ GIR_EraseRootFromParent_Done, |
| 9493 | /* 24027 */ // Label 668: @24027 |
| 9494 | /* 24027 */ GIM_Try, /*On fail goto*//*Label 669*/ GIMT_Encode4(24088), // Rule ID 22911 // |
| 9495 | /* 24032 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9496 | /* 24035 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9497 | /* 24039 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9498 | /* 24043 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9499 | /* 24047 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9500 | /* 24050 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9501 | /* 24054 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 9502 | /* 24058 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9503 | /* 24060 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9504 | /* 24067 */ // (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) |
| 9505 | /* 24067 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16rm), |
| 9506 | /* 24070 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9507 | /* 24072 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9508 | /* 24074 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9509 | /* 24078 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9510 | /* 24081 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9511 | /* 24086 */ GIR_RootConstrainSelectedInstOperands, |
| 9512 | /* 24087 */ // GIR_Coverage, 22911, |
| 9513 | /* 24087 */ GIR_EraseRootFromParent_Done, |
| 9514 | /* 24088 */ // Label 669: @24088 |
| 9515 | /* 24088 */ GIM_Try, /*On fail goto*//*Label 670*/ GIMT_Encode4(24190), // Rule ID 26119 // |
| 9516 | /* 24093 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9517 | /* 24097 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 9518 | /* 24101 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 9519 | /* 24105 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 9520 | /* 24109 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 9521 | /* 24113 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9522 | /* 24118 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9523 | /* 24122 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9524 | /* 24124 */ // (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] })) |
| 9525 | /* 24124 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 9526 | /* 24127 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 9527 | /* 24131 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9528 | /* 24136 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 9529 | /* 24138 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 9530 | /* 24141 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 9531 | /* 24145 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9532 | /* 24150 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 9533 | /* 24153 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 9534 | /* 24157 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 9535 | /* 24160 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 9536 | /* 24165 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 9537 | /* 24170 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 9538 | /* 24175 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS16rr), |
| 9539 | /* 24178 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9540 | /* 24180 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9541 | /* 24182 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 9542 | /* 24185 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9543 | /* 24188 */ GIR_RootConstrainSelectedInstOperands, |
| 9544 | /* 24189 */ // GIR_Coverage, 26119, |
| 9545 | /* 24189 */ GIR_EraseRootFromParent_Done, |
| 9546 | /* 24190 */ // Label 670: @24190 |
| 9547 | /* 24190 */ GIM_Try, /*On fail goto*//*Label 671*/ GIMT_Encode4(24292), // Rule ID 22857 // |
| 9548 | /* 24195 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9549 | /* 24199 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9550 | /* 24203 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 9551 | /* 24207 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 9552 | /* 24211 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 9553 | /* 24215 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 9554 | /* 24219 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9555 | /* 24224 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9556 | /* 24226 */ // (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] })) |
| 9557 | /* 24226 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 9558 | /* 24229 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 9559 | /* 24233 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9560 | /* 24238 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 9561 | /* 24240 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 9562 | /* 24243 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 9563 | /* 24247 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9564 | /* 24252 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 9565 | /* 24255 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 9566 | /* 24259 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 9567 | /* 24262 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 9568 | /* 24267 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 9569 | /* 24272 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 9570 | /* 24277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS16rr), |
| 9571 | /* 24280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9572 | /* 24282 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9573 | /* 24284 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 9574 | /* 24287 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9575 | /* 24290 */ GIR_RootConstrainSelectedInstOperands, |
| 9576 | /* 24291 */ // GIR_Coverage, 22857, |
| 9577 | /* 24291 */ GIR_EraseRootFromParent_Done, |
| 9578 | /* 24292 */ // Label 671: @24292 |
| 9579 | /* 24292 */ GIM_Try, /*On fail goto*//*Label 672*/ GIMT_Encode4(24329), // Rule ID 22915 // |
| 9580 | /* 24297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9581 | /* 24300 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9582 | /* 24304 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9583 | /* 24308 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9584 | /* 24312 */ // MIs[1] Operand 1 |
| 9585 | /* 24312 */ // No operand predicates |
| 9586 | /* 24312 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9587 | /* 24314 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (OR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 9588 | /* 24314 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16ri), |
| 9589 | /* 24317 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9590 | /* 24319 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9591 | /* 24321 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 9592 | /* 24324 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9593 | /* 24327 */ GIR_RootConstrainSelectedInstOperands, |
| 9594 | /* 24328 */ // GIR_Coverage, 22915, |
| 9595 | /* 24328 */ GIR_EraseRootFromParent_Done, |
| 9596 | /* 24329 */ // Label 672: @24329 |
| 9597 | /* 24329 */ GIM_Try, /*On fail goto*//*Label 673*/ GIMT_Encode4(24366), // Rule ID 23005 // |
| 9598 | /* 24334 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 9599 | /* 24337 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9600 | /* 24341 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9601 | /* 24345 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9602 | /* 24349 */ // MIs[1] Operand 1 |
| 9603 | /* 24349 */ // No operand predicates |
| 9604 | /* 24349 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9605 | /* 24351 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (OR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 9606 | /* 24351 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16ri_ND), |
| 9607 | /* 24354 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9608 | /* 24356 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9609 | /* 24358 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 9610 | /* 24361 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9611 | /* 24364 */ GIR_RootConstrainSelectedInstOperands, |
| 9612 | /* 24365 */ // GIR_Coverage, 23005, |
| 9613 | /* 24365 */ GIR_EraseRootFromParent_Done, |
| 9614 | /* 24366 */ // Label 673: @24366 |
| 9615 | /* 24366 */ GIM_Try, /*On fail goto*//*Label 674*/ GIMT_Encode4(24395), // Rule ID 22907 // |
| 9616 | /* 24371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9617 | /* 24374 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9618 | /* 24378 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9619 | /* 24382 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (OR16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 9620 | /* 24382 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR16rr), |
| 9621 | /* 24387 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 9622 | /* 24393 */ GIR_RootConstrainSelectedInstOperands, |
| 9623 | /* 24394 */ // GIR_Coverage, 22907, |
| 9624 | /* 24394 */ GIR_Done, |
| 9625 | /* 24395 */ // Label 674: @24395 |
| 9626 | /* 24395 */ GIM_Try, /*On fail goto*//*Label 675*/ GIMT_Encode4(24424), // Rule ID 22997 // |
| 9627 | /* 24400 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 9628 | /* 24403 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9629 | /* 24407 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 9630 | /* 24411 */ // (or:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (OR16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 9631 | /* 24411 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR16rr_ND), |
| 9632 | /* 24416 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 9633 | /* 24422 */ GIR_RootConstrainSelectedInstOperands, |
| 9634 | /* 24423 */ // GIR_Coverage, 22997, |
| 9635 | /* 24423 */ GIR_Done, |
| 9636 | /* 24424 */ // Label 675: @24424 |
| 9637 | /* 24424 */ GIM_Reject, |
| 9638 | /* 24425 */ // Label 667: @24425 |
| 9639 | /* 24425 */ GIM_Reject, |
| 9640 | /* 24426 */ // Label 638: @24426 |
| 9641 | /* 24426 */ GIM_Try, /*On fail goto*//*Label 676*/ GIMT_Encode4(25745), |
| 9642 | /* 24431 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 9643 | /* 24434 */ GIM_Try, /*On fail goto*//*Label 677*/ GIMT_Encode4(24502), // Rule ID 26145 // |
| 9644 | /* 24439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9645 | /* 24442 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9646 | /* 24445 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9647 | /* 24449 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9648 | /* 24453 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9649 | /* 24457 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9650 | /* 24460 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9651 | /* 24464 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 9652 | /* 24468 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9653 | /* 24472 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9654 | /* 24474 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9655 | /* 24481 */ // (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) |
| 9656 | /* 24481 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32rm), |
| 9657 | /* 24484 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9658 | /* 24486 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9659 | /* 24488 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9660 | /* 24492 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9661 | /* 24495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9662 | /* 24500 */ GIR_RootConstrainSelectedInstOperands, |
| 9663 | /* 24501 */ // GIR_Coverage, 26145, |
| 9664 | /* 24501 */ GIR_EraseRootFromParent_Done, |
| 9665 | /* 24502 */ // Label 677: @24502 |
| 9666 | /* 24502 */ GIM_Try, /*On fail goto*//*Label 678*/ GIMT_Encode4(24570), // Rule ID 22912 // |
| 9667 | /* 24507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 9668 | /* 24510 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9669 | /* 24513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9670 | /* 24517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9671 | /* 24521 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9672 | /* 24525 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 9673 | /* 24529 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 9674 | /* 24532 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 9675 | /* 24536 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 9676 | /* 24540 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9677 | /* 24542 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 9678 | /* 24549 */ // (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) |
| 9679 | /* 24549 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32rm), |
| 9680 | /* 24552 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9681 | /* 24554 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 9682 | /* 24556 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 9683 | /* 24560 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9684 | /* 24563 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 9685 | /* 24568 */ GIR_RootConstrainSelectedInstOperands, |
| 9686 | /* 24569 */ // GIR_Coverage, 22912, |
| 9687 | /* 24569 */ GIR_EraseRootFromParent_Done, |
| 9688 | /* 24570 */ // Label 678: @24570 |
| 9689 | /* 24570 */ GIM_Try, /*On fail goto*//*Label 679*/ GIMT_Encode4(24647), // Rule ID 25085 // |
| 9690 | /* 24575 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9691 | /* 24578 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9692 | /* 24581 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9693 | /* 24585 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9694 | /* 24589 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9695 | /* 24593 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9696 | /* 24597 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9697 | /* 24601 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9698 | /* 24606 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 9699 | /* 24610 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 9700 | /* 24614 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9701 | /* 24618 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 9702 | /* 24622 */ // MIs[2] src |
| 9703 | /* 24622 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 9704 | /* 24627 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 9705 | /* 24631 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9706 | /* 24633 */ // (or:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (BLSIC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9707 | /* 24633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSIC32rr), |
| 9708 | /* 24636 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9709 | /* 24638 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 9710 | /* 24642 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9711 | /* 24645 */ GIR_RootConstrainSelectedInstOperands, |
| 9712 | /* 24646 */ // GIR_Coverage, 25085, |
| 9713 | /* 24646 */ GIR_EraseRootFromParent_Done, |
| 9714 | /* 24647 */ // Label 679: @24647 |
| 9715 | /* 24647 */ GIM_Try, /*On fail goto*//*Label 680*/ GIMT_Encode4(24724), // Rule ID 25087 // |
| 9716 | /* 24652 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9717 | /* 24655 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9718 | /* 24658 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9719 | /* 24662 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9720 | /* 24666 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9721 | /* 24670 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9722 | /* 24674 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9723 | /* 24678 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9724 | /* 24683 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 9725 | /* 24687 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 9726 | /* 24691 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9727 | /* 24695 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 9728 | /* 24699 */ // MIs[2] src |
| 9729 | /* 24699 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 9730 | /* 24704 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 9731 | /* 24708 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9732 | /* 24710 */ // (or:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (T1MSKC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9733 | /* 24710 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::T1MSKC32rr), |
| 9734 | /* 24713 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9735 | /* 24715 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 9736 | /* 24719 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9737 | /* 24722 */ GIR_RootConstrainSelectedInstOperands, |
| 9738 | /* 24723 */ // GIR_Coverage, 25087, |
| 9739 | /* 24723 */ GIR_EraseRootFromParent_Done, |
| 9740 | /* 24724 */ // Label 680: @24724 |
| 9741 | /* 24724 */ GIM_Try, /*On fail goto*//*Label 681*/ GIMT_Encode4(24802), // Rule ID 25073 // |
| 9742 | /* 24729 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9743 | /* 24732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9744 | /* 24736 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9745 | /* 24740 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9746 | /* 24744 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9747 | /* 24748 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9748 | /* 24752 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 9749 | /* 24756 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9750 | /* 24760 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 9751 | /* 24764 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 9752 | /* 24768 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9753 | /* 24773 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 9754 | /* 24777 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 9755 | /* 24781 */ // MIs[0] src |
| 9756 | /* 24781 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 9757 | /* 24786 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9758 | /* 24788 */ // (or:{ *:[i32] } (xor:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), -1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLCI32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9759 | /* 24788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI32rr), |
| 9760 | /* 24791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9761 | /* 24793 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src |
| 9762 | /* 24797 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9763 | /* 24800 */ GIR_RootConstrainSelectedInstOperands, |
| 9764 | /* 24801 */ // GIR_Coverage, 25073, |
| 9765 | /* 24801 */ GIR_EraseRootFromParent_Done, |
| 9766 | /* 24802 */ // Label 681: @24802 |
| 9767 | /* 24802 */ GIM_Try, /*On fail goto*//*Label 682*/ GIMT_Encode4(24879), // Rule ID 17352 // |
| 9768 | /* 24807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9769 | /* 24810 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9770 | /* 24813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9771 | /* 24817 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9772 | /* 24821 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9773 | /* 24825 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9774 | /* 24829 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9775 | /* 24833 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9776 | /* 24838 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 9777 | /* 24842 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 9778 | /* 24846 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9779 | /* 24850 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 9780 | /* 24854 */ // MIs[2] src |
| 9781 | /* 24854 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 9782 | /* 24859 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 9783 | /* 24863 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9784 | /* 24865 */ // (or:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (BLSIC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9785 | /* 24865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSIC32rr), |
| 9786 | /* 24868 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9787 | /* 24870 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 9788 | /* 24874 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9789 | /* 24877 */ GIR_RootConstrainSelectedInstOperands, |
| 9790 | /* 24878 */ // GIR_Coverage, 17352, |
| 9791 | /* 24878 */ GIR_EraseRootFromParent_Done, |
| 9792 | /* 24879 */ // Label 682: @24879 |
| 9793 | /* 24879 */ GIM_Try, /*On fail goto*//*Label 683*/ GIMT_Encode4(24956), // Rule ID 17354 // |
| 9794 | /* 24884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9795 | /* 24887 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9796 | /* 24890 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9797 | /* 24894 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9798 | /* 24898 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9799 | /* 24902 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9800 | /* 24906 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9801 | /* 24910 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9802 | /* 24915 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 9803 | /* 24919 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 9804 | /* 24923 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9805 | /* 24927 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 9806 | /* 24931 */ // MIs[2] src |
| 9807 | /* 24931 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 9808 | /* 24936 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 9809 | /* 24940 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9810 | /* 24942 */ // (or:{ *:[i32] } (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (T1MSKC32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9811 | /* 24942 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::T1MSKC32rr), |
| 9812 | /* 24945 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9813 | /* 24947 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 9814 | /* 24951 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9815 | /* 24954 */ GIR_RootConstrainSelectedInstOperands, |
| 9816 | /* 24955 */ // GIR_Coverage, 17354, |
| 9817 | /* 24955 */ GIR_EraseRootFromParent_Done, |
| 9818 | /* 24956 */ // Label 683: @24956 |
| 9819 | /* 24956 */ GIM_Try, /*On fail goto*//*Label 684*/ GIMT_Encode4(25030), // Rule ID 17340 // |
| 9820 | /* 24961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9821 | /* 24964 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9822 | /* 24967 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9823 | /* 24971 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9824 | /* 24975 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9825 | /* 24979 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 9826 | /* 24983 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9827 | /* 24987 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9828 | /* 24991 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 9829 | /* 24995 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9830 | /* 24999 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 9831 | /* 25003 */ // MIs[2] src |
| 9832 | /* 25003 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 9833 | /* 25008 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 9834 | /* 25012 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 9835 | /* 25016 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 9836 | /* 25018 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (xor:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), -1:{ *:[i32] })) => (BLCI32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9837 | /* 25018 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI32rr), |
| 9838 | /* 25021 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9839 | /* 25023 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 9840 | /* 25025 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9841 | /* 25028 */ GIR_RootConstrainSelectedInstOperands, |
| 9842 | /* 25029 */ // GIR_Coverage, 17340, |
| 9843 | /* 25029 */ GIR_EraseRootFromParent_Done, |
| 9844 | /* 25030 */ // Label 684: @25030 |
| 9845 | /* 25030 */ GIM_Try, /*On fail goto*//*Label 685*/ GIMT_Encode4(25088), // Rule ID 25081 // |
| 9846 | /* 25035 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9847 | /* 25038 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9848 | /* 25042 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9849 | /* 25046 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9850 | /* 25050 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9851 | /* 25054 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9852 | /* 25058 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9853 | /* 25063 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 9854 | /* 25067 */ // MIs[0] src |
| 9855 | /* 25067 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 9856 | /* 25072 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9857 | /* 25074 */ // (or:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLCS32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9858 | /* 25074 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCS32rr), |
| 9859 | /* 25077 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9860 | /* 25079 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 9861 | /* 25083 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9862 | /* 25086 */ GIR_RootConstrainSelectedInstOperands, |
| 9863 | /* 25087 */ // GIR_Coverage, 25081, |
| 9864 | /* 25087 */ GIR_EraseRootFromParent_Done, |
| 9865 | /* 25088 */ // Label 685: @25088 |
| 9866 | /* 25088 */ GIM_Try, /*On fail goto*//*Label 686*/ GIMT_Encode4(25146), // Rule ID 25083 // |
| 9867 | /* 25093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9868 | /* 25096 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9869 | /* 25100 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9870 | /* 25104 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9871 | /* 25108 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9872 | /* 25112 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9873 | /* 25116 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9874 | /* 25121 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 9875 | /* 25125 */ // MIs[0] src |
| 9876 | /* 25125 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 9877 | /* 25130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9878 | /* 25132 */ // (or:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLSFILL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9879 | /* 25132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSFILL32rr), |
| 9880 | /* 25135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9881 | /* 25137 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 9882 | /* 25141 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9883 | /* 25144 */ GIR_RootConstrainSelectedInstOperands, |
| 9884 | /* 25145 */ // GIR_Coverage, 25083, |
| 9885 | /* 25145 */ GIR_EraseRootFromParent_Done, |
| 9886 | /* 25146 */ // Label 686: @25146 |
| 9887 | /* 25146 */ GIM_Try, /*On fail goto*//*Label 687*/ GIMT_Encode4(25255), // Rule ID 26125 // |
| 9888 | /* 25151 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9889 | /* 25154 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9890 | /* 25158 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9891 | /* 25162 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 9892 | /* 25166 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9893 | /* 25170 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 9894 | /* 25174 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 9895 | /* 25178 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9896 | /* 25183 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9897 | /* 25187 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9898 | /* 25189 */ // (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] })) |
| 9899 | /* 25189 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 9900 | /* 25192 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 9901 | /* 25196 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9902 | /* 25201 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 9903 | /* 25203 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 9904 | /* 25206 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 9905 | /* 25210 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9906 | /* 25215 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 9907 | /* 25218 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 9908 | /* 25222 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 9909 | /* 25225 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 9910 | /* 25230 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 9911 | /* 25235 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 9912 | /* 25240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS32rr), |
| 9913 | /* 25243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9914 | /* 25245 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 9915 | /* 25247 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 9916 | /* 25250 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9917 | /* 25253 */ GIR_RootConstrainSelectedInstOperands, |
| 9918 | /* 25254 */ // GIR_Coverage, 26125, |
| 9919 | /* 25254 */ GIR_EraseRootFromParent_Done, |
| 9920 | /* 25255 */ // Label 687: @25255 |
| 9921 | /* 25255 */ GIM_Try, /*On fail goto*//*Label 688*/ GIMT_Encode4(25313), // Rule ID 25075 // |
| 9922 | /* 25260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9923 | /* 25263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9924 | /* 25267 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 9925 | /* 25271 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 9926 | /* 25275 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9927 | /* 25279 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9928 | /* 25283 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 9929 | /* 25287 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9930 | /* 25292 */ // MIs[0] src |
| 9931 | /* 25292 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/2, |
| 9932 | /* 25297 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9933 | /* 25299 */ // (or:{ *:[i32] } (sub:{ *:[i32] } -2:{ *:[i32] }, GR32:{ *:[i32] }:$src), GR32:{ *:[i32] }:$src) => (BLCI32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9934 | /* 25299 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI32rr), |
| 9935 | /* 25302 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9936 | /* 25304 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 9937 | /* 25308 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9938 | /* 25311 */ GIR_RootConstrainSelectedInstOperands, |
| 9939 | /* 25312 */ // GIR_Coverage, 25075, |
| 9940 | /* 25312 */ GIR_EraseRootFromParent_Done, |
| 9941 | /* 25313 */ // Label 688: @25313 |
| 9942 | /* 25313 */ GIM_Try, /*On fail goto*//*Label 689*/ GIMT_Encode4(25367), // Rule ID 17348 // |
| 9943 | /* 25318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9944 | /* 25321 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9945 | /* 25324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9946 | /* 25328 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9947 | /* 25332 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9948 | /* 25336 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9949 | /* 25340 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9950 | /* 25344 */ // MIs[1] src |
| 9951 | /* 25344 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 9952 | /* 25349 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 9953 | /* 25353 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9954 | /* 25355 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (BLCS32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9955 | /* 25355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCS32rr), |
| 9956 | /* 25358 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9957 | /* 25360 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 9958 | /* 25362 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9959 | /* 25365 */ GIR_RootConstrainSelectedInstOperands, |
| 9960 | /* 25366 */ // GIR_Coverage, 17348, |
| 9961 | /* 25366 */ GIR_EraseRootFromParent_Done, |
| 9962 | /* 25367 */ // Label 689: @25367 |
| 9963 | /* 25367 */ GIM_Try, /*On fail goto*//*Label 690*/ GIMT_Encode4(25421), // Rule ID 17350 // |
| 9964 | /* 25372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 9965 | /* 25375 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9966 | /* 25378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9967 | /* 25382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9968 | /* 25386 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9969 | /* 25390 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 9970 | /* 25394 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 9971 | /* 25398 */ // MIs[1] src |
| 9972 | /* 25398 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 9973 | /* 25403 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 9974 | /* 25407 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9975 | /* 25409 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (add:{ *:[i32] } GR32:{ *:[i32] }:$src, -1:{ *:[i32] })) => (BLSFILL32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 9976 | /* 25409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSFILL32rr), |
| 9977 | /* 25412 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 9978 | /* 25414 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 9979 | /* 25416 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 9980 | /* 25419 */ GIR_RootConstrainSelectedInstOperands, |
| 9981 | /* 25420 */ // GIR_Coverage, 17350, |
| 9982 | /* 25420 */ GIR_EraseRootFromParent_Done, |
| 9983 | /* 25421 */ // Label 690: @25421 |
| 9984 | /* 25421 */ GIM_Try, /*On fail goto*//*Label 691*/ GIMT_Encode4(25530), // Rule ID 22863 // |
| 9985 | /* 25426 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9986 | /* 25429 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9987 | /* 25433 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 9988 | /* 25437 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 9989 | /* 25441 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 9990 | /* 25445 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 9991 | /* 25449 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 9992 | /* 25453 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 9993 | /* 25457 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 9994 | /* 25462 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9995 | /* 25464 */ // (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] })) |
| 9996 | /* 25464 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 9997 | /* 25467 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 9998 | /* 25471 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 9999 | /* 25476 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 10000 | /* 25478 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 10001 | /* 25481 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 10002 | /* 25485 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10003 | /* 25490 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10004 | /* 25493 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 10005 | /* 25497 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 10006 | /* 25500 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 10007 | /* 25505 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 10008 | /* 25510 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 10009 | /* 25515 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS32rr), |
| 10010 | /* 25518 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10011 | /* 25520 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10012 | /* 25522 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10013 | /* 25525 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10014 | /* 25528 */ GIR_RootConstrainSelectedInstOperands, |
| 10015 | /* 25529 */ // GIR_Coverage, 22863, |
| 10016 | /* 25529 */ GIR_EraseRootFromParent_Done, |
| 10017 | /* 25530 */ // Label 691: @25530 |
| 10018 | /* 25530 */ GIM_Try, /*On fail goto*//*Label 692*/ GIMT_Encode4(25584), // Rule ID 17342 // |
| 10019 | /* 25535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10020 | /* 25538 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10021 | /* 25541 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10022 | /* 25545 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10023 | /* 25549 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10024 | /* 25553 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 10025 | /* 25557 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 10026 | /* 25561 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 10027 | /* 25565 */ // MIs[1] src |
| 10028 | /* 25565 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10029 | /* 25570 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10030 | /* 25572 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src, (sub:{ *:[i32] } -2:{ *:[i32] }, GR32:{ *:[i32] }:$src)) => (BLCI32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 10031 | /* 25572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI32rr), |
| 10032 | /* 25575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10033 | /* 25577 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10034 | /* 25579 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10035 | /* 25582 */ GIR_RootConstrainSelectedInstOperands, |
| 10036 | /* 25583 */ // GIR_Coverage, 17342, |
| 10037 | /* 25583 */ GIR_EraseRootFromParent_Done, |
| 10038 | /* 25584 */ // Label 692: @25584 |
| 10039 | /* 25584 */ GIM_Try, /*On fail goto*//*Label 693*/ GIMT_Encode4(25628), // Rule ID 22916 // |
| 10040 | /* 25589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10041 | /* 25592 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10042 | /* 25595 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10043 | /* 25599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10044 | /* 25603 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10045 | /* 25607 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10046 | /* 25611 */ // MIs[1] Operand 1 |
| 10047 | /* 25611 */ // No operand predicates |
| 10048 | /* 25611 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10049 | /* 25613 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (OR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 10050 | /* 25613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32ri), |
| 10051 | /* 25616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10052 | /* 25618 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10053 | /* 25620 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10054 | /* 25623 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10055 | /* 25626 */ GIR_RootConstrainSelectedInstOperands, |
| 10056 | /* 25627 */ // GIR_Coverage, 22916, |
| 10057 | /* 25627 */ GIR_EraseRootFromParent_Done, |
| 10058 | /* 25628 */ // Label 693: @25628 |
| 10059 | /* 25628 */ GIM_Try, /*On fail goto*//*Label 694*/ GIMT_Encode4(25672), // Rule ID 23006 // |
| 10060 | /* 25633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10061 | /* 25636 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10062 | /* 25639 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10063 | /* 25643 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10064 | /* 25647 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10065 | /* 25651 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10066 | /* 25655 */ // MIs[1] Operand 1 |
| 10067 | /* 25655 */ // No operand predicates |
| 10068 | /* 25655 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10069 | /* 25657 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (OR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 10070 | /* 25657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32ri_ND), |
| 10071 | /* 25660 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10072 | /* 25662 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10073 | /* 25664 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10074 | /* 25667 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10075 | /* 25670 */ GIR_RootConstrainSelectedInstOperands, |
| 10076 | /* 25671 */ // GIR_Coverage, 23006, |
| 10077 | /* 25671 */ GIR_EraseRootFromParent_Done, |
| 10078 | /* 25672 */ // Label 694: @25672 |
| 10079 | /* 25672 */ GIM_Try, /*On fail goto*//*Label 695*/ GIMT_Encode4(25708), // Rule ID 22908 // |
| 10080 | /* 25677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10081 | /* 25680 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10082 | /* 25683 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10083 | /* 25687 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10084 | /* 25691 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10085 | /* 25695 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (OR32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 10086 | /* 25695 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR32rr), |
| 10087 | /* 25700 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 10088 | /* 25706 */ GIR_RootConstrainSelectedInstOperands, |
| 10089 | /* 25707 */ // GIR_Coverage, 22908, |
| 10090 | /* 25707 */ GIR_Done, |
| 10091 | /* 25708 */ // Label 695: @25708 |
| 10092 | /* 25708 */ GIM_Try, /*On fail goto*//*Label 696*/ GIMT_Encode4(25744), // Rule ID 22998 // |
| 10093 | /* 25713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10094 | /* 25716 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 10095 | /* 25719 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10096 | /* 25723 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10097 | /* 25727 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 10098 | /* 25731 */ // (or:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (OR32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 10099 | /* 25731 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR32rr_ND), |
| 10100 | /* 25736 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 10101 | /* 25742 */ GIR_RootConstrainSelectedInstOperands, |
| 10102 | /* 25743 */ // GIR_Coverage, 22998, |
| 10103 | /* 25743 */ GIR_Done, |
| 10104 | /* 25744 */ // Label 696: @25744 |
| 10105 | /* 25744 */ GIM_Reject, |
| 10106 | /* 25745 */ // Label 676: @25745 |
| 10107 | /* 25745 */ GIM_Reject, |
| 10108 | /* 25746 */ // Label 639: @25746 |
| 10109 | /* 25746 */ GIM_Try, /*On fail goto*//*Label 697*/ GIMT_Encode4(27073), |
| 10110 | /* 25751 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 10111 | /* 25754 */ GIM_Try, /*On fail goto*//*Label 698*/ GIMT_Encode4(25822), // Rule ID 26146 // |
| 10112 | /* 25759 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10113 | /* 25762 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10114 | /* 25765 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10115 | /* 25769 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10116 | /* 25773 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10117 | /* 25777 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10118 | /* 25780 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10119 | /* 25784 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10120 | /* 25788 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10121 | /* 25792 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10122 | /* 25794 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10123 | /* 25801 */ // (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) |
| 10124 | /* 25801 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64rm), |
| 10125 | /* 25804 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10126 | /* 25806 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10127 | /* 25808 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10128 | /* 25812 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10129 | /* 25815 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10130 | /* 25820 */ GIR_RootConstrainSelectedInstOperands, |
| 10131 | /* 25821 */ // GIR_Coverage, 26146, |
| 10132 | /* 25821 */ GIR_EraseRootFromParent_Done, |
| 10133 | /* 25822 */ // Label 698: @25822 |
| 10134 | /* 25822 */ GIM_Try, /*On fail goto*//*Label 699*/ GIMT_Encode4(25890), // Rule ID 22913 // |
| 10135 | /* 25827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10136 | /* 25830 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10137 | /* 25833 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10138 | /* 25837 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10139 | /* 25841 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10140 | /* 25845 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10141 | /* 25849 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10142 | /* 25852 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10143 | /* 25856 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10144 | /* 25860 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10145 | /* 25862 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10146 | /* 25869 */ // (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) |
| 10147 | /* 25869 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64rm), |
| 10148 | /* 25872 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10149 | /* 25874 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10150 | /* 25876 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10151 | /* 25880 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10152 | /* 25883 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10153 | /* 25888 */ GIR_RootConstrainSelectedInstOperands, |
| 10154 | /* 25889 */ // GIR_Coverage, 22913, |
| 10155 | /* 25889 */ GIR_EraseRootFromParent_Done, |
| 10156 | /* 25890 */ // Label 699: @25890 |
| 10157 | /* 25890 */ GIM_Try, /*On fail goto*//*Label 700*/ GIMT_Encode4(25967), // Rule ID 25086 // |
| 10158 | /* 25895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10159 | /* 25898 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10160 | /* 25901 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10161 | /* 25905 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10162 | /* 25909 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10163 | /* 25913 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10164 | /* 25917 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10165 | /* 25921 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10166 | /* 25926 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 10167 | /* 25930 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10168 | /* 25934 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10169 | /* 25938 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10170 | /* 25942 */ // MIs[2] src |
| 10171 | /* 25942 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10172 | /* 25947 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 10173 | /* 25951 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10174 | /* 25953 */ // (or:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (BLSIC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10175 | /* 25953 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSIC64rr), |
| 10176 | /* 25956 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10177 | /* 25958 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10178 | /* 25962 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10179 | /* 25965 */ GIR_RootConstrainSelectedInstOperands, |
| 10180 | /* 25966 */ // GIR_Coverage, 25086, |
| 10181 | /* 25966 */ GIR_EraseRootFromParent_Done, |
| 10182 | /* 25967 */ // Label 700: @25967 |
| 10183 | /* 25967 */ GIM_Try, /*On fail goto*//*Label 701*/ GIMT_Encode4(26044), // Rule ID 25088 // |
| 10184 | /* 25972 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10185 | /* 25975 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10186 | /* 25978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10187 | /* 25982 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10188 | /* 25986 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10189 | /* 25990 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10190 | /* 25994 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10191 | /* 25998 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10192 | /* 26003 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 10193 | /* 26007 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10194 | /* 26011 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10195 | /* 26015 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10196 | /* 26019 */ // MIs[2] src |
| 10197 | /* 26019 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10198 | /* 26024 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 10199 | /* 26028 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10200 | /* 26030 */ // (or:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (T1MSKC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10201 | /* 26030 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::T1MSKC64rr), |
| 10202 | /* 26033 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10203 | /* 26035 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10204 | /* 26039 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10205 | /* 26042 */ GIR_RootConstrainSelectedInstOperands, |
| 10206 | /* 26043 */ // GIR_Coverage, 25088, |
| 10207 | /* 26043 */ GIR_EraseRootFromParent_Done, |
| 10208 | /* 26044 */ // Label 701: @26044 |
| 10209 | /* 26044 */ GIM_Try, /*On fail goto*//*Label 702*/ GIMT_Encode4(26122), // Rule ID 25074 // |
| 10210 | /* 26049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10211 | /* 26052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10212 | /* 26056 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10213 | /* 26060 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10214 | /* 26064 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10215 | /* 26068 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10216 | /* 26072 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 10217 | /* 26076 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10218 | /* 26080 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 10219 | /* 26084 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10220 | /* 26088 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10221 | /* 26093 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 10222 | /* 26097 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 10223 | /* 26101 */ // MIs[0] src |
| 10224 | /* 26101 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 10225 | /* 26106 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10226 | /* 26108 */ // (or:{ *:[i64] } (xor:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), -1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLCI64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10227 | /* 26108 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI64rr), |
| 10228 | /* 26111 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10229 | /* 26113 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // src |
| 10230 | /* 26117 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10231 | /* 26120 */ GIR_RootConstrainSelectedInstOperands, |
| 10232 | /* 26121 */ // GIR_Coverage, 25074, |
| 10233 | /* 26121 */ GIR_EraseRootFromParent_Done, |
| 10234 | /* 26122 */ // Label 702: @26122 |
| 10235 | /* 26122 */ GIM_Try, /*On fail goto*//*Label 703*/ GIMT_Encode4(26199), // Rule ID 17353 // |
| 10236 | /* 26127 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10237 | /* 26130 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10238 | /* 26133 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10239 | /* 26137 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10240 | /* 26141 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10241 | /* 26145 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10242 | /* 26149 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10243 | /* 26153 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10244 | /* 26158 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 10245 | /* 26162 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10246 | /* 26166 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10247 | /* 26170 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10248 | /* 26174 */ // MIs[2] src |
| 10249 | /* 26174 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10250 | /* 26179 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 255, |
| 10251 | /* 26183 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10252 | /* 26185 */ // (or:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (BLSIC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10253 | /* 26185 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSIC64rr), |
| 10254 | /* 26188 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10255 | /* 26190 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10256 | /* 26194 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10257 | /* 26197 */ GIR_RootConstrainSelectedInstOperands, |
| 10258 | /* 26198 */ // GIR_Coverage, 17353, |
| 10259 | /* 26198 */ GIR_EraseRootFromParent_Done, |
| 10260 | /* 26199 */ // Label 703: @26199 |
| 10261 | /* 26199 */ GIM_Try, /*On fail goto*//*Label 704*/ GIMT_Encode4(26276), // Rule ID 17355 // |
| 10262 | /* 26204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10263 | /* 26207 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10264 | /* 26210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10265 | /* 26214 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10266 | /* 26218 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10267 | /* 26222 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10268 | /* 26226 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10269 | /* 26230 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10270 | /* 26235 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 10271 | /* 26239 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 10272 | /* 26243 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10273 | /* 26247 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10274 | /* 26251 */ // MIs[2] src |
| 10275 | /* 26251 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10276 | /* 26256 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 10277 | /* 26260 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10278 | /* 26262 */ // (or:{ *:[i64] } (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (T1MSKC64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10279 | /* 26262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::T1MSKC64rr), |
| 10280 | /* 26265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10281 | /* 26267 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10282 | /* 26271 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10283 | /* 26274 */ GIR_RootConstrainSelectedInstOperands, |
| 10284 | /* 26275 */ // GIR_Coverage, 17355, |
| 10285 | /* 26275 */ GIR_EraseRootFromParent_Done, |
| 10286 | /* 26276 */ // Label 704: @26276 |
| 10287 | /* 26276 */ GIM_Try, /*On fail goto*//*Label 705*/ GIMT_Encode4(26350), // Rule ID 17341 // |
| 10288 | /* 26281 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10289 | /* 26284 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10290 | /* 26287 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10291 | /* 26291 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10292 | /* 26295 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10293 | /* 26299 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 10294 | /* 26303 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10295 | /* 26307 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10296 | /* 26311 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 10297 | /* 26315 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10298 | /* 26319 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 10299 | /* 26323 */ // MIs[2] src |
| 10300 | /* 26323 */ GIM_CheckIsSameOperand, /*MI*/2, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10301 | /* 26328 */ GIM_CheckConstantInt8, /*MI*/2, /*Op*/2, 1, |
| 10302 | /* 26332 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 10303 | /* 26336 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 10304 | /* 26338 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (xor:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), -1:{ *:[i64] })) => (BLCI64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10305 | /* 26338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI64rr), |
| 10306 | /* 26341 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10307 | /* 26343 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10308 | /* 26345 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10309 | /* 26348 */ GIR_RootConstrainSelectedInstOperands, |
| 10310 | /* 26349 */ // GIR_Coverage, 17341, |
| 10311 | /* 26349 */ GIR_EraseRootFromParent_Done, |
| 10312 | /* 26350 */ // Label 705: @26350 |
| 10313 | /* 26350 */ GIM_Try, /*On fail goto*//*Label 706*/ GIMT_Encode4(26408), // Rule ID 25082 // |
| 10314 | /* 26355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10315 | /* 26358 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10316 | /* 26362 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10317 | /* 26366 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10318 | /* 26370 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10319 | /* 26374 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10320 | /* 26378 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10321 | /* 26383 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 10322 | /* 26387 */ // MIs[0] src |
| 10323 | /* 26387 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10324 | /* 26392 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10325 | /* 26394 */ // (or:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLCS64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10326 | /* 26394 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCS64rr), |
| 10327 | /* 26397 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10328 | /* 26399 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10329 | /* 26403 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10330 | /* 26406 */ GIR_RootConstrainSelectedInstOperands, |
| 10331 | /* 26407 */ // GIR_Coverage, 25082, |
| 10332 | /* 26407 */ GIR_EraseRootFromParent_Done, |
| 10333 | /* 26408 */ // Label 706: @26408 |
| 10334 | /* 26408 */ GIM_Try, /*On fail goto*//*Label 707*/ GIMT_Encode4(26466), // Rule ID 25084 // |
| 10335 | /* 26413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10336 | /* 26416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10337 | /* 26420 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10338 | /* 26424 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10339 | /* 26428 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10340 | /* 26432 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10341 | /* 26436 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10342 | /* 26441 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 10343 | /* 26445 */ // MIs[0] src |
| 10344 | /* 26445 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 10345 | /* 26450 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10346 | /* 26452 */ // (or:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLSFILL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10347 | /* 26452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSFILL64rr), |
| 10348 | /* 26455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10349 | /* 26457 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 10350 | /* 26461 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10351 | /* 26464 */ GIR_RootConstrainSelectedInstOperands, |
| 10352 | /* 26465 */ // GIR_Coverage, 25084, |
| 10353 | /* 26465 */ GIR_EraseRootFromParent_Done, |
| 10354 | /* 26466 */ // Label 707: @26466 |
| 10355 | /* 26466 */ GIM_Try, /*On fail goto*//*Label 708*/ GIMT_Encode4(26575), // Rule ID 26131 // |
| 10356 | /* 26471 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10357 | /* 26474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10358 | /* 26478 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10359 | /* 26482 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 10360 | /* 26486 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10361 | /* 26490 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 10362 | /* 26494 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 10363 | /* 26498 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10364 | /* 26503 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10365 | /* 26507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10366 | /* 26509 */ // (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] })) |
| 10367 | /* 26509 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 10368 | /* 26512 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 10369 | /* 26516 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10370 | /* 26521 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 10371 | /* 26523 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 10372 | /* 26526 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 10373 | /* 26530 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10374 | /* 26535 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10375 | /* 26538 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 10376 | /* 26542 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 10377 | /* 26545 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 10378 | /* 26550 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 10379 | /* 26555 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 10380 | /* 26560 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS64rr), |
| 10381 | /* 26563 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10382 | /* 26565 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10383 | /* 26567 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10384 | /* 26570 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10385 | /* 26573 */ GIR_RootConstrainSelectedInstOperands, |
| 10386 | /* 26574 */ // GIR_Coverage, 26131, |
| 10387 | /* 26574 */ GIR_EraseRootFromParent_Done, |
| 10388 | /* 26575 */ // Label 708: @26575 |
| 10389 | /* 26575 */ GIM_Try, /*On fail goto*//*Label 709*/ GIMT_Encode4(26633), // Rule ID 25076 // |
| 10390 | /* 26580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10391 | /* 26583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10392 | /* 26587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10393 | /* 26591 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 10394 | /* 26595 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10395 | /* 26599 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10396 | /* 26603 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 10397 | /* 26607 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10398 | /* 26612 */ // MIs[0] src |
| 10399 | /* 26612 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/2, |
| 10400 | /* 26617 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10401 | /* 26619 */ // (or:{ *:[i64] } (sub:{ *:[i64] } -2:{ *:[i64] }, GR64:{ *:[i64] }:$src), GR64:{ *:[i64] }:$src) => (BLCI64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10402 | /* 26619 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI64rr), |
| 10403 | /* 26622 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10404 | /* 26624 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 10405 | /* 26628 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10406 | /* 26631 */ GIR_RootConstrainSelectedInstOperands, |
| 10407 | /* 26632 */ // GIR_Coverage, 25076, |
| 10408 | /* 26632 */ GIR_EraseRootFromParent_Done, |
| 10409 | /* 26633 */ // Label 709: @26633 |
| 10410 | /* 26633 */ GIM_Try, /*On fail goto*//*Label 710*/ GIMT_Encode4(26687), // Rule ID 17349 // |
| 10411 | /* 26638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10412 | /* 26641 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10413 | /* 26644 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10414 | /* 26648 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10415 | /* 26652 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10416 | /* 26656 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10417 | /* 26660 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10418 | /* 26664 */ // MIs[1] src |
| 10419 | /* 26664 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10420 | /* 26669 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 10421 | /* 26673 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10422 | /* 26675 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (BLCS64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10423 | /* 26675 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCS64rr), |
| 10424 | /* 26678 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10425 | /* 26680 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10426 | /* 26682 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10427 | /* 26685 */ GIR_RootConstrainSelectedInstOperands, |
| 10428 | /* 26686 */ // GIR_Coverage, 17349, |
| 10429 | /* 26686 */ GIR_EraseRootFromParent_Done, |
| 10430 | /* 26687 */ // Label 710: @26687 |
| 10431 | /* 26687 */ GIM_Try, /*On fail goto*//*Label 711*/ GIMT_Encode4(26741), // Rule ID 17351 // |
| 10432 | /* 26692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10433 | /* 26695 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10434 | /* 26698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10435 | /* 26702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10436 | /* 26706 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10437 | /* 26710 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 10438 | /* 26714 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 10439 | /* 26718 */ // MIs[1] src |
| 10440 | /* 26718 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10441 | /* 26723 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 10442 | /* 26727 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10443 | /* 26729 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (add:{ *:[i64] } GR64:{ *:[i64] }:$src, -1:{ *:[i64] })) => (BLSFILL64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10444 | /* 26729 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLSFILL64rr), |
| 10445 | /* 26732 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10446 | /* 26734 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10447 | /* 26736 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10448 | /* 26739 */ GIR_RootConstrainSelectedInstOperands, |
| 10449 | /* 26740 */ // GIR_Coverage, 17351, |
| 10450 | /* 26740 */ GIR_EraseRootFromParent_Done, |
| 10451 | /* 26741 */ // Label 711: @26741 |
| 10452 | /* 26741 */ GIM_Try, /*On fail goto*//*Label 712*/ GIMT_Encode4(26850), // Rule ID 22869 // |
| 10453 | /* 26746 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10454 | /* 26749 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10455 | /* 26753 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10456 | /* 26757 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10457 | /* 26761 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 10458 | /* 26765 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10459 | /* 26769 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 10460 | /* 26773 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 10461 | /* 26777 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 10462 | /* 26782 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10463 | /* 26784 */ // (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] })) |
| 10464 | /* 26784 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 10465 | /* 26787 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 10466 | /* 26791 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10467 | /* 26796 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 10468 | /* 26798 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 10469 | /* 26801 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 10470 | /* 26805 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10471 | /* 26810 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10472 | /* 26813 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 10473 | /* 26817 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 10474 | /* 26820 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 10475 | /* 26825 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 10476 | /* 26830 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 10477 | /* 26835 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTS64rr), |
| 10478 | /* 26838 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10479 | /* 26840 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10480 | /* 26842 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10481 | /* 26845 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10482 | /* 26848 */ GIR_RootConstrainSelectedInstOperands, |
| 10483 | /* 26849 */ // GIR_Coverage, 22869, |
| 10484 | /* 26849 */ GIR_EraseRootFromParent_Done, |
| 10485 | /* 26850 */ // Label 712: @26850 |
| 10486 | /* 26850 */ GIM_Try, /*On fail goto*//*Label 713*/ GIMT_Encode4(26904), // Rule ID 17343 // |
| 10487 | /* 26855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 10488 | /* 26858 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10489 | /* 26861 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10490 | /* 26865 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10491 | /* 26869 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10492 | /* 26873 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 10493 | /* 26877 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 10494 | /* 26881 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 254, |
| 10495 | /* 26885 */ // MIs[1] src |
| 10496 | /* 26885 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 10497 | /* 26890 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10498 | /* 26892 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src, (sub:{ *:[i64] } -2:{ *:[i64] }, GR64:{ *:[i64] }:$src)) => (BLCI64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 10499 | /* 26892 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCI64rr), |
| 10500 | /* 26895 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10501 | /* 26897 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 10502 | /* 26899 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10503 | /* 26902 */ GIR_RootConstrainSelectedInstOperands, |
| 10504 | /* 26903 */ // GIR_Coverage, 17343, |
| 10505 | /* 26903 */ GIR_EraseRootFromParent_Done, |
| 10506 | /* 26904 */ // Label 713: @26904 |
| 10507 | /* 26904 */ GIM_Try, /*On fail goto*//*Label 714*/ GIMT_Encode4(26952), // Rule ID 22917 // |
| 10508 | /* 26909 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10509 | /* 26912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10510 | /* 26915 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10511 | /* 26919 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10512 | /* 26923 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10513 | /* 26927 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10514 | /* 26931 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 10515 | /* 26935 */ // MIs[1] Operand 1 |
| 10516 | /* 26935 */ // No operand predicates |
| 10517 | /* 26935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10518 | /* 26937 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (OR64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 10519 | /* 26937 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64ri32), |
| 10520 | /* 26940 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10521 | /* 26942 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10522 | /* 26944 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10523 | /* 26947 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10524 | /* 26950 */ GIR_RootConstrainSelectedInstOperands, |
| 10525 | /* 26951 */ // GIR_Coverage, 22917, |
| 10526 | /* 26951 */ GIR_EraseRootFromParent_Done, |
| 10527 | /* 26952 */ // Label 714: @26952 |
| 10528 | /* 26952 */ GIM_Try, /*On fail goto*//*Label 715*/ GIMT_Encode4(27000), // Rule ID 23007 // |
| 10529 | /* 26957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10530 | /* 26960 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10531 | /* 26963 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10532 | /* 26967 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10533 | /* 26971 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10534 | /* 26975 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 10535 | /* 26979 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 10536 | /* 26983 */ // MIs[1] Operand 1 |
| 10537 | /* 26983 */ // No operand predicates |
| 10538 | /* 26983 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10539 | /* 26985 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (OR64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 10540 | /* 26985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64ri32_ND), |
| 10541 | /* 26988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10542 | /* 26990 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10543 | /* 26992 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 10544 | /* 26995 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 10545 | /* 26998 */ GIR_RootConstrainSelectedInstOperands, |
| 10546 | /* 26999 */ // GIR_Coverage, 23007, |
| 10547 | /* 26999 */ GIR_EraseRootFromParent_Done, |
| 10548 | /* 27000 */ // Label 715: @27000 |
| 10549 | /* 27000 */ GIM_Try, /*On fail goto*//*Label 716*/ GIMT_Encode4(27036), // Rule ID 22909 // |
| 10550 | /* 27005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 10551 | /* 27008 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10552 | /* 27011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10553 | /* 27015 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10554 | /* 27019 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10555 | /* 27023 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (OR64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 10556 | /* 27023 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR64rr), |
| 10557 | /* 27028 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 10558 | /* 27034 */ GIR_RootConstrainSelectedInstOperands, |
| 10559 | /* 27035 */ // GIR_Coverage, 22909, |
| 10560 | /* 27035 */ GIR_Done, |
| 10561 | /* 27036 */ // Label 716: @27036 |
| 10562 | /* 27036 */ GIM_Try, /*On fail goto*//*Label 717*/ GIMT_Encode4(27072), // Rule ID 22999 // |
| 10563 | /* 27041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 10564 | /* 27044 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 10565 | /* 27047 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10566 | /* 27051 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10567 | /* 27055 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 10568 | /* 27059 */ // (or:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (OR64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 10569 | /* 27059 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::OR64rr_ND), |
| 10570 | /* 27064 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 10571 | /* 27070 */ GIR_RootConstrainSelectedInstOperands, |
| 10572 | /* 27071 */ // GIR_Coverage, 22999, |
| 10573 | /* 27071 */ GIR_Done, |
| 10574 | /* 27072 */ // Label 717: @27072 |
| 10575 | /* 27072 */ GIM_Reject, |
| 10576 | /* 27073 */ // Label 697: @27073 |
| 10577 | /* 27073 */ GIM_Reject, |
| 10578 | /* 27074 */ // Label 640: @27074 |
| 10579 | /* 27074 */ GIM_Try, /*On fail goto*//*Label 718*/ GIMT_Encode4(27173), // Rule ID 19491 // |
| 10580 | /* 27079 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 10581 | /* 27082 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s1, |
| 10582 | /* 27085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 10583 | /* 27089 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 10584 | /* 27093 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 10585 | /* 27097 */ // (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] }) |
| 10586 | /* 27097 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 10587 | /* 27100 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 10588 | /* 27104 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10589 | /* 27109 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 10590 | /* 27113 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 10591 | /* 27118 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 10592 | /* 27121 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 10593 | /* 27125 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10594 | /* 27130 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 10595 | /* 27134 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 10596 | /* 27139 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 10597 | /* 27142 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 10598 | /* 27146 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10599 | /* 27151 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10600 | /* 27154 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 10601 | /* 27157 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 10602 | /* 27159 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 10603 | /* 27162 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10604 | /* 27164 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10605 | /* 27167 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 10606 | /* 27172 */ // GIR_Coverage, 19491, |
| 10607 | /* 27172 */ GIR_EraseRootFromParent_Done, |
| 10608 | /* 27173 */ // Label 718: @27173 |
| 10609 | /* 27173 */ GIM_Reject, |
| 10610 | /* 27174 */ // Label 641: @27174 |
| 10611 | /* 27174 */ GIM_Try, /*On fail goto*//*Label 719*/ GIMT_Encode4(27515), |
| 10612 | /* 27179 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 10613 | /* 27182 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10614 | /* 27185 */ GIM_Try, /*On fail goto*//*Label 720*/ GIMT_Encode4(27247), // Rule ID 23445 // |
| 10615 | /* 27190 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 10616 | /* 27193 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10617 | /* 27197 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10618 | /* 27201 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10619 | /* 27205 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10620 | /* 27208 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10621 | /* 27212 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10622 | /* 27216 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10623 | /* 27220 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10624 | /* 27222 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10625 | /* 27229 */ // (or:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src1) => (VPORrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10626 | /* 27229 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 10627 | /* 27232 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10628 | /* 27234 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10629 | /* 27236 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10630 | /* 27240 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10631 | /* 27245 */ GIR_RootConstrainSelectedInstOperands, |
| 10632 | /* 27246 */ // GIR_Coverage, 23445, |
| 10633 | /* 27246 */ GIR_EraseRootFromParent_Done, |
| 10634 | /* 27247 */ // Label 720: @27247 |
| 10635 | /* 27247 */ GIM_Try, /*On fail goto*//*Label 721*/ GIMT_Encode4(27309), // Rule ID 24267 // |
| 10636 | /* 27252 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 10637 | /* 27255 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10638 | /* 27259 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10639 | /* 27263 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10640 | /* 27267 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10641 | /* 27270 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10642 | /* 27274 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10643 | /* 27278 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10644 | /* 27282 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10645 | /* 27284 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10646 | /* 27291 */ // (or:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPORQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10647 | /* 27291 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 10648 | /* 27294 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10649 | /* 27296 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10650 | /* 27298 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10651 | /* 27302 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10652 | /* 27307 */ GIR_RootConstrainSelectedInstOperands, |
| 10653 | /* 27308 */ // GIR_Coverage, 24267, |
| 10654 | /* 27308 */ GIR_EraseRootFromParent_Done, |
| 10655 | /* 27309 */ // Label 721: @27309 |
| 10656 | /* 27309 */ GIM_Try, /*On fail goto*//*Label 722*/ GIMT_Encode4(27371), // Rule ID 2117 // |
| 10657 | /* 27314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 10658 | /* 27317 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10659 | /* 27321 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10660 | /* 27325 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10661 | /* 27329 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10662 | /* 27333 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10663 | /* 27336 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10664 | /* 27340 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10665 | /* 27344 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10666 | /* 27346 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10667 | /* 27353 */ // (or:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10668 | /* 27353 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 10669 | /* 27356 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10670 | /* 27358 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10671 | /* 27360 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10672 | /* 27364 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10673 | /* 27369 */ GIR_RootConstrainSelectedInstOperands, |
| 10674 | /* 27370 */ // GIR_Coverage, 2117, |
| 10675 | /* 27370 */ GIR_EraseRootFromParent_Done, |
| 10676 | /* 27371 */ // Label 722: @27371 |
| 10677 | /* 27371 */ GIM_Try, /*On fail goto*//*Label 723*/ GIMT_Encode4(27433), // Rule ID 5765 // |
| 10678 | /* 27376 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 10679 | /* 27379 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10680 | /* 27383 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10681 | /* 27387 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10682 | /* 27391 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10683 | /* 27395 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10684 | /* 27398 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10685 | /* 27402 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10686 | /* 27406 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10687 | /* 27408 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10688 | /* 27415 */ // (or:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10689 | /* 27415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 10690 | /* 27418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10691 | /* 27420 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10692 | /* 27422 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10693 | /* 27426 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10694 | /* 27431 */ GIR_RootConstrainSelectedInstOperands, |
| 10695 | /* 27432 */ // GIR_Coverage, 5765, |
| 10696 | /* 27432 */ GIR_EraseRootFromParent_Done, |
| 10697 | /* 27433 */ // Label 723: @27433 |
| 10698 | /* 27433 */ GIM_Try, /*On fail goto*//*Label 724*/ GIMT_Encode4(27460), // Rule ID 2116 // |
| 10699 | /* 27438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 10700 | /* 27441 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10701 | /* 27445 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10702 | /* 27449 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10703 | /* 27453 */ // (or:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPORrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 10704 | /* 27453 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORrr), |
| 10705 | /* 27458 */ GIR_RootConstrainSelectedInstOperands, |
| 10706 | /* 27459 */ // GIR_Coverage, 2116, |
| 10707 | /* 27459 */ GIR_Done, |
| 10708 | /* 27460 */ // Label 724: @27460 |
| 10709 | /* 27460 */ GIM_Try, /*On fail goto*//*Label 725*/ GIMT_Encode4(27487), // Rule ID 2118 // |
| 10710 | /* 27465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 10711 | /* 27468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10712 | /* 27472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10713 | /* 27476 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10714 | /* 27480 */ // (or:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PORrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 10715 | /* 27480 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PORrr), |
| 10716 | /* 27485 */ GIR_RootConstrainSelectedInstOperands, |
| 10717 | /* 27486 */ // GIR_Coverage, 2118, |
| 10718 | /* 27486 */ GIR_Done, |
| 10719 | /* 27487 */ // Label 725: @27487 |
| 10720 | /* 27487 */ GIM_Try, /*On fail goto*//*Label 726*/ GIMT_Encode4(27514), // Rule ID 5762 // |
| 10721 | /* 27492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 10722 | /* 27495 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10723 | /* 27499 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10724 | /* 27503 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10725 | /* 27507 */ // (or:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPORQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 10726 | /* 27507 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rr), |
| 10727 | /* 27512 */ GIR_RootConstrainSelectedInstOperands, |
| 10728 | /* 27513 */ // GIR_Coverage, 5762, |
| 10729 | /* 27513 */ GIR_Done, |
| 10730 | /* 27514 */ // Label 726: @27514 |
| 10731 | /* 27514 */ GIM_Reject, |
| 10732 | /* 27515 */ // Label 719: @27515 |
| 10733 | /* 27515 */ GIM_Reject, |
| 10734 | /* 27516 */ // Label 642: @27516 |
| 10735 | /* 27516 */ GIM_Try, /*On fail goto*//*Label 727*/ GIMT_Encode4(27615), // Rule ID 19492 // |
| 10736 | /* 27521 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 10737 | /* 27524 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 10738 | /* 27527 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 10739 | /* 27531 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 10740 | /* 27535 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 10741 | /* 27539 */ // (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] }) |
| 10742 | /* 27539 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 10743 | /* 27542 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 10744 | /* 27546 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10745 | /* 27551 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 10746 | /* 27555 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 10747 | /* 27560 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 10748 | /* 27563 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 10749 | /* 27567 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10750 | /* 27572 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 10751 | /* 27576 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 10752 | /* 27581 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 10753 | /* 27584 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 10754 | /* 27588 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 10755 | /* 27593 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 10756 | /* 27596 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 10757 | /* 27599 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 10758 | /* 27601 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 10759 | /* 27604 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10760 | /* 27606 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 10761 | /* 27609 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 10762 | /* 27614 */ // GIR_Coverage, 19492, |
| 10763 | /* 27614 */ GIR_EraseRootFromParent_Done, |
| 10764 | /* 27615 */ // Label 727: @27615 |
| 10765 | /* 27615 */ GIM_Reject, |
| 10766 | /* 27616 */ // Label 643: @27616 |
| 10767 | /* 27616 */ GIM_Try, /*On fail goto*//*Label 728*/ GIMT_Encode4(27957), |
| 10768 | /* 27621 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 10769 | /* 27624 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10770 | /* 27627 */ GIM_Try, /*On fail goto*//*Label 729*/ GIMT_Encode4(27689), // Rule ID 24285 // |
| 10771 | /* 27632 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 10772 | /* 27635 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10773 | /* 27639 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10774 | /* 27643 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10775 | /* 27647 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10776 | /* 27650 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10777 | /* 27654 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10778 | /* 27658 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10779 | /* 27662 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10780 | /* 27664 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10781 | /* 27671 */ // (or:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPORDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10782 | /* 27671 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZ128rm), |
| 10783 | /* 27674 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10784 | /* 27676 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10785 | /* 27678 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10786 | /* 27682 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10787 | /* 27687 */ GIR_RootConstrainSelectedInstOperands, |
| 10788 | /* 27688 */ // GIR_Coverage, 24285, |
| 10789 | /* 27688 */ GIR_EraseRootFromParent_Done, |
| 10790 | /* 27689 */ // Label 729: @27689 |
| 10791 | /* 27689 */ GIM_Try, /*On fail goto*//*Label 730*/ GIMT_Encode4(27751), // Rule ID 25338 // |
| 10792 | /* 27694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 10793 | /* 27697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10794 | /* 27701 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10795 | /* 27705 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10796 | /* 27709 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10797 | /* 27712 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10798 | /* 27716 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10799 | /* 27720 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10800 | /* 27724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10801 | /* 27726 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10802 | /* 27733 */ // (or:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPORrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10803 | /* 27733 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 10804 | /* 27736 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10805 | /* 27738 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10806 | /* 27740 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10807 | /* 27744 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10808 | /* 27749 */ GIR_RootConstrainSelectedInstOperands, |
| 10809 | /* 27750 */ // GIR_Coverage, 25338, |
| 10810 | /* 27750 */ GIR_EraseRootFromParent_Done, |
| 10811 | /* 27751 */ // Label 730: @27751 |
| 10812 | /* 27751 */ GIM_Try, /*On fail goto*//*Label 731*/ GIMT_Encode4(27813), // Rule ID 5792 // |
| 10813 | /* 27756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 10814 | /* 27759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10815 | /* 27763 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10816 | /* 27767 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10817 | /* 27771 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10818 | /* 27775 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10819 | /* 27778 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10820 | /* 27782 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10821 | /* 27786 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10822 | /* 27788 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10823 | /* 27795 */ // (or:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10824 | /* 27795 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZ128rm), |
| 10825 | /* 27798 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10826 | /* 27800 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10827 | /* 27802 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10828 | /* 27806 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10829 | /* 27811 */ GIR_RootConstrainSelectedInstOperands, |
| 10830 | /* 27812 */ // GIR_Coverage, 5792, |
| 10831 | /* 27812 */ GIR_EraseRootFromParent_Done, |
| 10832 | /* 27813 */ // Label 731: @27813 |
| 10833 | /* 27813 */ GIM_Try, /*On fail goto*//*Label 732*/ GIMT_Encode4(27875), // Rule ID 18153 // |
| 10834 | /* 27818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 10835 | /* 27821 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10836 | /* 27825 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10837 | /* 27829 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10838 | /* 27833 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10839 | /* 27837 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10840 | /* 27840 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10841 | /* 27844 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10842 | /* 27848 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10843 | /* 27850 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10844 | /* 27857 */ // (or:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10845 | /* 27857 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 10846 | /* 27860 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10847 | /* 27862 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10848 | /* 27864 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10849 | /* 27868 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10850 | /* 27873 */ GIR_RootConstrainSelectedInstOperands, |
| 10851 | /* 27874 */ // GIR_Coverage, 18153, |
| 10852 | /* 27874 */ GIR_EraseRootFromParent_Done, |
| 10853 | /* 27875 */ // Label 732: @27875 |
| 10854 | /* 27875 */ GIM_Try, /*On fail goto*//*Label 733*/ GIMT_Encode4(27902), // Rule ID 5789 // |
| 10855 | /* 27880 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 10856 | /* 27883 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10857 | /* 27887 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10858 | /* 27891 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 10859 | /* 27895 */ // (or:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPORDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 10860 | /* 27895 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORDZ128rr), |
| 10861 | /* 27900 */ GIR_RootConstrainSelectedInstOperands, |
| 10862 | /* 27901 */ // GIR_Coverage, 5789, |
| 10863 | /* 27901 */ GIR_Done, |
| 10864 | /* 27902 */ // Label 733: @27902 |
| 10865 | /* 27902 */ GIM_Try, /*On fail goto*//*Label 734*/ GIMT_Encode4(27929), // Rule ID 18141 // |
| 10866 | /* 27907 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 10867 | /* 27910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10868 | /* 27914 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10869 | /* 27918 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10870 | /* 27922 */ // (or:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPORrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 10871 | /* 27922 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORrr), |
| 10872 | /* 27927 */ GIR_RootConstrainSelectedInstOperands, |
| 10873 | /* 27928 */ // GIR_Coverage, 18141, |
| 10874 | /* 27928 */ GIR_Done, |
| 10875 | /* 27929 */ // Label 734: @27929 |
| 10876 | /* 27929 */ GIM_Try, /*On fail goto*//*Label 735*/ GIMT_Encode4(27956), // Rule ID 18165 // |
| 10877 | /* 27934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 10878 | /* 27937 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10879 | /* 27941 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10880 | /* 27945 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 10881 | /* 27949 */ // (or:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PORrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 10882 | /* 27949 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PORrr), |
| 10883 | /* 27954 */ GIR_RootConstrainSelectedInstOperands, |
| 10884 | /* 27955 */ // GIR_Coverage, 18165, |
| 10885 | /* 27955 */ GIR_Done, |
| 10886 | /* 27956 */ // Label 735: @27956 |
| 10887 | /* 27956 */ GIM_Reject, |
| 10888 | /* 27957 */ // Label 728: @27957 |
| 10889 | /* 27957 */ GIM_Reject, |
| 10890 | /* 27958 */ // Label 644: @27958 |
| 10891 | /* 27958 */ GIM_Try, /*On fail goto*//*Label 736*/ GIMT_Encode4(28423), |
| 10892 | /* 27963 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 10893 | /* 27966 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 10894 | /* 27969 */ GIM_Try, /*On fail goto*//*Label 737*/ GIMT_Encode4(28031), // Rule ID 23447 // |
| 10895 | /* 27974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 10896 | /* 27977 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 10897 | /* 27981 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10898 | /* 27985 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10899 | /* 27989 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10900 | /* 27992 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10901 | /* 27996 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10902 | /* 28000 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 10903 | /* 28004 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10904 | /* 28006 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10905 | /* 28013 */ // (or:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VPORYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10906 | /* 28013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 10907 | /* 28016 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10908 | /* 28018 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10909 | /* 28020 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10910 | /* 28024 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10911 | /* 28029 */ GIR_RootConstrainSelectedInstOperands, |
| 10912 | /* 28030 */ // GIR_Coverage, 23447, |
| 10913 | /* 28030 */ GIR_EraseRootFromParent_Done, |
| 10914 | /* 28031 */ // Label 737: @28031 |
| 10915 | /* 28031 */ GIM_Try, /*On fail goto*//*Label 738*/ GIMT_Encode4(28093), // Rule ID 24261 // |
| 10916 | /* 28036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 10917 | /* 28039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 10918 | /* 28043 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10919 | /* 28047 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10920 | /* 28051 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10921 | /* 28054 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10922 | /* 28058 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10923 | /* 28062 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 10924 | /* 28066 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10925 | /* 28068 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10926 | /* 28075 */ // (or:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPORQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10927 | /* 28075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 10928 | /* 28078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10929 | /* 28080 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10930 | /* 28082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10931 | /* 28086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10932 | /* 28091 */ GIR_RootConstrainSelectedInstOperands, |
| 10933 | /* 28092 */ // GIR_Coverage, 24261, |
| 10934 | /* 28092 */ GIR_EraseRootFromParent_Done, |
| 10935 | /* 28093 */ // Label 738: @28093 |
| 10936 | /* 28093 */ GIM_Try, /*On fail goto*//*Label 739*/ GIMT_Encode4(28155), // Rule ID 25328 // |
| 10937 | /* 28098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 10938 | /* 28101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 10939 | /* 28105 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 10940 | /* 28109 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10941 | /* 28113 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10942 | /* 28116 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10943 | /* 28120 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10944 | /* 28124 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 10945 | /* 28128 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10946 | /* 28130 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10947 | /* 28137 */ // (or:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VORPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10948 | /* 28137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 10949 | /* 28140 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10950 | /* 28142 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 10951 | /* 28144 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10952 | /* 28148 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10953 | /* 28153 */ GIR_RootConstrainSelectedInstOperands, |
| 10954 | /* 28154 */ // GIR_Coverage, 25328, |
| 10955 | /* 28154 */ GIR_EraseRootFromParent_Done, |
| 10956 | /* 28155 */ // Label 739: @28155 |
| 10957 | /* 28155 */ GIM_Try, /*On fail goto*//*Label 740*/ GIMT_Encode4(28217), // Rule ID 2121 // |
| 10958 | /* 28160 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 10959 | /* 28163 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 10960 | /* 28167 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 10961 | /* 28171 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10962 | /* 28175 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10963 | /* 28179 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10964 | /* 28182 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10965 | /* 28186 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10966 | /* 28190 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10967 | /* 28192 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10968 | /* 28199 */ // (or:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10969 | /* 28199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 10970 | /* 28202 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10971 | /* 28204 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10972 | /* 28206 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10973 | /* 28210 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10974 | /* 28215 */ GIR_RootConstrainSelectedInstOperands, |
| 10975 | /* 28216 */ // GIR_Coverage, 2121, |
| 10976 | /* 28216 */ GIR_EraseRootFromParent_Done, |
| 10977 | /* 28217 */ // Label 740: @28217 |
| 10978 | /* 28217 */ GIM_Try, /*On fail goto*//*Label 741*/ GIMT_Encode4(28279), // Rule ID 5756 // |
| 10979 | /* 28222 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 10980 | /* 28225 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 10981 | /* 28229 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 10982 | /* 28233 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 10983 | /* 28237 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 10984 | /* 28241 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 10985 | /* 28244 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 10986 | /* 28248 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 10987 | /* 28252 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 10988 | /* 28254 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 10989 | /* 28261 */ // (or:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 10990 | /* 28261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 10991 | /* 28264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 10992 | /* 28266 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 10993 | /* 28268 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 10994 | /* 28272 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 10995 | /* 28277 */ GIR_RootConstrainSelectedInstOperands, |
| 10996 | /* 28278 */ // GIR_Coverage, 5756, |
| 10997 | /* 28278 */ GIR_EraseRootFromParent_Done, |
| 10998 | /* 28279 */ // Label 741: @28279 |
| 10999 | /* 28279 */ GIM_Try, /*On fail goto*//*Label 742*/ GIMT_Encode4(28341), // Rule ID 18127 // |
| 11000 | /* 28284 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11001 | /* 28287 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11002 | /* 28291 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11003 | /* 28295 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11004 | /* 28299 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11005 | /* 28303 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11006 | /* 28306 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11007 | /* 28310 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11008 | /* 28314 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11009 | /* 28316 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11010 | /* 28323 */ // (or:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VORPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11011 | /* 28323 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11012 | /* 28326 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11013 | /* 28328 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11014 | /* 28330 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11015 | /* 28334 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11016 | /* 28339 */ GIR_RootConstrainSelectedInstOperands, |
| 11017 | /* 28340 */ // GIR_Coverage, 18127, |
| 11018 | /* 28340 */ GIR_EraseRootFromParent_Done, |
| 11019 | /* 28341 */ // Label 742: @28341 |
| 11020 | /* 28341 */ GIM_Try, /*On fail goto*//*Label 743*/ GIMT_Encode4(28368), // Rule ID 2120 // |
| 11021 | /* 28346 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11022 | /* 28349 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11023 | /* 28353 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11024 | /* 28357 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11025 | /* 28361 */ // (or:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPORYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 11026 | /* 28361 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORYrr), |
| 11027 | /* 28366 */ GIR_RootConstrainSelectedInstOperands, |
| 11028 | /* 28367 */ // GIR_Coverage, 2120, |
| 11029 | /* 28367 */ GIR_Done, |
| 11030 | /* 28368 */ // Label 743: @28368 |
| 11031 | /* 28368 */ GIM_Try, /*On fail goto*//*Label 744*/ GIMT_Encode4(28395), // Rule ID 5753 // |
| 11032 | /* 28373 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11033 | /* 28376 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11034 | /* 28380 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11035 | /* 28384 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11036 | /* 28388 */ // (or:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPORQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 11037 | /* 28388 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rr), |
| 11038 | /* 28393 */ GIR_RootConstrainSelectedInstOperands, |
| 11039 | /* 28394 */ // GIR_Coverage, 5753, |
| 11040 | /* 28394 */ GIR_Done, |
| 11041 | /* 28395 */ // Label 744: @28395 |
| 11042 | /* 28395 */ GIM_Try, /*On fail goto*//*Label 745*/ GIMT_Encode4(28422), // Rule ID 18111 // |
| 11043 | /* 28400 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11044 | /* 28403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11045 | /* 28407 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11046 | /* 28411 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11047 | /* 28415 */ // (or:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VORPSYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 11048 | /* 28415 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VORPSYrr), |
| 11049 | /* 28420 */ GIR_RootConstrainSelectedInstOperands, |
| 11050 | /* 28421 */ // GIR_Coverage, 18111, |
| 11051 | /* 28421 */ GIR_Done, |
| 11052 | /* 28422 */ // Label 745: @28422 |
| 11053 | /* 28422 */ GIM_Reject, |
| 11054 | /* 28423 */ // Label 736: @28423 |
| 11055 | /* 28423 */ GIM_Reject, |
| 11056 | /* 28424 */ // Label 645: @28424 |
| 11057 | /* 28424 */ GIM_Try, /*On fail goto*//*Label 746*/ GIMT_Encode4(28547), |
| 11058 | /* 28429 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 11059 | /* 28432 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 11060 | /* 28435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 11061 | /* 28439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 11062 | /* 28443 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 11063 | /* 28447 */ GIM_Try, /*On fail goto*//*Label 747*/ GIMT_Encode4(28462), // Rule ID 4421 // |
| 11064 | /* 28452 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 11065 | /* 28455 */ // (or:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (KORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 11066 | /* 28455 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KORBkk), |
| 11067 | /* 28460 */ GIR_RootConstrainSelectedInstOperands, |
| 11068 | /* 28461 */ // GIR_Coverage, 4421, |
| 11069 | /* 28461 */ GIR_Done, |
| 11070 | /* 28462 */ // Label 747: @28462 |
| 11071 | /* 28462 */ GIM_Try, /*On fail goto*//*Label 748*/ GIMT_Encode4(28546), // Rule ID 19489 // |
| 11072 | /* 28467 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 11073 | /* 28470 */ // (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] }) |
| 11074 | /* 28470 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 11075 | /* 28473 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11076 | /* 28477 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 11077 | /* 28482 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 11078 | /* 28486 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 11079 | /* 28491 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 11080 | /* 28494 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11081 | /* 28498 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 11082 | /* 28503 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 11083 | /* 28507 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 11084 | /* 28512 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 11085 | /* 28515 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 11086 | /* 28519 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 11087 | /* 28524 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 11088 | /* 28527 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 11089 | /* 28530 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 11090 | /* 28532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 11091 | /* 28535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11092 | /* 28537 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 11093 | /* 28540 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 11094 | /* 28545 */ // GIR_Coverage, 19489, |
| 11095 | /* 28545 */ GIR_EraseRootFromParent_Done, |
| 11096 | /* 28546 */ // Label 748: @28546 |
| 11097 | /* 28546 */ GIM_Reject, |
| 11098 | /* 28547 */ // Label 746: @28547 |
| 11099 | /* 28547 */ GIM_Reject, |
| 11100 | /* 28548 */ // Label 646: @28548 |
| 11101 | /* 28548 */ GIM_Try, /*On fail goto*//*Label 749*/ GIMT_Encode4(28889), |
| 11102 | /* 28553 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 11103 | /* 28556 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11104 | /* 28559 */ GIM_Try, /*On fail goto*//*Label 750*/ GIMT_Encode4(28621), // Rule ID 25337 // |
| 11105 | /* 28564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11106 | /* 28567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11107 | /* 28571 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11108 | /* 28575 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11109 | /* 28579 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11110 | /* 28582 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11111 | /* 28586 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11112 | /* 28590 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11113 | /* 28594 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11114 | /* 28596 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11115 | /* 28603 */ // (or:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPORrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11116 | /* 28603 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11117 | /* 28606 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11118 | /* 28608 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11119 | /* 28610 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11120 | /* 28614 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11121 | /* 28619 */ GIR_RootConstrainSelectedInstOperands, |
| 11122 | /* 28620 */ // GIR_Coverage, 25337, |
| 11123 | /* 28620 */ GIR_EraseRootFromParent_Done, |
| 11124 | /* 28621 */ // Label 750: @28621 |
| 11125 | /* 28621 */ GIM_Try, /*On fail goto*//*Label 751*/ GIMT_Encode4(28683), // Rule ID 25517 // |
| 11126 | /* 28626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11127 | /* 28629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11128 | /* 28633 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11129 | /* 28637 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11130 | /* 28641 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11131 | /* 28644 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11132 | /* 28648 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11133 | /* 28652 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11134 | /* 28656 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11135 | /* 28658 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11136 | /* 28665 */ // (or:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPORQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11137 | /* 28665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 11138 | /* 28668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11139 | /* 28670 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11140 | /* 28672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11141 | /* 28676 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11142 | /* 28681 */ GIR_RootConstrainSelectedInstOperands, |
| 11143 | /* 28682 */ // GIR_Coverage, 25517, |
| 11144 | /* 28682 */ GIR_EraseRootFromParent_Done, |
| 11145 | /* 28683 */ // Label 751: @28683 |
| 11146 | /* 28683 */ GIM_Try, /*On fail goto*//*Label 752*/ GIMT_Encode4(28745), // Rule ID 18152 // |
| 11147 | /* 28688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11148 | /* 28691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11149 | /* 28695 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11150 | /* 28699 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11151 | /* 28703 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11152 | /* 28707 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11153 | /* 28710 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11154 | /* 28714 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11155 | /* 28718 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11156 | /* 28720 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11157 | /* 28727 */ // (or:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11158 | /* 28727 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11159 | /* 28730 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11160 | /* 28732 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11161 | /* 28734 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11162 | /* 28738 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11163 | /* 28743 */ GIR_RootConstrainSelectedInstOperands, |
| 11164 | /* 28744 */ // GIR_Coverage, 18152, |
| 11165 | /* 28744 */ GIR_EraseRootFromParent_Done, |
| 11166 | /* 28745 */ // Label 752: @28745 |
| 11167 | /* 28745 */ GIM_Try, /*On fail goto*//*Label 753*/ GIMT_Encode4(28807), // Rule ID 20036 // |
| 11168 | /* 28750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11169 | /* 28753 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11170 | /* 28757 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11171 | /* 28761 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11172 | /* 28765 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11173 | /* 28769 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11174 | /* 28772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11175 | /* 28776 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11176 | /* 28780 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11177 | /* 28782 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11178 | /* 28789 */ // (or:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11179 | /* 28789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 11180 | /* 28792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11181 | /* 28794 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11182 | /* 28796 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11183 | /* 28800 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11184 | /* 28805 */ GIR_RootConstrainSelectedInstOperands, |
| 11185 | /* 28806 */ // GIR_Coverage, 20036, |
| 11186 | /* 28806 */ GIR_EraseRootFromParent_Done, |
| 11187 | /* 28807 */ // Label 753: @28807 |
| 11188 | /* 28807 */ GIM_Try, /*On fail goto*//*Label 754*/ GIMT_Encode4(28834), // Rule ID 18140 // |
| 11189 | /* 28812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11190 | /* 28815 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11191 | /* 28819 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11192 | /* 28823 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11193 | /* 28827 */ // (or:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPORrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 11194 | /* 28827 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORrr), |
| 11195 | /* 28832 */ GIR_RootConstrainSelectedInstOperands, |
| 11196 | /* 28833 */ // GIR_Coverage, 18140, |
| 11197 | /* 28833 */ GIR_Done, |
| 11198 | /* 28834 */ // Label 754: @28834 |
| 11199 | /* 28834 */ GIM_Try, /*On fail goto*//*Label 755*/ GIMT_Encode4(28861), // Rule ID 18164 // |
| 11200 | /* 28839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 11201 | /* 28842 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11202 | /* 28846 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11203 | /* 28850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11204 | /* 28854 */ // (or:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PORrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 11205 | /* 28854 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PORrr), |
| 11206 | /* 28859 */ GIR_RootConstrainSelectedInstOperands, |
| 11207 | /* 28860 */ // GIR_Coverage, 18164, |
| 11208 | /* 28860 */ GIR_Done, |
| 11209 | /* 28861 */ // Label 755: @28861 |
| 11210 | /* 28861 */ GIM_Try, /*On fail goto*//*Label 756*/ GIMT_Encode4(28888), // Rule ID 20028 // |
| 11211 | /* 28866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11212 | /* 28869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11213 | /* 28873 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11214 | /* 28877 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11215 | /* 28881 */ // (or:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPORQZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 11216 | /* 28881 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rr), |
| 11217 | /* 28886 */ GIR_RootConstrainSelectedInstOperands, |
| 11218 | /* 28887 */ // GIR_Coverage, 20028, |
| 11219 | /* 28887 */ GIR_Done, |
| 11220 | /* 28888 */ // Label 756: @28888 |
| 11221 | /* 28888 */ GIM_Reject, |
| 11222 | /* 28889 */ // Label 749: @28889 |
| 11223 | /* 28889 */ GIM_Reject, |
| 11224 | /* 28890 */ // Label 647: @28890 |
| 11225 | /* 28890 */ GIM_Try, /*On fail goto*//*Label 757*/ GIMT_Encode4(29355), |
| 11226 | /* 28895 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 11227 | /* 28898 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 11228 | /* 28901 */ GIM_Try, /*On fail goto*//*Label 758*/ GIMT_Encode4(28963), // Rule ID 24279 // |
| 11229 | /* 28906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11230 | /* 28909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11231 | /* 28913 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11232 | /* 28917 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11233 | /* 28921 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11234 | /* 28924 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11235 | /* 28928 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11236 | /* 28932 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11237 | /* 28936 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11238 | /* 28938 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11239 | /* 28945 */ // (or:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPORDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11240 | /* 28945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZ256rm), |
| 11241 | /* 28948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11242 | /* 28950 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11243 | /* 28952 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11244 | /* 28956 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11245 | /* 28961 */ GIR_RootConstrainSelectedInstOperands, |
| 11246 | /* 28962 */ // GIR_Coverage, 24279, |
| 11247 | /* 28962 */ GIR_EraseRootFromParent_Done, |
| 11248 | /* 28963 */ // Label 758: @28963 |
| 11249 | /* 28963 */ GIM_Try, /*On fail goto*//*Label 759*/ GIMT_Encode4(29025), // Rule ID 25317 // |
| 11250 | /* 28968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11251 | /* 28971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11252 | /* 28975 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11253 | /* 28979 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11254 | /* 28983 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11255 | /* 28986 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11256 | /* 28990 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11257 | /* 28994 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11258 | /* 28998 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11259 | /* 29000 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11260 | /* 29007 */ // (or:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPORYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11261 | /* 29007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 11262 | /* 29010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11263 | /* 29012 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11264 | /* 29014 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11265 | /* 29018 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11266 | /* 29023 */ GIR_RootConstrainSelectedInstOperands, |
| 11267 | /* 29024 */ // GIR_Coverage, 25317, |
| 11268 | /* 29024 */ GIR_EraseRootFromParent_Done, |
| 11269 | /* 29025 */ // Label 759: @29025 |
| 11270 | /* 29025 */ GIM_Try, /*On fail goto*//*Label 760*/ GIMT_Encode4(29087), // Rule ID 25327 // |
| 11271 | /* 29030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11272 | /* 29033 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11273 | /* 29037 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11274 | /* 29041 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11275 | /* 29045 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11276 | /* 29048 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11277 | /* 29052 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11278 | /* 29056 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11279 | /* 29060 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11280 | /* 29062 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11281 | /* 29069 */ // (or:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VORPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11282 | /* 29069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11283 | /* 29072 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11284 | /* 29074 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11285 | /* 29076 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11286 | /* 29080 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11287 | /* 29085 */ GIR_RootConstrainSelectedInstOperands, |
| 11288 | /* 29086 */ // GIR_Coverage, 25327, |
| 11289 | /* 29086 */ GIR_EraseRootFromParent_Done, |
| 11290 | /* 29087 */ // Label 760: @29087 |
| 11291 | /* 29087 */ GIM_Try, /*On fail goto*//*Label 761*/ GIMT_Encode4(29149), // Rule ID 5783 // |
| 11292 | /* 29092 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11293 | /* 29095 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11294 | /* 29099 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11295 | /* 29103 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11296 | /* 29107 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11297 | /* 29111 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11298 | /* 29114 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11299 | /* 29118 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11300 | /* 29122 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11301 | /* 29124 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11302 | /* 29131 */ // (or:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11303 | /* 29131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZ256rm), |
| 11304 | /* 29134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11305 | /* 29136 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11306 | /* 29138 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11307 | /* 29142 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11308 | /* 29147 */ GIR_RootConstrainSelectedInstOperands, |
| 11309 | /* 29148 */ // GIR_Coverage, 5783, |
| 11310 | /* 29148 */ GIR_EraseRootFromParent_Done, |
| 11311 | /* 29149 */ // Label 761: @29149 |
| 11312 | /* 29149 */ GIM_Try, /*On fail goto*//*Label 762*/ GIMT_Encode4(29211), // Rule ID 18097 // |
| 11313 | /* 29154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11314 | /* 29157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11315 | /* 29161 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11316 | /* 29165 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11317 | /* 29169 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11318 | /* 29173 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11319 | /* 29176 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11320 | /* 29180 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11321 | /* 29184 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11322 | /* 29186 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11323 | /* 29193 */ // (or:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11324 | /* 29193 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 11325 | /* 29196 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11326 | /* 29198 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11327 | /* 29200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11328 | /* 29204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11329 | /* 29209 */ GIR_RootConstrainSelectedInstOperands, |
| 11330 | /* 29210 */ // GIR_Coverage, 18097, |
| 11331 | /* 29210 */ GIR_EraseRootFromParent_Done, |
| 11332 | /* 29211 */ // Label 762: @29211 |
| 11333 | /* 29211 */ GIM_Try, /*On fail goto*//*Label 763*/ GIMT_Encode4(29273), // Rule ID 18126 // |
| 11334 | /* 29216 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11335 | /* 29219 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11336 | /* 29223 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11337 | /* 29227 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11338 | /* 29231 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11339 | /* 29235 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11340 | /* 29238 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11341 | /* 29242 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11342 | /* 29246 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11343 | /* 29248 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11344 | /* 29255 */ // (or:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VORPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11345 | /* 29255 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11346 | /* 29258 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11347 | /* 29260 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11348 | /* 29262 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11349 | /* 29266 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11350 | /* 29271 */ GIR_RootConstrainSelectedInstOperands, |
| 11351 | /* 29272 */ // GIR_Coverage, 18126, |
| 11352 | /* 29272 */ GIR_EraseRootFromParent_Done, |
| 11353 | /* 29273 */ // Label 763: @29273 |
| 11354 | /* 29273 */ GIM_Try, /*On fail goto*//*Label 764*/ GIMT_Encode4(29300), // Rule ID 5780 // |
| 11355 | /* 29278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 11356 | /* 29281 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11357 | /* 29285 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11358 | /* 29289 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11359 | /* 29293 */ // (or:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPORDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 11360 | /* 29293 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORDZ256rr), |
| 11361 | /* 29298 */ GIR_RootConstrainSelectedInstOperands, |
| 11362 | /* 29299 */ // GIR_Coverage, 5780, |
| 11363 | /* 29299 */ GIR_Done, |
| 11364 | /* 29300 */ // Label 764: @29300 |
| 11365 | /* 29300 */ GIM_Try, /*On fail goto*//*Label 765*/ GIMT_Encode4(29327), // Rule ID 18085 // |
| 11366 | /* 29305 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11367 | /* 29308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11368 | /* 29312 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11369 | /* 29316 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11370 | /* 29320 */ // (or:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPORYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 11371 | /* 29320 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORYrr), |
| 11372 | /* 29325 */ GIR_RootConstrainSelectedInstOperands, |
| 11373 | /* 29326 */ // GIR_Coverage, 18085, |
| 11374 | /* 29326 */ GIR_Done, |
| 11375 | /* 29327 */ // Label 765: @29327 |
| 11376 | /* 29327 */ GIM_Try, /*On fail goto*//*Label 766*/ GIMT_Encode4(29354), // Rule ID 18110 // |
| 11377 | /* 29332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11378 | /* 29335 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11379 | /* 29339 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11380 | /* 29343 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11381 | /* 29347 */ // (or:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VORPSYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 11382 | /* 29347 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VORPSYrr), |
| 11383 | /* 29352 */ GIR_RootConstrainSelectedInstOperands, |
| 11384 | /* 29353 */ // GIR_Coverage, 18110, |
| 11385 | /* 29353 */ GIR_Done, |
| 11386 | /* 29354 */ // Label 766: @29354 |
| 11387 | /* 29354 */ GIM_Reject, |
| 11388 | /* 29355 */ // Label 757: @29355 |
| 11389 | /* 29355 */ GIM_Reject, |
| 11390 | /* 29356 */ // Label 648: @29356 |
| 11391 | /* 29356 */ GIM_Try, /*On fail goto*//*Label 767*/ GIMT_Encode4(29511), |
| 11392 | /* 29361 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 11393 | /* 29364 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 11394 | /* 29367 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11395 | /* 29371 */ GIM_Try, /*On fail goto*//*Label 768*/ GIMT_Encode4(29429), // Rule ID 24255 // |
| 11396 | /* 29376 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 11397 | /* 29379 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11398 | /* 29383 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11399 | /* 29387 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11400 | /* 29390 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11401 | /* 29394 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11402 | /* 29398 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11403 | /* 29402 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11404 | /* 29404 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11405 | /* 29411 */ // (or:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPORQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11406 | /* 29411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 11407 | /* 29414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11408 | /* 29416 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11409 | /* 29418 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11410 | /* 29422 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11411 | /* 29427 */ GIR_RootConstrainSelectedInstOperands, |
| 11412 | /* 29428 */ // GIR_Coverage, 24255, |
| 11413 | /* 29428 */ GIR_EraseRootFromParent_Done, |
| 11414 | /* 29429 */ // Label 768: @29429 |
| 11415 | /* 29429 */ GIM_Try, /*On fail goto*//*Label 769*/ GIMT_Encode4(29487), // Rule ID 5747 // |
| 11416 | /* 29434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 11417 | /* 29437 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11418 | /* 29441 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11419 | /* 29445 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11420 | /* 29449 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11421 | /* 29452 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11422 | /* 29456 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11423 | /* 29460 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11424 | /* 29462 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11425 | /* 29469 */ // (or:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11426 | /* 29469 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 11427 | /* 29472 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11428 | /* 29474 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11429 | /* 29476 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11430 | /* 29480 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11431 | /* 29485 */ GIR_RootConstrainSelectedInstOperands, |
| 11432 | /* 29486 */ // GIR_Coverage, 5747, |
| 11433 | /* 29486 */ GIR_EraseRootFromParent_Done, |
| 11434 | /* 29487 */ // Label 769: @29487 |
| 11435 | /* 29487 */ GIM_Try, /*On fail goto*//*Label 770*/ GIMT_Encode4(29510), // Rule ID 5744 // |
| 11436 | /* 29492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 11437 | /* 29495 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11438 | /* 29499 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11439 | /* 29503 */ // (or:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPORQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 11440 | /* 29503 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZrr), |
| 11441 | /* 29508 */ GIR_RootConstrainSelectedInstOperands, |
| 11442 | /* 29509 */ // GIR_Coverage, 5744, |
| 11443 | /* 29509 */ GIR_Done, |
| 11444 | /* 29510 */ // Label 770: @29510 |
| 11445 | /* 29510 */ GIM_Reject, |
| 11446 | /* 29511 */ // Label 767: @29511 |
| 11447 | /* 29511 */ GIM_Reject, |
| 11448 | /* 29512 */ // Label 649: @29512 |
| 11449 | /* 29512 */ GIM_Try, /*On fail goto*//*Label 771*/ GIMT_Encode4(29545), // Rule ID 4422 // |
| 11450 | /* 29517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 11451 | /* 29520 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 11452 | /* 29523 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 11453 | /* 29526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 11454 | /* 29530 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 11455 | /* 29534 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 11456 | /* 29538 */ // (or:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) => (KORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 11457 | /* 29538 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KORWkk), |
| 11458 | /* 29543 */ GIR_RootConstrainSelectedInstOperands, |
| 11459 | /* 29544 */ // GIR_Coverage, 4422, |
| 11460 | /* 29544 */ GIR_Done, |
| 11461 | /* 29545 */ // Label 771: @29545 |
| 11462 | /* 29545 */ GIM_Reject, |
| 11463 | /* 29546 */ // Label 650: @29546 |
| 11464 | /* 29546 */ GIM_Try, /*On fail goto*//*Label 772*/ GIMT_Encode4(29887), |
| 11465 | /* 29551 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 11466 | /* 29554 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11467 | /* 29557 */ GIM_Try, /*On fail goto*//*Label 773*/ GIMT_Encode4(29619), // Rule ID 25336 // |
| 11468 | /* 29562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11469 | /* 29565 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11470 | /* 29569 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11471 | /* 29573 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11472 | /* 29577 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11473 | /* 29580 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11474 | /* 29584 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11475 | /* 29588 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11476 | /* 29592 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11477 | /* 29594 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11478 | /* 29601 */ // (or:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPORrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11479 | /* 29601 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11480 | /* 29604 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11481 | /* 29606 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11482 | /* 29608 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11483 | /* 29612 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11484 | /* 29617 */ GIR_RootConstrainSelectedInstOperands, |
| 11485 | /* 29618 */ // GIR_Coverage, 25336, |
| 11486 | /* 29618 */ GIR_EraseRootFromParent_Done, |
| 11487 | /* 29619 */ // Label 773: @29619 |
| 11488 | /* 29619 */ GIM_Try, /*On fail goto*//*Label 774*/ GIMT_Encode4(29681), // Rule ID 25516 // |
| 11489 | /* 29624 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11490 | /* 29627 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11491 | /* 29631 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11492 | /* 29635 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11493 | /* 29639 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11494 | /* 29642 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11495 | /* 29646 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11496 | /* 29650 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11497 | /* 29654 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11498 | /* 29656 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11499 | /* 29663 */ // (or:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPORQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11500 | /* 29663 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 11501 | /* 29666 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11502 | /* 29668 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11503 | /* 29670 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11504 | /* 29674 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11505 | /* 29679 */ GIR_RootConstrainSelectedInstOperands, |
| 11506 | /* 29680 */ // GIR_Coverage, 25516, |
| 11507 | /* 29680 */ GIR_EraseRootFromParent_Done, |
| 11508 | /* 29681 */ // Label 774: @29681 |
| 11509 | /* 29681 */ GIM_Try, /*On fail goto*//*Label 775*/ GIMT_Encode4(29743), // Rule ID 18151 // |
| 11510 | /* 29686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11511 | /* 29689 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11512 | /* 29693 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11513 | /* 29697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11514 | /* 29701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11515 | /* 29705 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11516 | /* 29708 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11517 | /* 29712 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11518 | /* 29716 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11519 | /* 29718 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11520 | /* 29725 */ // (or:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11521 | /* 29725 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORrm), |
| 11522 | /* 29728 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11523 | /* 29730 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11524 | /* 29732 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11525 | /* 29736 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11526 | /* 29741 */ GIR_RootConstrainSelectedInstOperands, |
| 11527 | /* 29742 */ // GIR_Coverage, 18151, |
| 11528 | /* 29742 */ GIR_EraseRootFromParent_Done, |
| 11529 | /* 29743 */ // Label 775: @29743 |
| 11530 | /* 29743 */ GIM_Try, /*On fail goto*//*Label 776*/ GIMT_Encode4(29805), // Rule ID 20035 // |
| 11531 | /* 29748 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11532 | /* 29751 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11533 | /* 29755 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11534 | /* 29759 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11535 | /* 29763 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11536 | /* 29767 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11537 | /* 29770 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11538 | /* 29774 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11539 | /* 29778 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11540 | /* 29780 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11541 | /* 29787 */ // (or:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11542 | /* 29787 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rm), |
| 11543 | /* 29790 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11544 | /* 29792 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11545 | /* 29794 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11546 | /* 29798 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11547 | /* 29803 */ GIR_RootConstrainSelectedInstOperands, |
| 11548 | /* 29804 */ // GIR_Coverage, 20035, |
| 11549 | /* 29804 */ GIR_EraseRootFromParent_Done, |
| 11550 | /* 29805 */ // Label 776: @29805 |
| 11551 | /* 29805 */ GIM_Try, /*On fail goto*//*Label 777*/ GIMT_Encode4(29832), // Rule ID 18139 // |
| 11552 | /* 29810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 11553 | /* 29813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11554 | /* 29817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11555 | /* 29821 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11556 | /* 29825 */ // (or:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPORrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 11557 | /* 29825 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORrr), |
| 11558 | /* 29830 */ GIR_RootConstrainSelectedInstOperands, |
| 11559 | /* 29831 */ // GIR_Coverage, 18139, |
| 11560 | /* 29831 */ GIR_Done, |
| 11561 | /* 29832 */ // Label 777: @29832 |
| 11562 | /* 29832 */ GIM_Try, /*On fail goto*//*Label 778*/ GIMT_Encode4(29859), // Rule ID 18163 // |
| 11563 | /* 29837 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 11564 | /* 29840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11565 | /* 29844 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11566 | /* 29848 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 11567 | /* 29852 */ // (or:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PORrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 11568 | /* 29852 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PORrr), |
| 11569 | /* 29857 */ GIR_RootConstrainSelectedInstOperands, |
| 11570 | /* 29858 */ // GIR_Coverage, 18163, |
| 11571 | /* 29858 */ GIR_Done, |
| 11572 | /* 29859 */ // Label 778: @29859 |
| 11573 | /* 29859 */ GIM_Try, /*On fail goto*//*Label 779*/ GIMT_Encode4(29886), // Rule ID 20027 // |
| 11574 | /* 29864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11575 | /* 29867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11576 | /* 29871 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11577 | /* 29875 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 11578 | /* 29879 */ // (or:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPORQZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 11579 | /* 29879 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ128rr), |
| 11580 | /* 29884 */ GIR_RootConstrainSelectedInstOperands, |
| 11581 | /* 29885 */ // GIR_Coverage, 20027, |
| 11582 | /* 29885 */ GIR_Done, |
| 11583 | /* 29886 */ // Label 779: @29886 |
| 11584 | /* 29886 */ GIM_Reject, |
| 11585 | /* 29887 */ // Label 772: @29887 |
| 11586 | /* 29887 */ GIM_Reject, |
| 11587 | /* 29888 */ // Label 651: @29888 |
| 11588 | /* 29888 */ GIM_Try, /*On fail goto*//*Label 780*/ GIMT_Encode4(30353), |
| 11589 | /* 29893 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 11590 | /* 29896 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 11591 | /* 29899 */ GIM_Try, /*On fail goto*//*Label 781*/ GIMT_Encode4(29961), // Rule ID 25316 // |
| 11592 | /* 29904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11593 | /* 29907 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11594 | /* 29911 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11595 | /* 29915 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11596 | /* 29919 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11597 | /* 29922 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11598 | /* 29926 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11599 | /* 29930 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11600 | /* 29934 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11601 | /* 29936 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11602 | /* 29943 */ // (or:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPORYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11603 | /* 29943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 11604 | /* 29946 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11605 | /* 29948 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11606 | /* 29950 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11607 | /* 29954 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11608 | /* 29959 */ GIR_RootConstrainSelectedInstOperands, |
| 11609 | /* 29960 */ // GIR_Coverage, 25316, |
| 11610 | /* 29960 */ GIR_EraseRootFromParent_Done, |
| 11611 | /* 29961 */ // Label 781: @29961 |
| 11612 | /* 29961 */ GIM_Try, /*On fail goto*//*Label 782*/ GIMT_Encode4(30023), // Rule ID 25326 // |
| 11613 | /* 29966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11614 | /* 29969 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11615 | /* 29973 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11616 | /* 29977 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11617 | /* 29981 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11618 | /* 29984 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11619 | /* 29988 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11620 | /* 29992 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11621 | /* 29996 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11622 | /* 29998 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11623 | /* 30005 */ // (or:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VORPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11624 | /* 30005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11625 | /* 30008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11626 | /* 30010 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11627 | /* 30012 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11628 | /* 30016 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11629 | /* 30021 */ GIR_RootConstrainSelectedInstOperands, |
| 11630 | /* 30022 */ // GIR_Coverage, 25326, |
| 11631 | /* 30022 */ GIR_EraseRootFromParent_Done, |
| 11632 | /* 30023 */ // Label 782: @30023 |
| 11633 | /* 30023 */ GIM_Try, /*On fail goto*//*Label 783*/ GIMT_Encode4(30085), // Rule ID 25523 // |
| 11634 | /* 30028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11635 | /* 30031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11636 | /* 30035 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11637 | /* 30039 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11638 | /* 30043 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11639 | /* 30046 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11640 | /* 30050 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11641 | /* 30054 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11642 | /* 30058 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11643 | /* 30060 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11644 | /* 30067 */ // (or:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPORQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11645 | /* 30067 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 11646 | /* 30070 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11647 | /* 30072 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11648 | /* 30074 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11649 | /* 30078 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11650 | /* 30083 */ GIR_RootConstrainSelectedInstOperands, |
| 11651 | /* 30084 */ // GIR_Coverage, 25523, |
| 11652 | /* 30084 */ GIR_EraseRootFromParent_Done, |
| 11653 | /* 30085 */ // Label 783: @30085 |
| 11654 | /* 30085 */ GIM_Try, /*On fail goto*//*Label 784*/ GIMT_Encode4(30147), // Rule ID 18096 // |
| 11655 | /* 30090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11656 | /* 30093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11657 | /* 30097 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11658 | /* 30101 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11659 | /* 30105 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11660 | /* 30109 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11661 | /* 30112 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11662 | /* 30116 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11663 | /* 30120 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11664 | /* 30122 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11665 | /* 30129 */ // (or:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11666 | /* 30129 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 11667 | /* 30132 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11668 | /* 30134 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11669 | /* 30136 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11670 | /* 30140 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11671 | /* 30145 */ GIR_RootConstrainSelectedInstOperands, |
| 11672 | /* 30146 */ // GIR_Coverage, 18096, |
| 11673 | /* 30146 */ GIR_EraseRootFromParent_Done, |
| 11674 | /* 30147 */ // Label 784: @30147 |
| 11675 | /* 30147 */ GIM_Try, /*On fail goto*//*Label 785*/ GIMT_Encode4(30209), // Rule ID 18125 // |
| 11676 | /* 30152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11677 | /* 30155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11678 | /* 30159 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11679 | /* 30163 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11680 | /* 30167 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11681 | /* 30171 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11682 | /* 30174 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11683 | /* 30178 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11684 | /* 30182 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11685 | /* 30184 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11686 | /* 30191 */ // (or:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VORPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11687 | /* 30191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11688 | /* 30194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11689 | /* 30196 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11690 | /* 30198 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11691 | /* 30202 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11692 | /* 30207 */ GIR_RootConstrainSelectedInstOperands, |
| 11693 | /* 30208 */ // GIR_Coverage, 18125, |
| 11694 | /* 30208 */ GIR_EraseRootFromParent_Done, |
| 11695 | /* 30209 */ // Label 785: @30209 |
| 11696 | /* 30209 */ GIM_Try, /*On fail goto*//*Label 786*/ GIMT_Encode4(30271), // Rule ID 20052 // |
| 11697 | /* 30214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11698 | /* 30217 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11699 | /* 30221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11700 | /* 30225 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11701 | /* 30229 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11702 | /* 30233 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11703 | /* 30236 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11704 | /* 30240 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11705 | /* 30244 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11706 | /* 30246 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11707 | /* 30253 */ // (or:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11708 | /* 30253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 11709 | /* 30256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11710 | /* 30258 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11711 | /* 30260 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11712 | /* 30264 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11713 | /* 30269 */ GIR_RootConstrainSelectedInstOperands, |
| 11714 | /* 30270 */ // GIR_Coverage, 20052, |
| 11715 | /* 30270 */ GIR_EraseRootFromParent_Done, |
| 11716 | /* 30271 */ // Label 786: @30271 |
| 11717 | /* 30271 */ GIM_Try, /*On fail goto*//*Label 787*/ GIMT_Encode4(30298), // Rule ID 18084 // |
| 11718 | /* 30276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11719 | /* 30279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11720 | /* 30283 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11721 | /* 30287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11722 | /* 30291 */ // (or:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPORYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 11723 | /* 30291 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORYrr), |
| 11724 | /* 30296 */ GIR_RootConstrainSelectedInstOperands, |
| 11725 | /* 30297 */ // GIR_Coverage, 18084, |
| 11726 | /* 30297 */ GIR_Done, |
| 11727 | /* 30298 */ // Label 787: @30298 |
| 11728 | /* 30298 */ GIM_Try, /*On fail goto*//*Label 788*/ GIMT_Encode4(30325), // Rule ID 18109 // |
| 11729 | /* 30303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11730 | /* 30306 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11731 | /* 30310 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11732 | /* 30314 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11733 | /* 30318 */ // (or:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VORPSYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 11734 | /* 30318 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VORPSYrr), |
| 11735 | /* 30323 */ GIR_RootConstrainSelectedInstOperands, |
| 11736 | /* 30324 */ // GIR_Coverage, 18109, |
| 11737 | /* 30324 */ GIR_Done, |
| 11738 | /* 30325 */ // Label 788: @30325 |
| 11739 | /* 30325 */ GIM_Try, /*On fail goto*//*Label 789*/ GIMT_Encode4(30352), // Rule ID 20044 // |
| 11740 | /* 30330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11741 | /* 30333 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11742 | /* 30337 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11743 | /* 30341 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11744 | /* 30345 */ // (or:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPORQZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 11745 | /* 30345 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rr), |
| 11746 | /* 30350 */ GIR_RootConstrainSelectedInstOperands, |
| 11747 | /* 30351 */ // GIR_Coverage, 20044, |
| 11748 | /* 30351 */ GIR_Done, |
| 11749 | /* 30352 */ // Label 789: @30352 |
| 11750 | /* 30352 */ GIM_Reject, |
| 11751 | /* 30353 */ // Label 780: @30353 |
| 11752 | /* 30353 */ GIM_Reject, |
| 11753 | /* 30354 */ // Label 652: @30354 |
| 11754 | /* 30354 */ GIM_Try, /*On fail goto*//*Label 790*/ GIMT_Encode4(30509), |
| 11755 | /* 30359 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 11756 | /* 30362 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 11757 | /* 30365 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11758 | /* 30369 */ GIM_Try, /*On fail goto*//*Label 791*/ GIMT_Encode4(30427), // Rule ID 24273 // |
| 11759 | /* 30374 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 11760 | /* 30377 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11761 | /* 30381 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11762 | /* 30385 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11763 | /* 30388 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11764 | /* 30392 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11765 | /* 30396 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11766 | /* 30400 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11767 | /* 30402 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11768 | /* 30409 */ // (or:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPORDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11769 | /* 30409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZrm), |
| 11770 | /* 30412 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11771 | /* 30414 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11772 | /* 30416 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11773 | /* 30420 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11774 | /* 30425 */ GIR_RootConstrainSelectedInstOperands, |
| 11775 | /* 30426 */ // GIR_Coverage, 24273, |
| 11776 | /* 30426 */ GIR_EraseRootFromParent_Done, |
| 11777 | /* 30427 */ // Label 791: @30427 |
| 11778 | /* 30427 */ GIM_Try, /*On fail goto*//*Label 792*/ GIMT_Encode4(30485), // Rule ID 5774 // |
| 11779 | /* 30432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 11780 | /* 30435 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11781 | /* 30439 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11782 | /* 30443 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11783 | /* 30447 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11784 | /* 30450 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11785 | /* 30454 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11786 | /* 30458 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11787 | /* 30460 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11788 | /* 30467 */ // (or:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11789 | /* 30467 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORDZrm), |
| 11790 | /* 30470 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11791 | /* 30472 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11792 | /* 30474 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11793 | /* 30478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11794 | /* 30483 */ GIR_RootConstrainSelectedInstOperands, |
| 11795 | /* 30484 */ // GIR_Coverage, 5774, |
| 11796 | /* 30484 */ GIR_EraseRootFromParent_Done, |
| 11797 | /* 30485 */ // Label 792: @30485 |
| 11798 | /* 30485 */ GIM_Try, /*On fail goto*//*Label 793*/ GIMT_Encode4(30508), // Rule ID 5771 // |
| 11799 | /* 30490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 11800 | /* 30493 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11801 | /* 30497 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11802 | /* 30501 */ // (or:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPORDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 11803 | /* 30501 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORDZrr), |
| 11804 | /* 30506 */ GIR_RootConstrainSelectedInstOperands, |
| 11805 | /* 30507 */ // GIR_Coverage, 5771, |
| 11806 | /* 30507 */ GIR_Done, |
| 11807 | /* 30508 */ // Label 793: @30508 |
| 11808 | /* 30508 */ GIM_Reject, |
| 11809 | /* 30509 */ // Label 790: @30509 |
| 11810 | /* 30509 */ GIM_Reject, |
| 11811 | /* 30510 */ // Label 653: @30510 |
| 11812 | /* 30510 */ GIM_Try, /*On fail goto*//*Label 794*/ GIMT_Encode4(30543), // Rule ID 4423 // |
| 11813 | /* 30515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 11814 | /* 30518 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 11815 | /* 30521 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 11816 | /* 30524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 11817 | /* 30528 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 11818 | /* 30532 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 11819 | /* 30536 */ // (or:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) => (KORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 11820 | /* 30536 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KORDkk), |
| 11821 | /* 30541 */ GIR_RootConstrainSelectedInstOperands, |
| 11822 | /* 30542 */ // GIR_Coverage, 4423, |
| 11823 | /* 30542 */ GIR_Done, |
| 11824 | /* 30543 */ // Label 794: @30543 |
| 11825 | /* 30543 */ GIM_Reject, |
| 11826 | /* 30544 */ // Label 654: @30544 |
| 11827 | /* 30544 */ GIM_Try, /*On fail goto*//*Label 795*/ GIMT_Encode4(31009), |
| 11828 | /* 30549 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 11829 | /* 30552 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 11830 | /* 30555 */ GIM_Try, /*On fail goto*//*Label 796*/ GIMT_Encode4(30617), // Rule ID 25315 // |
| 11831 | /* 30560 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11832 | /* 30563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11833 | /* 30567 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11834 | /* 30571 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11835 | /* 30575 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11836 | /* 30578 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11837 | /* 30582 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11838 | /* 30586 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11839 | /* 30590 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11840 | /* 30592 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11841 | /* 30599 */ // (or:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPORYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11842 | /* 30599 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 11843 | /* 30602 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11844 | /* 30604 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11845 | /* 30606 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11846 | /* 30610 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11847 | /* 30615 */ GIR_RootConstrainSelectedInstOperands, |
| 11848 | /* 30616 */ // GIR_Coverage, 25315, |
| 11849 | /* 30616 */ GIR_EraseRootFromParent_Done, |
| 11850 | /* 30617 */ // Label 796: @30617 |
| 11851 | /* 30617 */ GIM_Try, /*On fail goto*//*Label 797*/ GIMT_Encode4(30679), // Rule ID 25325 // |
| 11852 | /* 30622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11853 | /* 30625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11854 | /* 30629 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11855 | /* 30633 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11856 | /* 30637 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11857 | /* 30640 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11858 | /* 30644 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11859 | /* 30648 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11860 | /* 30652 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11861 | /* 30654 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11862 | /* 30661 */ // (or:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VORPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11863 | /* 30661 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11864 | /* 30664 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11865 | /* 30666 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11866 | /* 30668 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11867 | /* 30672 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11868 | /* 30677 */ GIR_RootConstrainSelectedInstOperands, |
| 11869 | /* 30678 */ // GIR_Coverage, 25325, |
| 11870 | /* 30678 */ GIR_EraseRootFromParent_Done, |
| 11871 | /* 30679 */ // Label 797: @30679 |
| 11872 | /* 30679 */ GIM_Try, /*On fail goto*//*Label 798*/ GIMT_Encode4(30741), // Rule ID 25522 // |
| 11873 | /* 30684 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11874 | /* 30687 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11875 | /* 30691 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 11876 | /* 30695 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11877 | /* 30699 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11878 | /* 30702 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11879 | /* 30706 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11880 | /* 30710 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11881 | /* 30714 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11882 | /* 30716 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11883 | /* 30723 */ // (or:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPORQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11884 | /* 30723 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 11885 | /* 30726 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11886 | /* 30728 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 11887 | /* 30730 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11888 | /* 30734 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11889 | /* 30739 */ GIR_RootConstrainSelectedInstOperands, |
| 11890 | /* 30740 */ // GIR_Coverage, 25522, |
| 11891 | /* 30740 */ GIR_EraseRootFromParent_Done, |
| 11892 | /* 30741 */ // Label 798: @30741 |
| 11893 | /* 30741 */ GIM_Try, /*On fail goto*//*Label 799*/ GIMT_Encode4(30803), // Rule ID 18095 // |
| 11894 | /* 30746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11895 | /* 30749 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11896 | /* 30753 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11897 | /* 30757 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11898 | /* 30761 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11899 | /* 30765 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11900 | /* 30768 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11901 | /* 30772 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11902 | /* 30776 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11903 | /* 30778 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11904 | /* 30785 */ // (or:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11905 | /* 30785 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORYrm), |
| 11906 | /* 30788 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11907 | /* 30790 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11908 | /* 30792 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11909 | /* 30796 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11910 | /* 30801 */ GIR_RootConstrainSelectedInstOperands, |
| 11911 | /* 30802 */ // GIR_Coverage, 18095, |
| 11912 | /* 30802 */ GIR_EraseRootFromParent_Done, |
| 11913 | /* 30803 */ // Label 799: @30803 |
| 11914 | /* 30803 */ GIM_Try, /*On fail goto*//*Label 800*/ GIMT_Encode4(30865), // Rule ID 18124 // |
| 11915 | /* 30808 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11916 | /* 30811 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11917 | /* 30815 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11918 | /* 30819 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11919 | /* 30823 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11920 | /* 30827 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11921 | /* 30830 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11922 | /* 30834 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11923 | /* 30838 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11924 | /* 30840 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11925 | /* 30847 */ // (or:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VORPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11926 | /* 30847 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VORPSYrm), |
| 11927 | /* 30850 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11928 | /* 30852 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11929 | /* 30854 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11930 | /* 30858 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11931 | /* 30863 */ GIR_RootConstrainSelectedInstOperands, |
| 11932 | /* 30864 */ // GIR_Coverage, 18124, |
| 11933 | /* 30864 */ GIR_EraseRootFromParent_Done, |
| 11934 | /* 30865 */ // Label 800: @30865 |
| 11935 | /* 30865 */ GIM_Try, /*On fail goto*//*Label 801*/ GIMT_Encode4(30927), // Rule ID 20051 // |
| 11936 | /* 30870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11937 | /* 30873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11938 | /* 30877 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11939 | /* 30881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 11940 | /* 30885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 11941 | /* 30889 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 11942 | /* 30892 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 11943 | /* 30896 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 11944 | /* 30900 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 11945 | /* 30902 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 11946 | /* 30909 */ // (or:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 11947 | /* 30909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rm), |
| 11948 | /* 30912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 11949 | /* 30914 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 11950 | /* 30916 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 11951 | /* 30920 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 11952 | /* 30925 */ GIR_RootConstrainSelectedInstOperands, |
| 11953 | /* 30926 */ // GIR_Coverage, 20051, |
| 11954 | /* 30926 */ GIR_EraseRootFromParent_Done, |
| 11955 | /* 30927 */ // Label 801: @30927 |
| 11956 | /* 30927 */ GIM_Try, /*On fail goto*//*Label 802*/ GIMT_Encode4(30954), // Rule ID 18083 // |
| 11957 | /* 30932 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 11958 | /* 30935 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11959 | /* 30939 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11960 | /* 30943 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11961 | /* 30947 */ // (or:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPORYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 11962 | /* 30947 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORYrr), |
| 11963 | /* 30952 */ GIR_RootConstrainSelectedInstOperands, |
| 11964 | /* 30953 */ // GIR_Coverage, 18083, |
| 11965 | /* 30953 */ GIR_Done, |
| 11966 | /* 30954 */ // Label 802: @30954 |
| 11967 | /* 30954 */ GIM_Try, /*On fail goto*//*Label 803*/ GIMT_Encode4(30981), // Rule ID 18108 // |
| 11968 | /* 30959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 11969 | /* 30962 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11970 | /* 30966 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11971 | /* 30970 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 11972 | /* 30974 */ // (or:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VORPSYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 11973 | /* 30974 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VORPSYrr), |
| 11974 | /* 30979 */ GIR_RootConstrainSelectedInstOperands, |
| 11975 | /* 30980 */ // GIR_Coverage, 18108, |
| 11976 | /* 30980 */ GIR_Done, |
| 11977 | /* 30981 */ // Label 803: @30981 |
| 11978 | /* 30981 */ GIM_Try, /*On fail goto*//*Label 804*/ GIMT_Encode4(31008), // Rule ID 20043 // |
| 11979 | /* 30986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 11980 | /* 30989 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11981 | /* 30993 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11982 | /* 30997 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 11983 | /* 31001 */ // (or:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPORQZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 11984 | /* 31001 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZ256rr), |
| 11985 | /* 31006 */ GIR_RootConstrainSelectedInstOperands, |
| 11986 | /* 31007 */ // GIR_Coverage, 20043, |
| 11987 | /* 31007 */ GIR_Done, |
| 11988 | /* 31008 */ // Label 804: @31008 |
| 11989 | /* 31008 */ GIM_Reject, |
| 11990 | /* 31009 */ // Label 795: @31009 |
| 11991 | /* 31009 */ GIM_Reject, |
| 11992 | /* 31010 */ // Label 655: @31010 |
| 11993 | /* 31010 */ GIM_Try, /*On fail goto*//*Label 805*/ GIMT_Encode4(31165), |
| 11994 | /* 31015 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 11995 | /* 31018 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 11996 | /* 31021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 11997 | /* 31025 */ GIM_Try, /*On fail goto*//*Label 806*/ GIMT_Encode4(31083), // Rule ID 25529 // |
| 11998 | /* 31030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 11999 | /* 31033 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12000 | /* 31037 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12001 | /* 31041 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12002 | /* 31044 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12003 | /* 31048 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12004 | /* 31052 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12005 | /* 31056 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12006 | /* 31058 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12007 | /* 31065 */ // (or:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPORQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12008 | /* 31065 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12009 | /* 31068 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12010 | /* 31070 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12011 | /* 31072 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12012 | /* 31076 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12013 | /* 31081 */ GIR_RootConstrainSelectedInstOperands, |
| 12014 | /* 31082 */ // GIR_Coverage, 25529, |
| 12015 | /* 31082 */ GIR_EraseRootFromParent_Done, |
| 12016 | /* 31083 */ // Label 806: @31083 |
| 12017 | /* 31083 */ GIM_Try, /*On fail goto*//*Label 807*/ GIMT_Encode4(31141), // Rule ID 20068 // |
| 12018 | /* 31088 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12019 | /* 31091 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12020 | /* 31095 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12021 | /* 31099 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12022 | /* 31103 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12023 | /* 31106 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12024 | /* 31110 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12025 | /* 31114 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12026 | /* 31116 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12027 | /* 31123 */ // (or:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12028 | /* 31123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12029 | /* 31126 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12030 | /* 31128 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12031 | /* 31130 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12032 | /* 31134 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12033 | /* 31139 */ GIR_RootConstrainSelectedInstOperands, |
| 12034 | /* 31140 */ // GIR_Coverage, 20068, |
| 12035 | /* 31140 */ GIR_EraseRootFromParent_Done, |
| 12036 | /* 31141 */ // Label 807: @31141 |
| 12037 | /* 31141 */ GIM_Try, /*On fail goto*//*Label 808*/ GIMT_Encode4(31164), // Rule ID 20060 // |
| 12038 | /* 31146 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12039 | /* 31149 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12040 | /* 31153 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12041 | /* 31157 */ // (or:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPORQZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 12042 | /* 31157 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZrr), |
| 12043 | /* 31162 */ GIR_RootConstrainSelectedInstOperands, |
| 12044 | /* 31163 */ // GIR_Coverage, 20060, |
| 12045 | /* 31163 */ GIR_Done, |
| 12046 | /* 31164 */ // Label 808: @31164 |
| 12047 | /* 31164 */ GIM_Reject, |
| 12048 | /* 31165 */ // Label 805: @31165 |
| 12049 | /* 31165 */ GIM_Reject, |
| 12050 | /* 31166 */ // Label 656: @31166 |
| 12051 | /* 31166 */ GIM_Try, /*On fail goto*//*Label 809*/ GIMT_Encode4(31199), // Rule ID 4424 // |
| 12052 | /* 31171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 12053 | /* 31174 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 12054 | /* 31177 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s1, |
| 12055 | /* 31180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 12056 | /* 31184 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 12057 | /* 31188 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 12058 | /* 31192 */ // (or:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) => (KORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 12059 | /* 31192 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KORQkk), |
| 12060 | /* 31197 */ GIR_RootConstrainSelectedInstOperands, |
| 12061 | /* 31198 */ // GIR_Coverage, 4424, |
| 12062 | /* 31198 */ GIR_Done, |
| 12063 | /* 31199 */ // Label 809: @31199 |
| 12064 | /* 31199 */ GIM_Reject, |
| 12065 | /* 31200 */ // Label 657: @31200 |
| 12066 | /* 31200 */ GIM_Try, /*On fail goto*//*Label 810*/ GIMT_Encode4(31355), |
| 12067 | /* 31205 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 12068 | /* 31208 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 12069 | /* 31211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12070 | /* 31215 */ GIM_Try, /*On fail goto*//*Label 811*/ GIMT_Encode4(31273), // Rule ID 25528 // |
| 12071 | /* 31220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12072 | /* 31223 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12073 | /* 31227 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12074 | /* 31231 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12075 | /* 31234 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12076 | /* 31238 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12077 | /* 31242 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12078 | /* 31246 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12079 | /* 31248 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12080 | /* 31255 */ // (or:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPORQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12081 | /* 31255 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12082 | /* 31258 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12083 | /* 31260 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12084 | /* 31262 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12085 | /* 31266 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12086 | /* 31271 */ GIR_RootConstrainSelectedInstOperands, |
| 12087 | /* 31272 */ // GIR_Coverage, 25528, |
| 12088 | /* 31272 */ GIR_EraseRootFromParent_Done, |
| 12089 | /* 31273 */ // Label 811: @31273 |
| 12090 | /* 31273 */ GIM_Try, /*On fail goto*//*Label 812*/ GIMT_Encode4(31331), // Rule ID 20067 // |
| 12091 | /* 31278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12092 | /* 31281 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12093 | /* 31285 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12094 | /* 31289 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12095 | /* 31293 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12096 | /* 31296 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12097 | /* 31300 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12098 | /* 31304 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12099 | /* 31306 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12100 | /* 31313 */ // (or:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPORQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 12101 | /* 31313 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPORQZrm), |
| 12102 | /* 31316 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12103 | /* 31318 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12104 | /* 31320 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12105 | /* 31324 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12106 | /* 31329 */ GIR_RootConstrainSelectedInstOperands, |
| 12107 | /* 31330 */ // GIR_Coverage, 20067, |
| 12108 | /* 31330 */ GIR_EraseRootFromParent_Done, |
| 12109 | /* 31331 */ // Label 812: @31331 |
| 12110 | /* 31331 */ GIM_Try, /*On fail goto*//*Label 813*/ GIMT_Encode4(31354), // Rule ID 20059 // |
| 12111 | /* 31336 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 12112 | /* 31339 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12113 | /* 31343 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 12114 | /* 31347 */ // (or:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPORQZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 12115 | /* 31347 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPORQZrr), |
| 12116 | /* 31352 */ GIR_RootConstrainSelectedInstOperands, |
| 12117 | /* 31353 */ // GIR_Coverage, 20059, |
| 12118 | /* 31353 */ GIR_Done, |
| 12119 | /* 31354 */ // Label 813: @31354 |
| 12120 | /* 31354 */ GIM_Reject, |
| 12121 | /* 31355 */ // Label 810: @31355 |
| 12122 | /* 31355 */ GIM_Reject, |
| 12123 | /* 31356 */ // Label 658: @31356 |
| 12124 | /* 31356 */ GIM_Reject, |
| 12125 | /* 31357 */ // Label 5: @31357 |
| 12126 | /* 31357 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(25), /*)*//*default:*//*Label 837*/ GIMT_Encode4(43303), |
| 12127 | /* 31368 */ /*GILLT_s1*//*Label 814*/ GIMT_Encode4(31468), |
| 12128 | /* 31372 */ /*GILLT_s8*//*Label 815*/ GIMT_Encode4(32026), |
| 12129 | /* 31376 */ /*GILLT_s16*//*Label 816*/ GIMT_Encode4(32375), |
| 12130 | /* 31380 */ /*GILLT_s32*//*Label 817*/ GIMT_Encode4(32942), |
| 12131 | /* 31384 */ /*GILLT_s64*//*Label 818*/ GIMT_Encode4(33691), GIMT_Encode4(0), GIMT_Encode4(0), |
| 12132 | /* 31396 */ /*GILLT_v2s1*//*Label 819*/ GIMT_Encode4(34399), |
| 12133 | /* 31400 */ /*GILLT_v2s64*//*Label 820*/ GIMT_Encode4(34941), |
| 12134 | /* 31404 */ /*GILLT_v4s1*//*Label 821*/ GIMT_Encode4(35561), |
| 12135 | /* 31408 */ /*GILLT_v4s32*//*Label 822*/ GIMT_Encode4(36103), |
| 12136 | /* 31412 */ /*GILLT_v4s64*//*Label 823*/ GIMT_Encode4(36723), |
| 12137 | /* 31416 */ /*GILLT_v8s1*//*Label 824*/ GIMT_Encode4(37467), |
| 12138 | /* 31420 */ /*GILLT_v8s16*//*Label 825*/ GIMT_Encode4(38265), |
| 12139 | /* 31424 */ /*GILLT_v8s32*//*Label 826*/ GIMT_Encode4(38885), |
| 12140 | /* 31428 */ /*GILLT_v8s64*//*Label 827*/ GIMT_Encode4(39629), |
| 12141 | /* 31432 */ /*GILLT_v16s1*//*Label 828*/ GIMT_Encode4(39827), |
| 12142 | /* 31436 */ /*GILLT_v16s8*//*Label 829*/ GIMT_Encode4(40085), |
| 12143 | /* 31440 */ /*GILLT_v16s16*//*Label 830*/ GIMT_Encode4(40705), |
| 12144 | /* 31444 */ /*GILLT_v16s32*//*Label 831*/ GIMT_Encode4(41449), |
| 12145 | /* 31448 */ /*GILLT_v32s1*//*Label 832*/ GIMT_Encode4(41647), |
| 12146 | /* 31452 */ /*GILLT_v32s8*//*Label 833*/ GIMT_Encode4(41905), |
| 12147 | /* 31456 */ /*GILLT_v32s16*//*Label 834*/ GIMT_Encode4(42649), |
| 12148 | /* 31460 */ /*GILLT_v64s1*//*Label 835*/ GIMT_Encode4(42847), |
| 12149 | /* 31464 */ /*GILLT_v64s8*//*Label 836*/ GIMT_Encode4(43105), |
| 12150 | /* 31468 */ // Label 814: @31468 |
| 12151 | /* 31468 */ GIM_Try, /*On fail goto*//*Label 838*/ GIMT_Encode4(32025), |
| 12152 | /* 31473 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s1, |
| 12153 | /* 31476 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s1, |
| 12154 | /* 31479 */ GIM_Try, /*On fail goto*//*Label 839*/ GIMT_Encode4(31603), // Rule ID 25454 // |
| 12155 | /* 31484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12156 | /* 31488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12157 | /* 31492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 12158 | /* 31496 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 12159 | /* 31500 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 12160 | /* 31504 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12161 | /* 31509 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 12162 | /* 31513 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 12163 | /* 31519 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 12164 | /* 31521 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12165 | /* 31525 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 12166 | /* 31527 */ // (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] }) |
| 12167 | /* 31527 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 12168 | /* 31530 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12169 | /* 31534 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12170 | /* 31539 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 12171 | /* 31543 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12172 | /* 31548 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 12173 | /* 31551 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12174 | /* 31555 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12175 | /* 31560 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 12176 | /* 31564 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12177 | /* 31569 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 12178 | /* 31572 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 12179 | /* 31576 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12180 | /* 31581 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12181 | /* 31584 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 12182 | /* 31587 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 12183 | /* 31589 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12184 | /* 31592 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12185 | /* 31594 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12186 | /* 31597 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 12187 | /* 31602 */ // GIR_Coverage, 25454, |
| 12188 | /* 31602 */ GIR_EraseRootFromParent_Done, |
| 12189 | /* 31603 */ // Label 839: @31603 |
| 12190 | /* 31603 */ GIM_Try, /*On fail goto*//*Label 840*/ GIMT_Encode4(31728), // Rule ID 19494 // |
| 12191 | /* 31608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12192 | /* 31612 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12193 | /* 31616 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 12194 | /* 31620 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 12195 | /* 31624 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 12196 | /* 31628 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12197 | /* 31633 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12198 | /* 31638 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 12199 | /* 31642 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 12200 | /* 31648 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 12201 | /* 31650 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 12202 | /* 31652 */ // (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] }) |
| 12203 | /* 31652 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 12204 | /* 31655 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12205 | /* 31659 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12206 | /* 31664 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 12207 | /* 31668 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12208 | /* 31673 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 12209 | /* 31676 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12210 | /* 31680 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12211 | /* 31685 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 12212 | /* 31689 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12213 | /* 31694 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 12214 | /* 31697 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 12215 | /* 31701 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12216 | /* 31706 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12217 | /* 31709 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 12218 | /* 31712 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 12219 | /* 31714 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12220 | /* 31717 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12221 | /* 31719 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12222 | /* 31722 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 12223 | /* 31727 */ // GIR_Coverage, 19494, |
| 12224 | /* 31727 */ GIR_EraseRootFromParent_Done, |
| 12225 | /* 31728 */ // Label 840: @31728 |
| 12226 | /* 31728 */ GIM_Try, /*On fail goto*//*Label 841*/ GIMT_Encode4(31852), // Rule ID 25455 // |
| 12227 | /* 31733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12228 | /* 31737 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12229 | /* 31741 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12230 | /* 31745 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 12231 | /* 31749 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s1, |
| 12232 | /* 31753 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s1, |
| 12233 | /* 31757 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12234 | /* 31762 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 12235 | /* 31766 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 12236 | /* 31772 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 12237 | /* 31774 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 12238 | /* 31776 */ // (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] }) |
| 12239 | /* 31776 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 12240 | /* 31779 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12241 | /* 31783 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12242 | /* 31788 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 12243 | /* 31792 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12244 | /* 31797 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 12245 | /* 31800 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12246 | /* 31804 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12247 | /* 31809 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 12248 | /* 31813 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12249 | /* 31818 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 12250 | /* 31821 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 12251 | /* 31825 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12252 | /* 31830 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12253 | /* 31833 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 12254 | /* 31836 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 12255 | /* 31838 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12256 | /* 31841 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12257 | /* 31843 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12258 | /* 31846 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 12259 | /* 31851 */ // GIR_Coverage, 25455, |
| 12260 | /* 31851 */ GIR_EraseRootFromParent_Done, |
| 12261 | /* 31852 */ // Label 841: @31852 |
| 12262 | /* 31852 */ GIM_Try, /*On fail goto*//*Label 842*/ GIMT_Encode4(31931), // Rule ID 19480 // |
| 12263 | /* 31857 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 12264 | /* 31861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12265 | /* 31865 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12266 | /* 31869 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 12267 | /* 31875 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 12268 | /* 31877 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12269 | /* 31879 */ // (xor:{ *:[v1i1] } VK1:{ *:[v1i1] }:$src, immAllOnesV:{ *:[v1i1] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK1:{ *:[v1i1] }:$src, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 12270 | /* 31879 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 12271 | /* 31882 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12272 | /* 31886 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12273 | /* 31891 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 12274 | /* 31895 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12275 | /* 31900 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 12276 | /* 31903 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 12277 | /* 31907 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12278 | /* 31912 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12279 | /* 31915 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 12280 | /* 31917 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12281 | /* 31920 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12282 | /* 31922 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12283 | /* 31925 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 12284 | /* 31930 */ // GIR_Coverage, 19480, |
| 12285 | /* 31930 */ GIR_EraseRootFromParent_Done, |
| 12286 | /* 31931 */ // Label 842: @31931 |
| 12287 | /* 31931 */ GIM_Try, /*On fail goto*//*Label 843*/ GIMT_Encode4(32024), // Rule ID 19498 // |
| 12288 | /* 31936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12289 | /* 31940 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12290 | /* 31944 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 12291 | /* 31948 */ // (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] }) |
| 12292 | /* 31948 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 12293 | /* 31951 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12294 | /* 31955 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12295 | /* 31960 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 12296 | /* 31964 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12297 | /* 31969 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 12298 | /* 31972 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12299 | /* 31976 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12300 | /* 31981 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 12301 | /* 31985 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 12302 | /* 31990 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 12303 | /* 31993 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 12304 | /* 31997 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12305 | /* 32002 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12306 | /* 32005 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 12307 | /* 32008 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 12308 | /* 32010 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 12309 | /* 32013 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12310 | /* 32015 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12311 | /* 32018 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 12312 | /* 32023 */ // GIR_Coverage, 19498, |
| 12313 | /* 32023 */ GIR_EraseRootFromParent_Done, |
| 12314 | /* 32024 */ // Label 843: @32024 |
| 12315 | /* 32024 */ GIM_Reject, |
| 12316 | /* 32025 */ // Label 838: @32025 |
| 12317 | /* 32025 */ GIM_Reject, |
| 12318 | /* 32026 */ // Label 815: @32026 |
| 12319 | /* 32026 */ GIM_Try, /*On fail goto*//*Label 844*/ GIMT_Encode4(32374), |
| 12320 | /* 32031 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 12321 | /* 32034 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 12322 | /* 32037 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12323 | /* 32041 */ GIM_Try, /*On fail goto*//*Label 845*/ GIMT_Encode4(32102), // Rule ID 26147 // |
| 12324 | /* 32046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12325 | /* 32049 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12326 | /* 32053 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12327 | /* 32057 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12328 | /* 32060 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12329 | /* 32064 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 12330 | /* 32068 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12331 | /* 32072 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12332 | /* 32074 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12333 | /* 32081 */ // (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) |
| 12334 | /* 32081 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8rm), |
| 12335 | /* 32084 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12336 | /* 32086 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12337 | /* 32088 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12338 | /* 32092 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12339 | /* 32095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12340 | /* 32100 */ GIR_RootConstrainSelectedInstOperands, |
| 12341 | /* 32101 */ // GIR_Coverage, 26147, |
| 12342 | /* 32101 */ GIR_EraseRootFromParent_Done, |
| 12343 | /* 32102 */ // Label 845: @32102 |
| 12344 | /* 32102 */ GIM_Try, /*On fail goto*//*Label 846*/ GIMT_Encode4(32163), // Rule ID 22922 // |
| 12345 | /* 32107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12346 | /* 32110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12347 | /* 32114 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12348 | /* 32118 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12349 | /* 32122 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12350 | /* 32125 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12351 | /* 32129 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 12352 | /* 32133 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12353 | /* 32135 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12354 | /* 32142 */ // (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) |
| 12355 | /* 32142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8rm), |
| 12356 | /* 32145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12357 | /* 32147 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12358 | /* 32149 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12359 | /* 32153 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12360 | /* 32156 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12361 | /* 32161 */ GIR_RootConstrainSelectedInstOperands, |
| 12362 | /* 32162 */ // GIR_Coverage, 22922, |
| 12363 | /* 32162 */ GIR_EraseRootFromParent_Done, |
| 12364 | /* 32163 */ // Label 846: @32163 |
| 12365 | /* 32163 */ GIM_Try, /*On fail goto*//*Label 847*/ GIMT_Encode4(32191), // Rule ID 22681 // |
| 12366 | /* 32168 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12367 | /* 32172 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 128, |
| 12368 | /* 32176 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, -128:{ *:[i8] }) => (ADD8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, -128:{ *:[i8] }) |
| 12369 | /* 32176 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8ri), |
| 12370 | /* 32179 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12371 | /* 32181 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12372 | /* 32183 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 12373 | /* 32186 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12374 | /* 32189 */ GIR_RootConstrainSelectedInstOperands, |
| 12375 | /* 32190 */ // GIR_Coverage, 22681, |
| 12376 | /* 32190 */ GIR_EraseRootFromParent_Done, |
| 12377 | /* 32191 */ // Label 847: @32191 |
| 12378 | /* 32191 */ GIM_Try, /*On fail goto*//*Label 848*/ GIMT_Encode4(32216), // Rule ID 243 // |
| 12379 | /* 32196 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12380 | /* 32199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12381 | /* 32203 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 12382 | /* 32207 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, -1:{ *:[i8] }) => (NOT8r:{ *:[i8] } GR8:{ *:[i8] }:$src1) |
| 12383 | /* 32207 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8r), |
| 12384 | /* 32210 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12385 | /* 32212 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12386 | /* 32214 */ GIR_RootConstrainSelectedInstOperands, |
| 12387 | /* 32215 */ // GIR_Coverage, 243, |
| 12388 | /* 32215 */ GIR_EraseRootFromParent_Done, |
| 12389 | /* 32216 */ // Label 848: @32216 |
| 12390 | /* 32216 */ GIM_Try, /*On fail goto*//*Label 849*/ GIMT_Encode4(32241), // Rule ID 251 // |
| 12391 | /* 32221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 12392 | /* 32224 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12393 | /* 32228 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 12394 | /* 32232 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, -1:{ *:[i8] }) => (NOT8r_ND:{ *:[i8] } GR8:{ *:[i8] }:$src1) |
| 12395 | /* 32232 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8r_ND), |
| 12396 | /* 32235 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12397 | /* 32237 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12398 | /* 32239 */ GIR_RootConstrainSelectedInstOperands, |
| 12399 | /* 32240 */ // GIR_Coverage, 251, |
| 12400 | /* 32240 */ GIR_EraseRootFromParent_Done, |
| 12401 | /* 32241 */ // Label 849: @32241 |
| 12402 | /* 32241 */ GIM_Try, /*On fail goto*//*Label 850*/ GIMT_Encode4(32278), // Rule ID 22926 // |
| 12403 | /* 32246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12404 | /* 32249 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12405 | /* 32253 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12406 | /* 32257 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 12407 | /* 32261 */ // MIs[1] Operand 1 |
| 12408 | /* 32261 */ // No operand predicates |
| 12409 | /* 32261 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12410 | /* 32263 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (XOR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 12411 | /* 32263 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8ri), |
| 12412 | /* 32266 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12413 | /* 32268 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12414 | /* 32270 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 12415 | /* 32273 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12416 | /* 32276 */ GIR_RootConstrainSelectedInstOperands, |
| 12417 | /* 32277 */ // GIR_Coverage, 22926, |
| 12418 | /* 32277 */ GIR_EraseRootFromParent_Done, |
| 12419 | /* 32278 */ // Label 850: @32278 |
| 12420 | /* 32278 */ GIM_Try, /*On fail goto*//*Label 851*/ GIMT_Encode4(32315), // Rule ID 23016 // |
| 12421 | /* 32283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 12422 | /* 32286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12423 | /* 32290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12424 | /* 32294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 12425 | /* 32298 */ // MIs[1] Operand 1 |
| 12426 | /* 32298 */ // No operand predicates |
| 12427 | /* 32298 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12428 | /* 32300 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (XOR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 12429 | /* 32300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8ri_ND), |
| 12430 | /* 32303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12431 | /* 32305 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12432 | /* 32307 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 12433 | /* 32310 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12434 | /* 32313 */ GIR_RootConstrainSelectedInstOperands, |
| 12435 | /* 32314 */ // GIR_Coverage, 23016, |
| 12436 | /* 32314 */ GIR_EraseRootFromParent_Done, |
| 12437 | /* 32315 */ // Label 851: @32315 |
| 12438 | /* 32315 */ GIM_Try, /*On fail goto*//*Label 852*/ GIMT_Encode4(32344), // Rule ID 22918 // |
| 12439 | /* 32320 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12440 | /* 32323 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12441 | /* 32327 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12442 | /* 32331 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (XOR8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 12443 | /* 32331 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR8rr), |
| 12444 | /* 32336 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 12445 | /* 32342 */ GIR_RootConstrainSelectedInstOperands, |
| 12446 | /* 32343 */ // GIR_Coverage, 22918, |
| 12447 | /* 32343 */ GIR_Done, |
| 12448 | /* 32344 */ // Label 852: @32344 |
| 12449 | /* 32344 */ GIM_Try, /*On fail goto*//*Label 853*/ GIMT_Encode4(32373), // Rule ID 23008 // |
| 12450 | /* 32349 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 12451 | /* 32352 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12452 | /* 32356 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12453 | /* 32360 */ // (xor:{ *:[i8] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) => (XOR8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src2) |
| 12454 | /* 32360 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR8rr_ND), |
| 12455 | /* 32365 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 12456 | /* 32371 */ GIR_RootConstrainSelectedInstOperands, |
| 12457 | /* 32372 */ // GIR_Coverage, 23008, |
| 12458 | /* 32372 */ GIR_Done, |
| 12459 | /* 32373 */ // Label 853: @32373 |
| 12460 | /* 32373 */ GIM_Reject, |
| 12461 | /* 32374 */ // Label 844: @32374 |
| 12462 | /* 32374 */ GIM_Reject, |
| 12463 | /* 32375 */ // Label 816: @32375 |
| 12464 | /* 32375 */ GIM_Try, /*On fail goto*//*Label 854*/ GIMT_Encode4(32941), |
| 12465 | /* 32380 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 12466 | /* 32383 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 12467 | /* 32386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12468 | /* 32390 */ GIM_Try, /*On fail goto*//*Label 855*/ GIMT_Encode4(32451), // Rule ID 26148 // |
| 12469 | /* 32395 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12470 | /* 32398 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12471 | /* 32402 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12472 | /* 32406 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12473 | /* 32409 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12474 | /* 32413 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 12475 | /* 32417 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12476 | /* 32421 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12477 | /* 32423 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12478 | /* 32430 */ // (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) |
| 12479 | /* 32430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16rm), |
| 12480 | /* 32433 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12481 | /* 32435 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12482 | /* 32437 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12483 | /* 32441 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12484 | /* 32444 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12485 | /* 32449 */ GIR_RootConstrainSelectedInstOperands, |
| 12486 | /* 32450 */ // GIR_Coverage, 26148, |
| 12487 | /* 32450 */ GIR_EraseRootFromParent_Done, |
| 12488 | /* 32451 */ // Label 855: @32451 |
| 12489 | /* 32451 */ GIM_Try, /*On fail goto*//*Label 856*/ GIMT_Encode4(32512), // Rule ID 22923 // |
| 12490 | /* 32456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12491 | /* 32459 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12492 | /* 32463 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12493 | /* 32467 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12494 | /* 32471 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12495 | /* 32474 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12496 | /* 32478 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 12497 | /* 32482 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12498 | /* 32484 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12499 | /* 32491 */ // (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) |
| 12500 | /* 32491 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16rm), |
| 12501 | /* 32494 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12502 | /* 32496 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12503 | /* 32498 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12504 | /* 32502 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12505 | /* 32505 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12506 | /* 32510 */ GIR_RootConstrainSelectedInstOperands, |
| 12507 | /* 32511 */ // GIR_Coverage, 22923, |
| 12508 | /* 32511 */ GIR_EraseRootFromParent_Done, |
| 12509 | /* 32512 */ // Label 856: @32512 |
| 12510 | /* 32512 */ GIM_Try, /*On fail goto*//*Label 857*/ GIMT_Encode4(32554), // Rule ID 22682 // |
| 12511 | /* 32517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12512 | /* 32521 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(18446744073709518848u), |
| 12513 | /* 32532 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, -32768:{ *:[i16] }) => (ADD16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, -32768:{ *:[i16] }) |
| 12514 | /* 32532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16ri), |
| 12515 | /* 32535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12516 | /* 32537 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12517 | /* 32539 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(18446744073709518848u), |
| 12518 | /* 32549 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12519 | /* 32552 */ GIR_RootConstrainSelectedInstOperands, |
| 12520 | /* 32553 */ // GIR_Coverage, 22682, |
| 12521 | /* 32553 */ GIR_EraseRootFromParent_Done, |
| 12522 | /* 32554 */ // Label 857: @32554 |
| 12523 | /* 32554 */ GIM_Try, /*On fail goto*//*Label 858*/ GIMT_Encode4(32656), // Rule ID 26120 // |
| 12524 | /* 32559 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12525 | /* 32563 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 12526 | /* 32567 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 12527 | /* 32571 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 12528 | /* 32575 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 12529 | /* 32579 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12530 | /* 32584 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12531 | /* 32588 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12532 | /* 32590 */ // (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] })) |
| 12533 | /* 32590 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 12534 | /* 32593 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 12535 | /* 32597 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12536 | /* 32602 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 12537 | /* 32604 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 12538 | /* 32607 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 12539 | /* 32611 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12540 | /* 32616 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12541 | /* 32619 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 12542 | /* 32623 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 12543 | /* 32626 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 12544 | /* 32631 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 12545 | /* 32636 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 12546 | /* 32641 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC16rr), |
| 12547 | /* 32644 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12548 | /* 32646 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12549 | /* 32648 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12550 | /* 32651 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12551 | /* 32654 */ GIR_RootConstrainSelectedInstOperands, |
| 12552 | /* 32655 */ // GIR_Coverage, 26120, |
| 12553 | /* 32655 */ GIR_EraseRootFromParent_Done, |
| 12554 | /* 32656 */ // Label 858: @32656 |
| 12555 | /* 32656 */ GIM_Try, /*On fail goto*//*Label 859*/ GIMT_Encode4(32758), // Rule ID 22858 // |
| 12556 | /* 32661 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12557 | /* 32665 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12558 | /* 32669 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 12559 | /* 32673 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 12560 | /* 32677 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 12561 | /* 32681 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 12562 | /* 32685 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12563 | /* 32690 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12564 | /* 32692 */ // (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] })) |
| 12565 | /* 32692 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s16, |
| 12566 | /* 32695 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 12567 | /* 32699 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12568 | /* 32704 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 12569 | /* 32706 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 12570 | /* 32709 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 12571 | /* 32713 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12572 | /* 32718 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12573 | /* 32721 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 12574 | /* 32725 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 12575 | /* 32728 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 12576 | /* 32733 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 12577 | /* 32738 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 12578 | /* 32743 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC16rr), |
| 12579 | /* 32746 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12580 | /* 32748 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12581 | /* 32750 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12582 | /* 32753 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12583 | /* 32756 */ GIR_RootConstrainSelectedInstOperands, |
| 12584 | /* 32757 */ // GIR_Coverage, 22858, |
| 12585 | /* 32757 */ GIR_EraseRootFromParent_Done, |
| 12586 | /* 32758 */ // Label 859: @32758 |
| 12587 | /* 32758 */ GIM_Try, /*On fail goto*//*Label 860*/ GIMT_Encode4(32783), // Rule ID 244 // |
| 12588 | /* 32763 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12589 | /* 32766 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12590 | /* 32770 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 12591 | /* 32774 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, -1:{ *:[i16] }) => (NOT16r:{ *:[i16] } GR16:{ *:[i16] }:$src1) |
| 12592 | /* 32774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16r), |
| 12593 | /* 32777 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12594 | /* 32779 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12595 | /* 32781 */ GIR_RootConstrainSelectedInstOperands, |
| 12596 | /* 32782 */ // GIR_Coverage, 244, |
| 12597 | /* 32782 */ GIR_EraseRootFromParent_Done, |
| 12598 | /* 32783 */ // Label 860: @32783 |
| 12599 | /* 32783 */ GIM_Try, /*On fail goto*//*Label 861*/ GIMT_Encode4(32808), // Rule ID 252 // |
| 12600 | /* 32788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 12601 | /* 32791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12602 | /* 32795 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 12603 | /* 32799 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, -1:{ *:[i16] }) => (NOT16r_ND:{ *:[i16] } GR16:{ *:[i16] }:$src1) |
| 12604 | /* 32799 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16r_ND), |
| 12605 | /* 32802 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12606 | /* 32804 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12607 | /* 32806 */ GIR_RootConstrainSelectedInstOperands, |
| 12608 | /* 32807 */ // GIR_Coverage, 252, |
| 12609 | /* 32807 */ GIR_EraseRootFromParent_Done, |
| 12610 | /* 32808 */ // Label 861: @32808 |
| 12611 | /* 32808 */ GIM_Try, /*On fail goto*//*Label 862*/ GIMT_Encode4(32845), // Rule ID 22927 // |
| 12612 | /* 32813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12613 | /* 32816 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12614 | /* 32820 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12615 | /* 32824 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 12616 | /* 32828 */ // MIs[1] Operand 1 |
| 12617 | /* 32828 */ // No operand predicates |
| 12618 | /* 32828 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12619 | /* 32830 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (XOR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 12620 | /* 32830 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16ri), |
| 12621 | /* 32833 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12622 | /* 32835 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12623 | /* 32837 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 12624 | /* 32840 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12625 | /* 32843 */ GIR_RootConstrainSelectedInstOperands, |
| 12626 | /* 32844 */ // GIR_Coverage, 22927, |
| 12627 | /* 32844 */ GIR_EraseRootFromParent_Done, |
| 12628 | /* 32845 */ // Label 862: @32845 |
| 12629 | /* 32845 */ GIM_Try, /*On fail goto*//*Label 863*/ GIMT_Encode4(32882), // Rule ID 23017 // |
| 12630 | /* 32850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 12631 | /* 32853 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12632 | /* 32857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12633 | /* 32861 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 12634 | /* 32865 */ // MIs[1] Operand 1 |
| 12635 | /* 32865 */ // No operand predicates |
| 12636 | /* 32865 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12637 | /* 32867 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) => (XOR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2) |
| 12638 | /* 32867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16ri_ND), |
| 12639 | /* 32870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12640 | /* 32872 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12641 | /* 32874 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 12642 | /* 32877 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12643 | /* 32880 */ GIR_RootConstrainSelectedInstOperands, |
| 12644 | /* 32881 */ // GIR_Coverage, 23017, |
| 12645 | /* 32881 */ GIR_EraseRootFromParent_Done, |
| 12646 | /* 32882 */ // Label 863: @32882 |
| 12647 | /* 32882 */ GIM_Try, /*On fail goto*//*Label 864*/ GIMT_Encode4(32911), // Rule ID 22919 // |
| 12648 | /* 32887 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12649 | /* 32890 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12650 | /* 32894 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12651 | /* 32898 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (XOR16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 12652 | /* 32898 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR16rr), |
| 12653 | /* 32903 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 12654 | /* 32909 */ GIR_RootConstrainSelectedInstOperands, |
| 12655 | /* 32910 */ // GIR_Coverage, 22919, |
| 12656 | /* 32910 */ GIR_Done, |
| 12657 | /* 32911 */ // Label 864: @32911 |
| 12658 | /* 32911 */ GIM_Try, /*On fail goto*//*Label 865*/ GIMT_Encode4(32940), // Rule ID 23009 // |
| 12659 | /* 32916 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 12660 | /* 32919 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12661 | /* 32923 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 12662 | /* 32927 */ // (xor:{ *:[i16] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) => (XOR16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src2) |
| 12663 | /* 32927 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR16rr_ND), |
| 12664 | /* 32932 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 12665 | /* 32938 */ GIR_RootConstrainSelectedInstOperands, |
| 12666 | /* 32939 */ // GIR_Coverage, 23009, |
| 12667 | /* 32939 */ GIR_Done, |
| 12668 | /* 32940 */ // Label 865: @32940 |
| 12669 | /* 32940 */ GIM_Reject, |
| 12670 | /* 32941 */ // Label 854: @32941 |
| 12671 | /* 32941 */ GIM_Reject, |
| 12672 | /* 32942 */ // Label 817: @32942 |
| 12673 | /* 32942 */ GIM_Try, /*On fail goto*//*Label 866*/ GIMT_Encode4(33690), |
| 12674 | /* 32947 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 12675 | /* 32950 */ GIM_Try, /*On fail goto*//*Label 867*/ GIMT_Encode4(33018), // Rule ID 26149 // |
| 12676 | /* 32955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12677 | /* 32958 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12678 | /* 32961 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12679 | /* 32965 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12680 | /* 32969 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12681 | /* 32973 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12682 | /* 32976 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12683 | /* 32980 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 12684 | /* 32984 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12685 | /* 32988 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12686 | /* 32990 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12687 | /* 32997 */ // (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) |
| 12688 | /* 32997 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32rm), |
| 12689 | /* 33000 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12690 | /* 33002 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12691 | /* 33004 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12692 | /* 33008 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12693 | /* 33011 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12694 | /* 33016 */ GIR_RootConstrainSelectedInstOperands, |
| 12695 | /* 33017 */ // GIR_Coverage, 26149, |
| 12696 | /* 33017 */ GIR_EraseRootFromParent_Done, |
| 12697 | /* 33018 */ // Label 867: @33018 |
| 12698 | /* 33018 */ GIM_Try, /*On fail goto*//*Label 868*/ GIMT_Encode4(33086), // Rule ID 22924 // |
| 12699 | /* 33023 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12700 | /* 33026 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12701 | /* 33029 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12702 | /* 33033 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12703 | /* 33037 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12704 | /* 33041 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12705 | /* 33045 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12706 | /* 33048 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12707 | /* 33052 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 12708 | /* 33056 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12709 | /* 33058 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12710 | /* 33065 */ // (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) |
| 12711 | /* 33065 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32rm), |
| 12712 | /* 33068 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12713 | /* 33070 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12714 | /* 33072 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12715 | /* 33076 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12716 | /* 33079 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12717 | /* 33084 */ GIR_RootConstrainSelectedInstOperands, |
| 12718 | /* 33085 */ // GIR_Coverage, 22924, |
| 12719 | /* 33085 */ GIR_EraseRootFromParent_Done, |
| 12720 | /* 33086 */ // Label 868: @33086 |
| 12721 | /* 33086 */ GIM_Try, /*On fail goto*//*Label 869*/ GIMT_Encode4(33135), // Rule ID 22683 // |
| 12722 | /* 33091 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12723 | /* 33094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12724 | /* 33098 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12725 | /* 33102 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(18446744071562067968u), |
| 12726 | /* 33113 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -2147483648:{ *:[i32] }) => (ADD32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, -2147483648:{ *:[i32] }) |
| 12727 | /* 33113 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32ri), |
| 12728 | /* 33116 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12729 | /* 33118 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12730 | /* 33120 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(18446744071562067968u), |
| 12731 | /* 33130 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12732 | /* 33133 */ GIR_RootConstrainSelectedInstOperands, |
| 12733 | /* 33134 */ // GIR_Coverage, 22683, |
| 12734 | /* 33134 */ GIR_EraseRootFromParent_Done, |
| 12735 | /* 33135 */ // Label 869: @33135 |
| 12736 | /* 33135 */ GIM_Try, /*On fail goto*//*Label 870*/ GIMT_Encode4(33193), // Rule ID 25079 // |
| 12737 | /* 33140 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 12738 | /* 33143 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12739 | /* 33147 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12740 | /* 33151 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 12741 | /* 33155 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 12742 | /* 33159 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 12743 | /* 33163 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12744 | /* 33168 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 12745 | /* 33172 */ // MIs[0] src |
| 12746 | /* 33172 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 12747 | /* 33177 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12748 | /* 33179 */ // (xor:{ *:[i32] } (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] }), GR32:{ *:[i32] }:$src) => (BLCMSK32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 12749 | /* 33179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCMSK32rr), |
| 12750 | /* 33182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12751 | /* 33184 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 12752 | /* 33188 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12753 | /* 33191 */ GIR_RootConstrainSelectedInstOperands, |
| 12754 | /* 33192 */ // GIR_Coverage, 25079, |
| 12755 | /* 33192 */ GIR_EraseRootFromParent_Done, |
| 12756 | /* 33193 */ // Label 870: @33193 |
| 12757 | /* 33193 */ GIM_Try, /*On fail goto*//*Label 871*/ GIMT_Encode4(33302), // Rule ID 26126 // |
| 12758 | /* 33198 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12759 | /* 33201 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12760 | /* 33205 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12761 | /* 33209 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 12762 | /* 33213 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 12763 | /* 33217 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 12764 | /* 33221 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 12765 | /* 33225 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12766 | /* 33230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12767 | /* 33234 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12768 | /* 33236 */ // (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] })) |
| 12769 | /* 33236 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 12770 | /* 33239 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 12771 | /* 33243 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12772 | /* 33248 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 12773 | /* 33250 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 12774 | /* 33253 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 12775 | /* 33257 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12776 | /* 33262 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12777 | /* 33265 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 12778 | /* 33269 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 12779 | /* 33272 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 12780 | /* 33277 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 12781 | /* 33282 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 12782 | /* 33287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC32rr), |
| 12783 | /* 33290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12784 | /* 33292 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12785 | /* 33294 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12786 | /* 33297 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12787 | /* 33300 */ GIR_RootConstrainSelectedInstOperands, |
| 12788 | /* 33301 */ // GIR_Coverage, 26126, |
| 12789 | /* 33301 */ GIR_EraseRootFromParent_Done, |
| 12790 | /* 33302 */ // Label 871: @33302 |
| 12791 | /* 33302 */ GIM_Try, /*On fail goto*//*Label 872*/ GIMT_Encode4(33356), // Rule ID 17346 // |
| 12792 | /* 33307 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 12793 | /* 33310 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12794 | /* 33313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12795 | /* 33317 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12796 | /* 33321 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12797 | /* 33325 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 12798 | /* 33329 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 12799 | /* 33333 */ // MIs[1] src |
| 12800 | /* 33333 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 12801 | /* 33338 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 12802 | /* 33342 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12803 | /* 33344 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src, (add:{ *:[i32] } GR32:{ *:[i32] }:$src, 1:{ *:[i32] })) => (BLCMSK32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 12804 | /* 33344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCMSK32rr), |
| 12805 | /* 33347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12806 | /* 33349 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 12807 | /* 33351 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12808 | /* 33354 */ GIR_RootConstrainSelectedInstOperands, |
| 12809 | /* 33355 */ // GIR_Coverage, 17346, |
| 12810 | /* 33355 */ GIR_EraseRootFromParent_Done, |
| 12811 | /* 33356 */ // Label 872: @33356 |
| 12812 | /* 33356 */ GIM_Try, /*On fail goto*//*Label 873*/ GIMT_Encode4(33465), // Rule ID 22864 // |
| 12813 | /* 33361 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12814 | /* 33364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12815 | /* 33368 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12816 | /* 33372 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12817 | /* 33376 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 12818 | /* 33380 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 12819 | /* 33384 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 12820 | /* 33388 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 12821 | /* 33392 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 12822 | /* 33397 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12823 | /* 33399 */ // (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] })) |
| 12824 | /* 33399 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 12825 | /* 33402 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 12826 | /* 33406 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12827 | /* 33411 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 12828 | /* 33413 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 12829 | /* 33416 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 12830 | /* 33420 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 12831 | /* 33425 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 12832 | /* 33428 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 12833 | /* 33432 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 12834 | /* 33435 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 12835 | /* 33440 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 12836 | /* 33445 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 12837 | /* 33450 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC32rr), |
| 12838 | /* 33453 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12839 | /* 33455 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12840 | /* 33457 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 12841 | /* 33460 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12842 | /* 33463 */ GIR_RootConstrainSelectedInstOperands, |
| 12843 | /* 33464 */ // GIR_Coverage, 22864, |
| 12844 | /* 33464 */ GIR_EraseRootFromParent_Done, |
| 12845 | /* 33465 */ // Label 873: @33465 |
| 12846 | /* 33465 */ GIM_Try, /*On fail goto*//*Label 874*/ GIMT_Encode4(33497), // Rule ID 245 // |
| 12847 | /* 33470 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12848 | /* 33473 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12849 | /* 33476 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12850 | /* 33480 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12851 | /* 33484 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 12852 | /* 33488 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }) => (NOT32r:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 12853 | /* 33488 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32r), |
| 12854 | /* 33491 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12855 | /* 33493 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12856 | /* 33495 */ GIR_RootConstrainSelectedInstOperands, |
| 12857 | /* 33496 */ // GIR_Coverage, 245, |
| 12858 | /* 33496 */ GIR_EraseRootFromParent_Done, |
| 12859 | /* 33497 */ // Label 874: @33497 |
| 12860 | /* 33497 */ GIM_Try, /*On fail goto*//*Label 875*/ GIMT_Encode4(33529), // Rule ID 253 // |
| 12861 | /* 33502 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 12862 | /* 33505 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12863 | /* 33508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12864 | /* 33512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12865 | /* 33516 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 12866 | /* 33520 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, -1:{ *:[i32] }) => (NOT32r_ND:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 12867 | /* 33520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32r_ND), |
| 12868 | /* 33523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12869 | /* 33525 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12870 | /* 33527 */ GIR_RootConstrainSelectedInstOperands, |
| 12871 | /* 33528 */ // GIR_Coverage, 253, |
| 12872 | /* 33528 */ GIR_EraseRootFromParent_Done, |
| 12873 | /* 33529 */ // Label 875: @33529 |
| 12874 | /* 33529 */ GIM_Try, /*On fail goto*//*Label 876*/ GIMT_Encode4(33573), // Rule ID 22928 // |
| 12875 | /* 33534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12876 | /* 33537 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12877 | /* 33540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12878 | /* 33544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12879 | /* 33548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12880 | /* 33552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 12881 | /* 33556 */ // MIs[1] Operand 1 |
| 12882 | /* 33556 */ // No operand predicates |
| 12883 | /* 33556 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12884 | /* 33558 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (XOR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 12885 | /* 33558 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32ri), |
| 12886 | /* 33561 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12887 | /* 33563 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12888 | /* 33565 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 12889 | /* 33568 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12890 | /* 33571 */ GIR_RootConstrainSelectedInstOperands, |
| 12891 | /* 33572 */ // GIR_Coverage, 22928, |
| 12892 | /* 33572 */ GIR_EraseRootFromParent_Done, |
| 12893 | /* 33573 */ // Label 876: @33573 |
| 12894 | /* 33573 */ GIM_Try, /*On fail goto*//*Label 877*/ GIMT_Encode4(33617), // Rule ID 23018 // |
| 12895 | /* 33578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 12896 | /* 33581 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12897 | /* 33584 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12898 | /* 33588 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12899 | /* 33592 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12900 | /* 33596 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 12901 | /* 33600 */ // MIs[1] Operand 1 |
| 12902 | /* 33600 */ // No operand predicates |
| 12903 | /* 33600 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12904 | /* 33602 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) => (XOR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i32] }):$src2) |
| 12905 | /* 33602 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32ri_ND), |
| 12906 | /* 33605 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12907 | /* 33607 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12908 | /* 33609 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 12909 | /* 33612 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12910 | /* 33615 */ GIR_RootConstrainSelectedInstOperands, |
| 12911 | /* 33616 */ // GIR_Coverage, 23018, |
| 12912 | /* 33616 */ GIR_EraseRootFromParent_Done, |
| 12913 | /* 33617 */ // Label 877: @33617 |
| 12914 | /* 33617 */ GIM_Try, /*On fail goto*//*Label 878*/ GIMT_Encode4(33653), // Rule ID 22920 // |
| 12915 | /* 33622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12916 | /* 33625 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12917 | /* 33628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12918 | /* 33632 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12919 | /* 33636 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12920 | /* 33640 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (XOR32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 12921 | /* 33640 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR32rr), |
| 12922 | /* 33645 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 12923 | /* 33651 */ GIR_RootConstrainSelectedInstOperands, |
| 12924 | /* 33652 */ // GIR_Coverage, 22920, |
| 12925 | /* 33652 */ GIR_Done, |
| 12926 | /* 33653 */ // Label 878: @33653 |
| 12927 | /* 33653 */ GIM_Try, /*On fail goto*//*Label 879*/ GIMT_Encode4(33689), // Rule ID 23010 // |
| 12928 | /* 33658 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 12929 | /* 33661 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12930 | /* 33664 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12931 | /* 33668 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12932 | /* 33672 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 12933 | /* 33676 */ // (xor:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (XOR32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 12934 | /* 33676 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR32rr_ND), |
| 12935 | /* 33681 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 12936 | /* 33687 */ GIR_RootConstrainSelectedInstOperands, |
| 12937 | /* 33688 */ // GIR_Coverage, 23010, |
| 12938 | /* 33688 */ GIR_Done, |
| 12939 | /* 33689 */ // Label 879: @33689 |
| 12940 | /* 33689 */ GIM_Reject, |
| 12941 | /* 33690 */ // Label 866: @33690 |
| 12942 | /* 33690 */ GIM_Reject, |
| 12943 | /* 33691 */ // Label 818: @33691 |
| 12944 | /* 33691 */ GIM_Try, /*On fail goto*//*Label 880*/ GIMT_Encode4(34398), |
| 12945 | /* 33696 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 12946 | /* 33699 */ GIM_Try, /*On fail goto*//*Label 881*/ GIMT_Encode4(33767), // Rule ID 26150 // |
| 12947 | /* 33704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12948 | /* 33707 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 12949 | /* 33710 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 12950 | /* 33714 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12951 | /* 33718 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12952 | /* 33722 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12953 | /* 33725 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12954 | /* 33729 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12955 | /* 33733 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 12956 | /* 33737 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12957 | /* 33739 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12958 | /* 33746 */ // (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) |
| 12959 | /* 33746 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64rm), |
| 12960 | /* 33749 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12961 | /* 33751 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 12962 | /* 33753 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12963 | /* 33757 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12964 | /* 33760 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12965 | /* 33765 */ GIR_RootConstrainSelectedInstOperands, |
| 12966 | /* 33766 */ // GIR_Coverage, 26150, |
| 12967 | /* 33766 */ GIR_EraseRootFromParent_Done, |
| 12968 | /* 33767 */ // Label 881: @33767 |
| 12969 | /* 33767 */ GIM_Try, /*On fail goto*//*Label 882*/ GIMT_Encode4(33835), // Rule ID 22925 // |
| 12970 | /* 33772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 12971 | /* 33775 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 12972 | /* 33778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 12973 | /* 33782 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 12974 | /* 33786 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 12975 | /* 33790 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 12976 | /* 33794 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 12977 | /* 33797 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 12978 | /* 33801 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 12979 | /* 33805 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12980 | /* 33807 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 12981 | /* 33814 */ // (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) |
| 12982 | /* 33814 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64rm), |
| 12983 | /* 33817 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 12984 | /* 33819 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 12985 | /* 33821 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 12986 | /* 33825 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 12987 | /* 33828 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 12988 | /* 33833 */ GIR_RootConstrainSelectedInstOperands, |
| 12989 | /* 33834 */ // GIR_Coverage, 22925, |
| 12990 | /* 33834 */ GIR_EraseRootFromParent_Done, |
| 12991 | /* 33835 */ // Label 882: @33835 |
| 12992 | /* 33835 */ GIM_Try, /*On fail goto*//*Label 883*/ GIMT_Encode4(33893), // Rule ID 25080 // |
| 12993 | /* 33840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 12994 | /* 33843 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 12995 | /* 33847 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 12996 | /* 33851 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 12997 | /* 33855 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 12998 | /* 33859 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 12999 | /* 33863 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13000 | /* 33868 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 13001 | /* 33872 */ // MIs[0] src |
| 13002 | /* 33872 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/1, /*OtherOpIdx*/1, |
| 13003 | /* 33877 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13004 | /* 33879 */ // (xor:{ *:[i64] } (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] }), GR64:{ *:[i64] }:$src) => (BLCMSK64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 13005 | /* 33879 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCMSK64rr), |
| 13006 | /* 33882 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13007 | /* 33884 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 13008 | /* 33888 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13009 | /* 33891 */ GIR_RootConstrainSelectedInstOperands, |
| 13010 | /* 33892 */ // GIR_Coverage, 25080, |
| 13011 | /* 33892 */ GIR_EraseRootFromParent_Done, |
| 13012 | /* 33893 */ // Label 883: @33893 |
| 13013 | /* 33893 */ GIM_Try, /*On fail goto*//*Label 884*/ GIMT_Encode4(34002), // Rule ID 26132 // |
| 13014 | /* 33898 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13015 | /* 33901 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13016 | /* 33905 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13017 | /* 33909 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 13018 | /* 33913 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 13019 | /* 33917 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 13020 | /* 33921 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 13021 | /* 33925 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13022 | /* 33930 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13023 | /* 33934 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13024 | /* 33936 */ // (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] })) |
| 13025 | /* 33936 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 13026 | /* 33939 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13027 | /* 33943 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13028 | /* 33948 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 13029 | /* 33950 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 13030 | /* 33953 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13031 | /* 33957 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13032 | /* 33962 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13033 | /* 33965 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 13034 | /* 33969 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 13035 | /* 33972 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 13036 | /* 33977 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 13037 | /* 33982 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 13038 | /* 33987 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC64rr), |
| 13039 | /* 33990 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13040 | /* 33992 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13041 | /* 33994 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13042 | /* 33997 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13043 | /* 34000 */ GIR_RootConstrainSelectedInstOperands, |
| 13044 | /* 34001 */ // GIR_Coverage, 26132, |
| 13045 | /* 34001 */ GIR_EraseRootFromParent_Done, |
| 13046 | /* 34002 */ // Label 884: @34002 |
| 13047 | /* 34002 */ GIM_Try, /*On fail goto*//*Label 885*/ GIMT_Encode4(34056), // Rule ID 17347 // |
| 13048 | /* 34007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTBM), |
| 13049 | /* 34010 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13050 | /* 34013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13051 | /* 34017 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13052 | /* 34021 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13053 | /* 34025 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 13054 | /* 34029 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 13055 | /* 34033 */ // MIs[1] src |
| 13056 | /* 34033 */ GIM_CheckIsSameOperand, /*MI*/1, /*OpIdx*/1, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 13057 | /* 34038 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 13058 | /* 34042 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13059 | /* 34044 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src, (add:{ *:[i64] } GR64:{ *:[i64] }:$src, 1:{ *:[i64] })) => (BLCMSK64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src) |
| 13060 | /* 34044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BLCMSK64rr), |
| 13061 | /* 34047 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13062 | /* 34049 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 13063 | /* 34051 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13064 | /* 34054 */ GIR_RootConstrainSelectedInstOperands, |
| 13065 | /* 34055 */ // GIR_Coverage, 17347, |
| 13066 | /* 34055 */ GIR_EraseRootFromParent_Done, |
| 13067 | /* 34056 */ // Label 885: @34056 |
| 13068 | /* 34056 */ GIM_Try, /*On fail goto*//*Label 886*/ GIMT_Encode4(34165), // Rule ID 22870 // |
| 13069 | /* 34061 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13070 | /* 34064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13071 | /* 34068 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13072 | /* 34072 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13073 | /* 34076 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 13074 | /* 34080 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 13075 | /* 34084 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 13076 | /* 34088 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 1, |
| 13077 | /* 34092 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 13078 | /* 34097 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13079 | /* 34099 */ // (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] })) |
| 13080 | /* 34099 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 13081 | /* 34102 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13082 | /* 34106 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13083 | /* 34111 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 13084 | /* 34113 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 13085 | /* 34116 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13086 | /* 34120 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13087 | /* 34125 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13088 | /* 34128 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 13089 | /* 34132 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 13090 | /* 34135 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 13091 | /* 34140 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 13092 | /* 34145 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 13093 | /* 34150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BTC64rr), |
| 13094 | /* 34153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13095 | /* 34155 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13096 | /* 34157 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13097 | /* 34160 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13098 | /* 34163 */ GIR_RootConstrainSelectedInstOperands, |
| 13099 | /* 34164 */ // GIR_Coverage, 22870, |
| 13100 | /* 34164 */ GIR_EraseRootFromParent_Done, |
| 13101 | /* 34165 */ // Label 886: @34165 |
| 13102 | /* 34165 */ GIM_Try, /*On fail goto*//*Label 887*/ GIMT_Encode4(34197), // Rule ID 246 // |
| 13103 | /* 34170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13104 | /* 34173 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13105 | /* 34176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13106 | /* 34180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13107 | /* 34184 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 13108 | /* 34188 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }) => (NOT64r:{ *:[i64] } GR64:{ *:[i64] }:$src1) |
| 13109 | /* 34188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64r), |
| 13110 | /* 34191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13111 | /* 34193 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13112 | /* 34195 */ GIR_RootConstrainSelectedInstOperands, |
| 13113 | /* 34196 */ // GIR_Coverage, 246, |
| 13114 | /* 34196 */ GIR_EraseRootFromParent_Done, |
| 13115 | /* 34197 */ // Label 887: @34197 |
| 13116 | /* 34197 */ GIM_Try, /*On fail goto*//*Label 888*/ GIMT_Encode4(34229), // Rule ID 254 // |
| 13117 | /* 34202 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 13118 | /* 34205 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13119 | /* 34208 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13120 | /* 34212 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13121 | /* 34216 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 13122 | /* 34220 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, -1:{ *:[i64] }) => (NOT64r_ND:{ *:[i64] } GR64:{ *:[i64] }:$src1) |
| 13123 | /* 34220 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64r_ND), |
| 13124 | /* 34223 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13125 | /* 34225 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13126 | /* 34227 */ GIR_RootConstrainSelectedInstOperands, |
| 13127 | /* 34228 */ // GIR_Coverage, 254, |
| 13128 | /* 34228 */ GIR_EraseRootFromParent_Done, |
| 13129 | /* 34229 */ // Label 888: @34229 |
| 13130 | /* 34229 */ GIM_Try, /*On fail goto*//*Label 889*/ GIMT_Encode4(34277), // Rule ID 22929 // |
| 13131 | /* 34234 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13132 | /* 34237 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13133 | /* 34240 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13134 | /* 34244 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13135 | /* 34248 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13136 | /* 34252 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13137 | /* 34256 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 13138 | /* 34260 */ // MIs[1] Operand 1 |
| 13139 | /* 34260 */ // No operand predicates |
| 13140 | /* 34260 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13141 | /* 34262 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (XOR64ri32:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 13142 | /* 34262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64ri32), |
| 13143 | /* 34265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13144 | /* 34267 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13145 | /* 34269 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 13146 | /* 34272 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13147 | /* 34275 */ GIR_RootConstrainSelectedInstOperands, |
| 13148 | /* 34276 */ // GIR_Coverage, 22929, |
| 13149 | /* 34276 */ GIR_EraseRootFromParent_Done, |
| 13150 | /* 34277 */ // Label 889: @34277 |
| 13151 | /* 34277 */ GIM_Try, /*On fail goto*//*Label 890*/ GIMT_Encode4(34325), // Rule ID 23019 // |
| 13152 | /* 34282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13153 | /* 34285 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13154 | /* 34288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13155 | /* 34292 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13156 | /* 34296 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13157 | /* 34300 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13158 | /* 34304 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 13159 | /* 34308 */ // MIs[1] Operand 1 |
| 13160 | /* 34308 */ // No operand predicates |
| 13161 | /* 34308 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13162 | /* 34310 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) => (XOR64ri32_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src2) |
| 13163 | /* 34310 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64ri32_ND), |
| 13164 | /* 34313 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13165 | /* 34315 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13166 | /* 34317 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 13167 | /* 34320 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 13168 | /* 34323 */ GIR_RootConstrainSelectedInstOperands, |
| 13169 | /* 34324 */ // GIR_Coverage, 23019, |
| 13170 | /* 34324 */ GIR_EraseRootFromParent_Done, |
| 13171 | /* 34325 */ // Label 890: @34325 |
| 13172 | /* 34325 */ GIM_Try, /*On fail goto*//*Label 891*/ GIMT_Encode4(34361), // Rule ID 22921 // |
| 13173 | /* 34330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 13174 | /* 34333 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13175 | /* 34336 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13176 | /* 34340 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13177 | /* 34344 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13178 | /* 34348 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (XOR64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 13179 | /* 34348 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR64rr), |
| 13180 | /* 34353 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 13181 | /* 34359 */ GIR_RootConstrainSelectedInstOperands, |
| 13182 | /* 34360 */ // GIR_Coverage, 22921, |
| 13183 | /* 34360 */ GIR_Done, |
| 13184 | /* 34361 */ // Label 891: @34361 |
| 13185 | /* 34361 */ GIM_Try, /*On fail goto*//*Label 892*/ GIMT_Encode4(34397), // Rule ID 23011 // |
| 13186 | /* 34366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 13187 | /* 34369 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 13188 | /* 34372 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13189 | /* 34376 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13190 | /* 34380 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 13191 | /* 34384 */ // (xor:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (XOR64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 13192 | /* 34384 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::XOR64rr_ND), |
| 13193 | /* 34389 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 13194 | /* 34395 */ GIR_RootConstrainSelectedInstOperands, |
| 13195 | /* 34396 */ // GIR_Coverage, 23011, |
| 13196 | /* 34396 */ GIR_Done, |
| 13197 | /* 34397 */ // Label 892: @34397 |
| 13198 | /* 34397 */ GIM_Reject, |
| 13199 | /* 34398 */ // Label 880: @34398 |
| 13200 | /* 34398 */ GIM_Reject, |
| 13201 | /* 34399 */ // Label 819: @34399 |
| 13202 | /* 34399 */ GIM_Try, /*On fail goto*//*Label 893*/ GIMT_Encode4(34940), |
| 13203 | /* 34404 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 13204 | /* 34407 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s1, |
| 13205 | /* 34410 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13206 | /* 34414 */ GIM_Try, /*On fail goto*//*Label 894*/ GIMT_Encode4(34534), // Rule ID 25456 // |
| 13207 | /* 34419 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13208 | /* 34423 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 13209 | /* 34427 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 13210 | /* 34431 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 13211 | /* 34435 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13212 | /* 34440 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 13213 | /* 34444 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13214 | /* 34450 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 13215 | /* 34452 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13216 | /* 34456 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 13217 | /* 34458 */ // (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] }) |
| 13218 | /* 34458 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13219 | /* 34461 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13220 | /* 34465 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13221 | /* 34470 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 13222 | /* 34474 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13223 | /* 34479 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13224 | /* 34482 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13225 | /* 34486 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13226 | /* 34491 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 13227 | /* 34495 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13228 | /* 34500 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13229 | /* 34503 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 13230 | /* 34507 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13231 | /* 34512 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13232 | /* 34515 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13233 | /* 34518 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13234 | /* 34520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13235 | /* 34523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13236 | /* 34525 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13237 | /* 34528 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 13238 | /* 34533 */ // GIR_Coverage, 25456, |
| 13239 | /* 34533 */ GIR_EraseRootFromParent_Done, |
| 13240 | /* 34534 */ // Label 894: @34534 |
| 13241 | /* 34534 */ GIM_Try, /*On fail goto*//*Label 895*/ GIMT_Encode4(34655), // Rule ID 19495 // |
| 13242 | /* 34539 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13243 | /* 34543 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 13244 | /* 34547 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 13245 | /* 34551 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 13246 | /* 34555 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13247 | /* 34560 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13248 | /* 34565 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 13249 | /* 34569 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13250 | /* 34575 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 13251 | /* 34577 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 13252 | /* 34579 */ // (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] }) |
| 13253 | /* 34579 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13254 | /* 34582 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13255 | /* 34586 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13256 | /* 34591 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 13257 | /* 34595 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13258 | /* 34600 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13259 | /* 34603 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13260 | /* 34607 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13261 | /* 34612 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 13262 | /* 34616 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13263 | /* 34621 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13264 | /* 34624 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 13265 | /* 34628 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13266 | /* 34633 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13267 | /* 34636 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13268 | /* 34639 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13269 | /* 34641 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13270 | /* 34644 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13271 | /* 34646 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13272 | /* 34649 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 13273 | /* 34654 */ // GIR_Coverage, 19495, |
| 13274 | /* 34654 */ GIR_EraseRootFromParent_Done, |
| 13275 | /* 34655 */ // Label 895: @34655 |
| 13276 | /* 34655 */ GIM_Try, /*On fail goto*//*Label 896*/ GIMT_Encode4(34775), // Rule ID 25457 // |
| 13277 | /* 34660 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13278 | /* 34664 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13279 | /* 34668 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 13280 | /* 34672 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s1, |
| 13281 | /* 34676 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s1, |
| 13282 | /* 34680 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13283 | /* 34685 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 13284 | /* 34689 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13285 | /* 34695 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 13286 | /* 34697 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 13287 | /* 34699 */ // (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] }) |
| 13288 | /* 34699 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13289 | /* 34702 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13290 | /* 34706 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13291 | /* 34711 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 13292 | /* 34715 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13293 | /* 34720 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13294 | /* 34723 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13295 | /* 34727 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13296 | /* 34732 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 13297 | /* 34736 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13298 | /* 34741 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13299 | /* 34744 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 13300 | /* 34748 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13301 | /* 34753 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13302 | /* 34756 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13303 | /* 34759 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13304 | /* 34761 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13305 | /* 34764 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13306 | /* 34766 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13307 | /* 34769 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 13308 | /* 34774 */ // GIR_Coverage, 25457, |
| 13309 | /* 34774 */ GIR_EraseRootFromParent_Done, |
| 13310 | /* 34775 */ // Label 896: @34775 |
| 13311 | /* 34775 */ GIM_Try, /*On fail goto*//*Label 897*/ GIMT_Encode4(34850), // Rule ID 19479 // |
| 13312 | /* 34780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13313 | /* 34784 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13314 | /* 34788 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13315 | /* 34794 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 13316 | /* 34796 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13317 | /* 34798 */ // (xor:{ *:[v2i1] } VK2:{ *:[v2i1] }:$src, immAllOnesV:{ *:[v2i1] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK2:{ *:[v2i1] }:$src, VK16:{ *:[i32] })), VK2:{ *:[i32] }) |
| 13318 | /* 34798 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13319 | /* 34801 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13320 | /* 34805 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13321 | /* 34810 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13322 | /* 34814 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13323 | /* 34819 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13324 | /* 34822 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 13325 | /* 34826 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13326 | /* 34831 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13327 | /* 34834 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13328 | /* 34836 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13329 | /* 34839 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13330 | /* 34841 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13331 | /* 34844 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 13332 | /* 34849 */ // GIR_Coverage, 19479, |
| 13333 | /* 34849 */ GIR_EraseRootFromParent_Done, |
| 13334 | /* 34850 */ // Label 897: @34850 |
| 13335 | /* 34850 */ GIM_Try, /*On fail goto*//*Label 898*/ GIMT_Encode4(34939), // Rule ID 19499 // |
| 13336 | /* 34855 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13337 | /* 34859 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 13338 | /* 34863 */ // (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] }) |
| 13339 | /* 34863 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13340 | /* 34866 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13341 | /* 34870 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13342 | /* 34875 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 13343 | /* 34879 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13344 | /* 34884 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13345 | /* 34887 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13346 | /* 34891 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13347 | /* 34896 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 13348 | /* 34900 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13349 | /* 34905 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13350 | /* 34908 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 13351 | /* 34912 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13352 | /* 34917 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13353 | /* 34920 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13354 | /* 34923 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13355 | /* 34925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13356 | /* 34928 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13357 | /* 34930 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13358 | /* 34933 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 13359 | /* 34938 */ // GIR_Coverage, 19499, |
| 13360 | /* 34938 */ GIR_EraseRootFromParent_Done, |
| 13361 | /* 34939 */ // Label 898: @34939 |
| 13362 | /* 34939 */ GIM_Reject, |
| 13363 | /* 34940 */ // Label 893: @34940 |
| 13364 | /* 34940 */ GIM_Reject, |
| 13365 | /* 34941 */ // Label 820: @34941 |
| 13366 | /* 34941 */ GIM_Try, /*On fail goto*//*Label 899*/ GIMT_Encode4(35560), |
| 13367 | /* 34946 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 13368 | /* 34949 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 13369 | /* 34952 */ GIM_Try, /*On fail goto*//*Label 900*/ GIMT_Encode4(35014), // Rule ID 23448 // |
| 13370 | /* 34957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 13371 | /* 34960 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13372 | /* 34964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13373 | /* 34968 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13374 | /* 34972 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13375 | /* 34975 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13376 | /* 34979 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13377 | /* 34983 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13378 | /* 34987 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13379 | /* 34989 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13380 | /* 34996 */ // (xor:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src1) => (VPXORrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13381 | /* 34996 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 13382 | /* 34999 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13383 | /* 35001 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13384 | /* 35003 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13385 | /* 35007 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13386 | /* 35012 */ GIR_RootConstrainSelectedInstOperands, |
| 13387 | /* 35013 */ // GIR_Coverage, 23448, |
| 13388 | /* 35013 */ GIR_EraseRootFromParent_Done, |
| 13389 | /* 35014 */ // Label 900: @35014 |
| 13390 | /* 35014 */ GIM_Try, /*On fail goto*//*Label 901*/ GIMT_Encode4(35076), // Rule ID 24303 // |
| 13391 | /* 35019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 13392 | /* 35022 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13393 | /* 35026 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13394 | /* 35030 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13395 | /* 35034 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13396 | /* 35037 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13397 | /* 35041 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13398 | /* 35045 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13399 | /* 35049 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13400 | /* 35051 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13401 | /* 35058 */ // (xor:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPXORQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13402 | /* 35058 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 13403 | /* 35061 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13404 | /* 35063 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13405 | /* 35065 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13406 | /* 35069 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13407 | /* 35074 */ GIR_RootConstrainSelectedInstOperands, |
| 13408 | /* 35075 */ // GIR_Coverage, 24303, |
| 13409 | /* 35075 */ GIR_EraseRootFromParent_Done, |
| 13410 | /* 35076 */ // Label 901: @35076 |
| 13411 | /* 35076 */ GIM_Try, /*On fail goto*//*Label 902*/ GIMT_Encode4(35138), // Rule ID 2123 // |
| 13412 | /* 35081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 13413 | /* 35084 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13414 | /* 35088 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13415 | /* 35092 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13416 | /* 35096 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13417 | /* 35100 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13418 | /* 35103 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13419 | /* 35107 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13420 | /* 35111 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13421 | /* 35113 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13422 | /* 35120 */ // (xor:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13423 | /* 35120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 13424 | /* 35123 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13425 | /* 35125 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13426 | /* 35127 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13427 | /* 35131 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13428 | /* 35136 */ GIR_RootConstrainSelectedInstOperands, |
| 13429 | /* 35137 */ // GIR_Coverage, 2123, |
| 13430 | /* 35137 */ GIR_EraseRootFromParent_Done, |
| 13431 | /* 35138 */ // Label 902: @35138 |
| 13432 | /* 35138 */ GIM_Try, /*On fail goto*//*Label 903*/ GIMT_Encode4(35200), // Rule ID 5819 // |
| 13433 | /* 35143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 13434 | /* 35146 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13435 | /* 35150 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13436 | /* 35154 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13437 | /* 35158 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13438 | /* 35162 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13439 | /* 35165 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13440 | /* 35169 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13441 | /* 35173 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13442 | /* 35175 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13443 | /* 35182 */ // (xor:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13444 | /* 35182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 13445 | /* 35185 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13446 | /* 35187 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13447 | /* 35189 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13448 | /* 35193 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13449 | /* 35198 */ GIR_RootConstrainSelectedInstOperands, |
| 13450 | /* 35199 */ // GIR_Coverage, 5819, |
| 13451 | /* 35199 */ GIR_EraseRootFromParent_Done, |
| 13452 | /* 35200 */ // Label 903: @35200 |
| 13453 | /* 35200 */ GIM_Try, /*On fail goto*//*Label 904*/ GIMT_Encode4(35432), // Rule ID 21957 // |
| 13454 | /* 35205 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 13455 | /* 35208 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 13456 | /* 35212 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13457 | /* 35216 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13458 | /* 35220 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13459 | /* 35226 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 13460 | /* 35228 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13461 | /* 35230 */ // (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] }) |
| 13462 | /* 35230 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 13463 | /* 35233 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13464 | /* 35237 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13465 | /* 35242 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 13466 | /* 35244 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 13467 | /* 35247 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13468 | /* 35251 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13469 | /* 35256 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 13470 | /* 35259 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13471 | /* 35263 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 13472 | /* 35266 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 13473 | /* 35271 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 13474 | /* 35276 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 13475 | /* 35281 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 13476 | /* 35284 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13477 | /* 35288 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13478 | /* 35293 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 13479 | /* 35295 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 13480 | /* 35298 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13481 | /* 35302 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13482 | /* 35307 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 13483 | /* 35310 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13484 | /* 35314 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 13485 | /* 35317 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 13486 | /* 35322 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 13487 | /* 35327 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 13488 | /* 35332 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 13489 | /* 35335 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13490 | /* 35339 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13491 | /* 35344 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 13492 | /* 35346 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 13493 | /* 35349 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13494 | /* 35353 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13495 | /* 35358 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 13496 | /* 35361 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13497 | /* 35365 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 13498 | /* 35368 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 13499 | /* 35373 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 13500 | /* 35378 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 13501 | /* 35383 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 13502 | /* 35386 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 13503 | /* 35390 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13504 | /* 35395 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13505 | /* 35398 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 13506 | /* 35401 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 13507 | /* 35404 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 13508 | /* 35407 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13509 | /* 35409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13510 | /* 35412 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13511 | /* 35414 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 13512 | /* 35421 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 13513 | /* 35426 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 13514 | /* 35431 */ // GIR_Coverage, 21957, |
| 13515 | /* 35431 */ GIR_EraseRootFromParent_Done, |
| 13516 | /* 35432 */ // Label 904: @35432 |
| 13517 | /* 35432 */ GIM_Try, /*On fail goto*//*Label 905*/ GIMT_Encode4(35478), // Rule ID 21965 // |
| 13518 | /* 35437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 13519 | /* 35440 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13520 | /* 35444 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13521 | /* 35448 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13522 | /* 35452 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13523 | /* 35458 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 13524 | /* 35460 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13525 | /* 35462 */ // (xor:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, immAllOnesV:{ *:[v2i64] }) => (VPTERNLOGQZ128rri:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, VR128X:{ *:[v2i64] }:$src, VR128X:{ *:[v2i64] }:$src, 15:{ *:[i8] }) |
| 13526 | /* 35462 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ128rri), |
| 13527 | /* 35465 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13528 | /* 35467 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 13529 | /* 35469 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 13530 | /* 35471 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 13531 | /* 35473 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 13532 | /* 35476 */ GIR_RootConstrainSelectedInstOperands, |
| 13533 | /* 35477 */ // GIR_Coverage, 21965, |
| 13534 | /* 35477 */ GIR_EraseRootFromParent_Done, |
| 13535 | /* 35478 */ // Label 905: @35478 |
| 13536 | /* 35478 */ GIM_Try, /*On fail goto*//*Label 906*/ GIMT_Encode4(35505), // Rule ID 2122 // |
| 13537 | /* 35483 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 13538 | /* 35486 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13539 | /* 35490 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13540 | /* 35494 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13541 | /* 35498 */ // (xor:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPXORrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 13542 | /* 35498 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORrr), |
| 13543 | /* 35503 */ GIR_RootConstrainSelectedInstOperands, |
| 13544 | /* 35504 */ // GIR_Coverage, 2122, |
| 13545 | /* 35504 */ GIR_Done, |
| 13546 | /* 35505 */ // Label 906: @35505 |
| 13547 | /* 35505 */ GIM_Try, /*On fail goto*//*Label 907*/ GIMT_Encode4(35532), // Rule ID 2124 // |
| 13548 | /* 35510 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 13549 | /* 35513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13550 | /* 35517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13551 | /* 35521 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13552 | /* 35525 */ // (xor:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (PXORrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 13553 | /* 35525 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PXORrr), |
| 13554 | /* 35530 */ GIR_RootConstrainSelectedInstOperands, |
| 13555 | /* 35531 */ // GIR_Coverage, 2124, |
| 13556 | /* 35531 */ GIR_Done, |
| 13557 | /* 35532 */ // Label 907: @35532 |
| 13558 | /* 35532 */ GIM_Try, /*On fail goto*//*Label 908*/ GIMT_Encode4(35559), // Rule ID 5816 // |
| 13559 | /* 35537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 13560 | /* 35540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13561 | /* 35544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13562 | /* 35548 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13563 | /* 35552 */ // (xor:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPXORQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 13564 | /* 35552 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rr), |
| 13565 | /* 35557 */ GIR_RootConstrainSelectedInstOperands, |
| 13566 | /* 35558 */ // GIR_Coverage, 5816, |
| 13567 | /* 35558 */ GIR_Done, |
| 13568 | /* 35559 */ // Label 908: @35559 |
| 13569 | /* 35559 */ GIM_Reject, |
| 13570 | /* 35560 */ // Label 899: @35560 |
| 13571 | /* 35560 */ GIM_Reject, |
| 13572 | /* 35561 */ // Label 821: @35561 |
| 13573 | /* 35561 */ GIM_Try, /*On fail goto*//*Label 909*/ GIMT_Encode4(36102), |
| 13574 | /* 35566 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 13575 | /* 35569 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 13576 | /* 35572 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13577 | /* 35576 */ GIM_Try, /*On fail goto*//*Label 910*/ GIMT_Encode4(35696), // Rule ID 25458 // |
| 13578 | /* 35581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13579 | /* 35585 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 13580 | /* 35589 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 13581 | /* 35593 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 13582 | /* 35597 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13583 | /* 35602 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 13584 | /* 35606 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13585 | /* 35612 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 13586 | /* 35614 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13587 | /* 35618 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 13588 | /* 35620 */ // (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] }) |
| 13589 | /* 35620 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13590 | /* 35623 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13591 | /* 35627 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13592 | /* 35632 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 13593 | /* 35636 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13594 | /* 35641 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13595 | /* 35644 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13596 | /* 35648 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13597 | /* 35653 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 13598 | /* 35657 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13599 | /* 35662 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13600 | /* 35665 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 13601 | /* 35669 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13602 | /* 35674 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13603 | /* 35677 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13604 | /* 35680 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13605 | /* 35682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13606 | /* 35685 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13607 | /* 35687 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13608 | /* 35690 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 13609 | /* 35695 */ // GIR_Coverage, 25458, |
| 13610 | /* 35695 */ GIR_EraseRootFromParent_Done, |
| 13611 | /* 35696 */ // Label 910: @35696 |
| 13612 | /* 35696 */ GIM_Try, /*On fail goto*//*Label 911*/ GIMT_Encode4(35817), // Rule ID 19496 // |
| 13613 | /* 35701 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13614 | /* 35705 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 13615 | /* 35709 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 13616 | /* 35713 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 13617 | /* 35717 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13618 | /* 35722 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13619 | /* 35727 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 13620 | /* 35731 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13621 | /* 35737 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 13622 | /* 35739 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 13623 | /* 35741 */ // (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] }) |
| 13624 | /* 35741 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13625 | /* 35744 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13626 | /* 35748 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13627 | /* 35753 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 13628 | /* 35757 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13629 | /* 35762 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13630 | /* 35765 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13631 | /* 35769 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13632 | /* 35774 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 13633 | /* 35778 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13634 | /* 35783 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13635 | /* 35786 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 13636 | /* 35790 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13637 | /* 35795 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13638 | /* 35798 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13639 | /* 35801 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13640 | /* 35803 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13641 | /* 35806 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13642 | /* 35808 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13643 | /* 35811 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 13644 | /* 35816 */ // GIR_Coverage, 19496, |
| 13645 | /* 35816 */ GIR_EraseRootFromParent_Done, |
| 13646 | /* 35817 */ // Label 911: @35817 |
| 13647 | /* 35817 */ GIM_Try, /*On fail goto*//*Label 912*/ GIMT_Encode4(35937), // Rule ID 25459 // |
| 13648 | /* 35822 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13649 | /* 35826 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13650 | /* 35830 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 13651 | /* 35834 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s1, |
| 13652 | /* 35838 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s1, |
| 13653 | /* 35842 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13654 | /* 35847 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 13655 | /* 35851 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13656 | /* 35857 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 13657 | /* 35859 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 13658 | /* 35861 */ // (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] }) |
| 13659 | /* 35861 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13660 | /* 35864 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13661 | /* 35868 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13662 | /* 35873 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 13663 | /* 35877 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13664 | /* 35882 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13665 | /* 35885 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13666 | /* 35889 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13667 | /* 35894 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 13668 | /* 35898 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13669 | /* 35903 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13670 | /* 35906 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 13671 | /* 35910 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13672 | /* 35915 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13673 | /* 35918 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13674 | /* 35921 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13675 | /* 35923 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13676 | /* 35926 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13677 | /* 35928 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13678 | /* 35931 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 13679 | /* 35936 */ // GIR_Coverage, 25459, |
| 13680 | /* 35936 */ GIR_EraseRootFromParent_Done, |
| 13681 | /* 35937 */ // Label 912: @35937 |
| 13682 | /* 35937 */ GIM_Try, /*On fail goto*//*Label 913*/ GIMT_Encode4(36012), // Rule ID 19478 // |
| 13683 | /* 35942 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13684 | /* 35946 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13685 | /* 35950 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13686 | /* 35956 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 13687 | /* 35958 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13688 | /* 35960 */ // (xor:{ *:[v4i1] } VK4:{ *:[v4i1] }:$src, immAllOnesV:{ *:[v4i1] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK4:{ *:[v4i1] }:$src, VK16:{ *:[i32] })), VK4:{ *:[i32] }) |
| 13689 | /* 35960 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13690 | /* 35963 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13691 | /* 35967 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13692 | /* 35972 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13693 | /* 35976 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13694 | /* 35981 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13695 | /* 35984 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 13696 | /* 35988 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13697 | /* 35993 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13698 | /* 35996 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13699 | /* 35998 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13700 | /* 36001 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13701 | /* 36003 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13702 | /* 36006 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 13703 | /* 36011 */ // GIR_Coverage, 19478, |
| 13704 | /* 36011 */ GIR_EraseRootFromParent_Done, |
| 13705 | /* 36012 */ // Label 913: @36012 |
| 13706 | /* 36012 */ GIM_Try, /*On fail goto*//*Label 914*/ GIMT_Encode4(36101), // Rule ID 19500 // |
| 13707 | /* 36017 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13708 | /* 36021 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 13709 | /* 36025 */ // (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] }) |
| 13710 | /* 36025 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 13711 | /* 36028 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13712 | /* 36032 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13713 | /* 36037 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 13714 | /* 36041 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13715 | /* 36046 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 13716 | /* 36049 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13717 | /* 36053 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13718 | /* 36058 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 13719 | /* 36062 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 13720 | /* 36067 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 13721 | /* 36070 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 13722 | /* 36074 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13723 | /* 36079 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13724 | /* 36082 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 13725 | /* 36085 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13726 | /* 36087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13727 | /* 36090 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13728 | /* 36092 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 13729 | /* 36095 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 13730 | /* 36100 */ // GIR_Coverage, 19500, |
| 13731 | /* 36100 */ GIR_EraseRootFromParent_Done, |
| 13732 | /* 36101 */ // Label 914: @36101 |
| 13733 | /* 36101 */ GIM_Reject, |
| 13734 | /* 36102 */ // Label 909: @36102 |
| 13735 | /* 36102 */ GIM_Reject, |
| 13736 | /* 36103 */ // Label 822: @36103 |
| 13737 | /* 36103 */ GIM_Try, /*On fail goto*//*Label 915*/ GIMT_Encode4(36722), |
| 13738 | /* 36108 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 13739 | /* 36111 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13740 | /* 36114 */ GIM_Try, /*On fail goto*//*Label 916*/ GIMT_Encode4(36176), // Rule ID 24321 // |
| 13741 | /* 36119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 13742 | /* 36122 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13743 | /* 36126 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13744 | /* 36130 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13745 | /* 36134 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13746 | /* 36137 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13747 | /* 36141 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13748 | /* 36145 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13749 | /* 36149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13750 | /* 36151 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13751 | /* 36158 */ // (xor:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPXORDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13752 | /* 36158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZ128rm), |
| 13753 | /* 36161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13754 | /* 36163 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13755 | /* 36165 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13756 | /* 36169 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13757 | /* 36174 */ GIR_RootConstrainSelectedInstOperands, |
| 13758 | /* 36175 */ // GIR_Coverage, 24321, |
| 13759 | /* 36175 */ GIR_EraseRootFromParent_Done, |
| 13760 | /* 36176 */ // Label 916: @36176 |
| 13761 | /* 36176 */ GIM_Try, /*On fail goto*//*Label 917*/ GIMT_Encode4(36238), // Rule ID 25341 // |
| 13762 | /* 36181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 13763 | /* 36184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13764 | /* 36188 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13765 | /* 36192 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13766 | /* 36196 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13767 | /* 36199 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13768 | /* 36203 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13769 | /* 36207 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13770 | /* 36211 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13771 | /* 36213 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13772 | /* 36220 */ // (xor:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPXORrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13773 | /* 36220 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 13774 | /* 36223 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13775 | /* 36225 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13776 | /* 36227 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13777 | /* 36231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13778 | /* 36236 */ GIR_RootConstrainSelectedInstOperands, |
| 13779 | /* 36237 */ // GIR_Coverage, 25341, |
| 13780 | /* 36237 */ GIR_EraseRootFromParent_Done, |
| 13781 | /* 36238 */ // Label 917: @36238 |
| 13782 | /* 36238 */ GIM_Try, /*On fail goto*//*Label 918*/ GIMT_Encode4(36300), // Rule ID 5846 // |
| 13783 | /* 36243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 13784 | /* 36246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13785 | /* 36250 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13786 | /* 36254 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13787 | /* 36258 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13788 | /* 36262 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13789 | /* 36265 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13790 | /* 36269 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13791 | /* 36273 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13792 | /* 36275 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13793 | /* 36282 */ // (xor:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13794 | /* 36282 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZ128rm), |
| 13795 | /* 36285 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13796 | /* 36287 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13797 | /* 36289 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13798 | /* 36293 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13799 | /* 36298 */ GIR_RootConstrainSelectedInstOperands, |
| 13800 | /* 36299 */ // GIR_Coverage, 5846, |
| 13801 | /* 36299 */ GIR_EraseRootFromParent_Done, |
| 13802 | /* 36300 */ // Label 918: @36300 |
| 13803 | /* 36300 */ GIM_Try, /*On fail goto*//*Label 919*/ GIMT_Encode4(36362), // Rule ID 18156 // |
| 13804 | /* 36305 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 13805 | /* 36308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13806 | /* 36312 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13807 | /* 36316 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13808 | /* 36320 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13809 | /* 36324 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13810 | /* 36327 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13811 | /* 36331 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13812 | /* 36335 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13813 | /* 36337 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13814 | /* 36344 */ // (xor:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13815 | /* 36344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 13816 | /* 36347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13817 | /* 36349 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 13818 | /* 36351 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13819 | /* 36355 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13820 | /* 36360 */ GIR_RootConstrainSelectedInstOperands, |
| 13821 | /* 36361 */ // GIR_Coverage, 18156, |
| 13822 | /* 36361 */ GIR_EraseRootFromParent_Done, |
| 13823 | /* 36362 */ // Label 919: @36362 |
| 13824 | /* 36362 */ GIM_Try, /*On fail goto*//*Label 920*/ GIMT_Encode4(36594), // Rule ID 21956 // |
| 13825 | /* 36367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 13826 | /* 36370 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 13827 | /* 36374 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13828 | /* 36378 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13829 | /* 36382 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13830 | /* 36388 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 13831 | /* 36390 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13832 | /* 36392 */ // (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] }) |
| 13833 | /* 36392 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 13834 | /* 36395 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13835 | /* 36399 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13836 | /* 36404 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 13837 | /* 36406 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 13838 | /* 36409 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13839 | /* 36413 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13840 | /* 36418 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 13841 | /* 36421 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13842 | /* 36425 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 13843 | /* 36428 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 13844 | /* 36433 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 13845 | /* 36438 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 13846 | /* 36443 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 13847 | /* 36446 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13848 | /* 36450 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13849 | /* 36455 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 13850 | /* 36457 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 13851 | /* 36460 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13852 | /* 36464 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13853 | /* 36469 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 13854 | /* 36472 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13855 | /* 36476 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 13856 | /* 36479 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 13857 | /* 36484 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 13858 | /* 36489 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 13859 | /* 36494 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 13860 | /* 36497 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 13861 | /* 36501 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13862 | /* 36506 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 13863 | /* 36508 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 13864 | /* 36511 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 13865 | /* 36515 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13866 | /* 36520 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 13867 | /* 36523 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 13868 | /* 36527 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 13869 | /* 36530 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 13870 | /* 36535 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 13871 | /* 36540 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 13872 | /* 36545 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 13873 | /* 36548 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 13874 | /* 36552 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 13875 | /* 36557 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 13876 | /* 36560 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 13877 | /* 36563 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 13878 | /* 36566 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 13879 | /* 36569 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 13880 | /* 36571 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 13881 | /* 36574 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13882 | /* 36576 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 13883 | /* 36583 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 13884 | /* 36588 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 13885 | /* 36593 */ // GIR_Coverage, 21956, |
| 13886 | /* 36593 */ GIR_EraseRootFromParent_Done, |
| 13887 | /* 36594 */ // Label 920: @36594 |
| 13888 | /* 36594 */ GIM_Try, /*On fail goto*//*Label 921*/ GIMT_Encode4(36640), // Rule ID 21964 // |
| 13889 | /* 36599 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 13890 | /* 36602 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13891 | /* 36606 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13892 | /* 36610 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 13893 | /* 36614 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 13894 | /* 36620 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 13895 | /* 36622 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13896 | /* 36624 */ // (xor:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, immAllOnesV:{ *:[v4i32] }) => (VPTERNLOGQZ128rri:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, VR128X:{ *:[v4i32] }:$src, VR128X:{ *:[v4i32] }:$src, 15:{ *:[i8] }) |
| 13897 | /* 36624 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ128rri), |
| 13898 | /* 36627 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13899 | /* 36629 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 13900 | /* 36631 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 13901 | /* 36633 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 13902 | /* 36635 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 13903 | /* 36638 */ GIR_RootConstrainSelectedInstOperands, |
| 13904 | /* 36639 */ // GIR_Coverage, 21964, |
| 13905 | /* 36639 */ GIR_EraseRootFromParent_Done, |
| 13906 | /* 36640 */ // Label 921: @36640 |
| 13907 | /* 36640 */ GIM_Try, /*On fail goto*//*Label 922*/ GIMT_Encode4(36667), // Rule ID 5843 // |
| 13908 | /* 36645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 13909 | /* 36648 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13910 | /* 36652 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13911 | /* 36656 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 13912 | /* 36660 */ // (xor:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPXORDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 13913 | /* 36660 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORDZ128rr), |
| 13914 | /* 36665 */ GIR_RootConstrainSelectedInstOperands, |
| 13915 | /* 36666 */ // GIR_Coverage, 5843, |
| 13916 | /* 36666 */ GIR_Done, |
| 13917 | /* 36667 */ // Label 922: @36667 |
| 13918 | /* 36667 */ GIM_Try, /*On fail goto*//*Label 923*/ GIMT_Encode4(36694), // Rule ID 18144 // |
| 13919 | /* 36672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 13920 | /* 36675 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13921 | /* 36679 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13922 | /* 36683 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13923 | /* 36687 */ // (xor:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPXORrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 13924 | /* 36687 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORrr), |
| 13925 | /* 36692 */ GIR_RootConstrainSelectedInstOperands, |
| 13926 | /* 36693 */ // GIR_Coverage, 18144, |
| 13927 | /* 36693 */ GIR_Done, |
| 13928 | /* 36694 */ // Label 923: @36694 |
| 13929 | /* 36694 */ GIM_Try, /*On fail goto*//*Label 924*/ GIMT_Encode4(36721), // Rule ID 18168 // |
| 13930 | /* 36699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 13931 | /* 36702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13932 | /* 36706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13933 | /* 36710 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 13934 | /* 36714 */ // (xor:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PXORrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 13935 | /* 36714 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PXORrr), |
| 13936 | /* 36719 */ GIR_RootConstrainSelectedInstOperands, |
| 13937 | /* 36720 */ // GIR_Coverage, 18168, |
| 13938 | /* 36720 */ GIR_Done, |
| 13939 | /* 36721 */ // Label 924: @36721 |
| 13940 | /* 36721 */ GIM_Reject, |
| 13941 | /* 36722 */ // Label 915: @36722 |
| 13942 | /* 36722 */ GIM_Reject, |
| 13943 | /* 36723 */ // Label 823: @36723 |
| 13944 | /* 36723 */ GIM_Try, /*On fail goto*//*Label 925*/ GIMT_Encode4(37466), |
| 13945 | /* 36728 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 13946 | /* 36731 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 13947 | /* 36734 */ GIM_Try, /*On fail goto*//*Label 926*/ GIMT_Encode4(36796), // Rule ID 23450 // |
| 13948 | /* 36739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 13949 | /* 36742 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 13950 | /* 36746 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13951 | /* 36750 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13952 | /* 36754 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13953 | /* 36757 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13954 | /* 36761 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13955 | /* 36765 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 13956 | /* 36769 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13957 | /* 36771 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13958 | /* 36778 */ // (xor:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VPXORYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13959 | /* 36778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 13960 | /* 36781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13961 | /* 36783 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13962 | /* 36785 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13963 | /* 36789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13964 | /* 36794 */ GIR_RootConstrainSelectedInstOperands, |
| 13965 | /* 36795 */ // GIR_Coverage, 23450, |
| 13966 | /* 36795 */ GIR_EraseRootFromParent_Done, |
| 13967 | /* 36796 */ // Label 926: @36796 |
| 13968 | /* 36796 */ GIM_Try, /*On fail goto*//*Label 927*/ GIMT_Encode4(36858), // Rule ID 24297 // |
| 13969 | /* 36801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 13970 | /* 36804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 13971 | /* 36808 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13972 | /* 36812 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13973 | /* 36816 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13974 | /* 36819 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13975 | /* 36823 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13976 | /* 36827 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 13977 | /* 36831 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13978 | /* 36833 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 13979 | /* 36840 */ // (xor:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPXORQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 13980 | /* 36840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 13981 | /* 36843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13982 | /* 36845 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 13983 | /* 36847 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 13984 | /* 36851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13985 | /* 36856 */ GIR_RootConstrainSelectedInstOperands, |
| 13986 | /* 36857 */ // GIR_Coverage, 24297, |
| 13987 | /* 36857 */ GIR_EraseRootFromParent_Done, |
| 13988 | /* 36858 */ // Label 927: @36858 |
| 13989 | /* 36858 */ GIM_Try, /*On fail goto*//*Label 928*/ GIMT_Encode4(36920), // Rule ID 25332 // |
| 13990 | /* 36863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 13991 | /* 36866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 13992 | /* 36870 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 13993 | /* 36874 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 13994 | /* 36878 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 13995 | /* 36881 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 13996 | /* 36885 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 13997 | /* 36889 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 13998 | /* 36893 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13999 | /* 36895 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14000 | /* 36902 */ // (xor:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4i64] }:$src1) => (VXORPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14001 | /* 36902 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 14002 | /* 36905 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14003 | /* 36907 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14004 | /* 36909 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14005 | /* 36913 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14006 | /* 36918 */ GIR_RootConstrainSelectedInstOperands, |
| 14007 | /* 36919 */ // GIR_Coverage, 25332, |
| 14008 | /* 36919 */ GIR_EraseRootFromParent_Done, |
| 14009 | /* 36920 */ // Label 928: @36920 |
| 14010 | /* 36920 */ GIM_Try, /*On fail goto*//*Label 929*/ GIMT_Encode4(36982), // Rule ID 2127 // |
| 14011 | /* 36925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 14012 | /* 36928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14013 | /* 36932 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14014 | /* 36936 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14015 | /* 36940 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14016 | /* 36944 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14017 | /* 36947 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14018 | /* 36951 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14019 | /* 36955 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14020 | /* 36957 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14021 | /* 36964 */ // (xor:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14022 | /* 36964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 14023 | /* 36967 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14024 | /* 36969 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14025 | /* 36971 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14026 | /* 36975 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14027 | /* 36980 */ GIR_RootConstrainSelectedInstOperands, |
| 14028 | /* 36981 */ // GIR_Coverage, 2127, |
| 14029 | /* 36981 */ GIR_EraseRootFromParent_Done, |
| 14030 | /* 36982 */ // Label 929: @36982 |
| 14031 | /* 36982 */ GIM_Try, /*On fail goto*//*Label 930*/ GIMT_Encode4(37044), // Rule ID 5810 // |
| 14032 | /* 36987 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14033 | /* 36990 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14034 | /* 36994 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14035 | /* 36998 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14036 | /* 37002 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14037 | /* 37006 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14038 | /* 37009 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14039 | /* 37013 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14040 | /* 37017 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14041 | /* 37019 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14042 | /* 37026 */ // (xor:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14043 | /* 37026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 14044 | /* 37029 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14045 | /* 37031 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14046 | /* 37033 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14047 | /* 37037 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14048 | /* 37042 */ GIR_RootConstrainSelectedInstOperands, |
| 14049 | /* 37043 */ // GIR_Coverage, 5810, |
| 14050 | /* 37043 */ GIR_EraseRootFromParent_Done, |
| 14051 | /* 37044 */ // Label 930: @37044 |
| 14052 | /* 37044 */ GIM_Try, /*On fail goto*//*Label 931*/ GIMT_Encode4(37106), // Rule ID 18131 // |
| 14053 | /* 37049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 14054 | /* 37052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14055 | /* 37056 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14056 | /* 37060 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14057 | /* 37064 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14058 | /* 37068 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14059 | /* 37071 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14060 | /* 37075 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14061 | /* 37079 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14062 | /* 37081 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14063 | /* 37088 */ // (xor:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VXORPSYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14064 | /* 37088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 14065 | /* 37091 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14066 | /* 37093 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14067 | /* 37095 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14068 | /* 37099 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14069 | /* 37104 */ GIR_RootConstrainSelectedInstOperands, |
| 14070 | /* 37105 */ // GIR_Coverage, 18131, |
| 14071 | /* 37105 */ GIR_EraseRootFromParent_Done, |
| 14072 | /* 37106 */ // Label 931: @37106 |
| 14073 | /* 37106 */ GIM_Try, /*On fail goto*//*Label 932*/ GIMT_Encode4(37338), // Rule ID 21961 // |
| 14074 | /* 37111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 14075 | /* 37114 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14076 | /* 37118 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14077 | /* 37122 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14078 | /* 37126 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14079 | /* 37132 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14080 | /* 37134 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14081 | /* 37136 */ // (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] }) |
| 14082 | /* 37136 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 14083 | /* 37139 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14084 | /* 37143 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14085 | /* 37148 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 14086 | /* 37150 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 14087 | /* 37153 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14088 | /* 37157 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14089 | /* 37162 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 14090 | /* 37165 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14091 | /* 37169 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 14092 | /* 37172 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14093 | /* 37177 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14094 | /* 37182 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 14095 | /* 37187 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 14096 | /* 37190 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14097 | /* 37194 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14098 | /* 37199 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 14099 | /* 37201 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 14100 | /* 37204 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14101 | /* 37208 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14102 | /* 37213 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 14103 | /* 37216 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14104 | /* 37220 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 14105 | /* 37223 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14106 | /* 37228 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14107 | /* 37233 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 14108 | /* 37238 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 14109 | /* 37241 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14110 | /* 37245 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14111 | /* 37250 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 14112 | /* 37252 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 14113 | /* 37255 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14114 | /* 37259 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14115 | /* 37264 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 14116 | /* 37267 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14117 | /* 37271 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 14118 | /* 37274 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14119 | /* 37279 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14120 | /* 37284 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 14121 | /* 37289 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 14122 | /* 37292 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 14123 | /* 37296 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14124 | /* 37301 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14125 | /* 37304 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 14126 | /* 37307 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 14127 | /* 37310 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 14128 | /* 37313 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14129 | /* 37315 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14130 | /* 37318 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14131 | /* 37320 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 14132 | /* 37327 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 14133 | /* 37332 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14134 | /* 37337 */ // GIR_Coverage, 21961, |
| 14135 | /* 37337 */ GIR_EraseRootFromParent_Done, |
| 14136 | /* 37338 */ // Label 932: @37338 |
| 14137 | /* 37338 */ GIM_Try, /*On fail goto*//*Label 933*/ GIMT_Encode4(37384), // Rule ID 21969 // |
| 14138 | /* 37343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 14139 | /* 37346 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14140 | /* 37350 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14141 | /* 37354 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14142 | /* 37358 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14143 | /* 37364 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14144 | /* 37366 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14145 | /* 37368 */ // (xor:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, immAllOnesV:{ *:[v4i64] }) => (VPTERNLOGQZ256rri:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, VR256X:{ *:[v4i64] }:$src, VR256X:{ *:[v4i64] }:$src, 15:{ *:[i8] }) |
| 14146 | /* 37368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ256rri), |
| 14147 | /* 37371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14148 | /* 37373 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14149 | /* 37375 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14150 | /* 37377 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14151 | /* 37379 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 14152 | /* 37382 */ GIR_RootConstrainSelectedInstOperands, |
| 14153 | /* 37383 */ // GIR_Coverage, 21969, |
| 14154 | /* 37383 */ GIR_EraseRootFromParent_Done, |
| 14155 | /* 37384 */ // Label 933: @37384 |
| 14156 | /* 37384 */ GIM_Try, /*On fail goto*//*Label 934*/ GIMT_Encode4(37411), // Rule ID 2126 // |
| 14157 | /* 37389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 14158 | /* 37392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14159 | /* 37396 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14160 | /* 37400 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14161 | /* 37404 */ // (xor:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPXORYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 14162 | /* 37404 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORYrr), |
| 14163 | /* 37409 */ GIR_RootConstrainSelectedInstOperands, |
| 14164 | /* 37410 */ // GIR_Coverage, 2126, |
| 14165 | /* 37410 */ GIR_Done, |
| 14166 | /* 37411 */ // Label 934: @37411 |
| 14167 | /* 37411 */ GIM_Try, /*On fail goto*//*Label 935*/ GIMT_Encode4(37438), // Rule ID 5807 // |
| 14168 | /* 37416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14169 | /* 37419 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14170 | /* 37423 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14171 | /* 37427 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14172 | /* 37431 */ // (xor:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPXORQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 14173 | /* 37431 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rr), |
| 14174 | /* 37436 */ GIR_RootConstrainSelectedInstOperands, |
| 14175 | /* 37437 */ // GIR_Coverage, 5807, |
| 14176 | /* 37437 */ GIR_Done, |
| 14177 | /* 37438 */ // Label 935: @37438 |
| 14178 | /* 37438 */ GIM_Try, /*On fail goto*//*Label 936*/ GIMT_Encode4(37465), // Rule ID 18115 // |
| 14179 | /* 37443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 14180 | /* 37446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14181 | /* 37450 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14182 | /* 37454 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14183 | /* 37458 */ // (xor:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VXORPSYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 14184 | /* 37458 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VXORPSYrr), |
| 14185 | /* 37463 */ GIR_RootConstrainSelectedInstOperands, |
| 14186 | /* 37464 */ // GIR_Coverage, 18115, |
| 14187 | /* 37464 */ GIR_Done, |
| 14188 | /* 37465 */ // Label 936: @37465 |
| 14189 | /* 37465 */ GIM_Reject, |
| 14190 | /* 37466 */ // Label 925: @37466 |
| 14191 | /* 37466 */ GIM_Reject, |
| 14192 | /* 37467 */ // Label 824: @37467 |
| 14193 | /* 37467 */ GIM_Try, /*On fail goto*//*Label 937*/ GIMT_Encode4(38264), |
| 14194 | /* 37472 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 14195 | /* 37475 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 14196 | /* 37478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14197 | /* 37482 */ GIM_Try, /*On fail goto*//*Label 938*/ GIMT_Encode4(37542), // Rule ID 23766 // |
| 14198 | /* 37487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 14199 | /* 37490 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14200 | /* 37494 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14201 | /* 37498 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 14202 | /* 37502 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 14203 | /* 37506 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14204 | /* 37511 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14205 | /* 37515 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14206 | /* 37521 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14207 | /* 37523 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14208 | /* 37527 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14209 | /* 37529 */ // (xor:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] }), VK8:{ *:[v8i1] }:$src2) => (KXNORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 14210 | /* 37529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORBkk), |
| 14211 | /* 37532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14212 | /* 37534 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14213 | /* 37538 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 14214 | /* 37540 */ GIR_RootConstrainSelectedInstOperands, |
| 14215 | /* 37541 */ // GIR_Coverage, 23766, |
| 14216 | /* 37541 */ GIR_EraseRootFromParent_Done, |
| 14217 | /* 37542 */ // Label 938: @37542 |
| 14218 | /* 37542 */ GIM_Try, /*On fail goto*//*Label 939*/ GIMT_Encode4(37665), // Rule ID 25452 // |
| 14219 | /* 37547 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 14220 | /* 37550 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14221 | /* 37554 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14222 | /* 37558 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 14223 | /* 37562 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 14224 | /* 37566 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14225 | /* 37571 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14226 | /* 37575 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14227 | /* 37581 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14228 | /* 37583 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14229 | /* 37587 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14230 | /* 37589 */ // (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] }) |
| 14231 | /* 37589 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14232 | /* 37592 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14233 | /* 37596 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14234 | /* 37601 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 14235 | /* 37605 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14236 | /* 37610 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14237 | /* 37613 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14238 | /* 37617 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14239 | /* 37622 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14240 | /* 37626 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14241 | /* 37631 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14242 | /* 37634 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14243 | /* 37638 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14244 | /* 37643 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14245 | /* 37646 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14246 | /* 37649 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14247 | /* 37651 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14248 | /* 37654 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14249 | /* 37656 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14250 | /* 37659 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 14251 | /* 37664 */ // GIR_Coverage, 25452, |
| 14252 | /* 37664 */ GIR_EraseRootFromParent_Done, |
| 14253 | /* 37665 */ // Label 939: @37665 |
| 14254 | /* 37665 */ GIM_Try, /*On fail goto*//*Label 940*/ GIMT_Encode4(37728), // Rule ID 4425 // |
| 14255 | /* 37670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 14256 | /* 37673 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14257 | /* 37677 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14258 | /* 37681 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 14259 | /* 37685 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 14260 | /* 37689 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14261 | /* 37694 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14262 | /* 37699 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 14263 | /* 37703 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14264 | /* 37709 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14265 | /* 37711 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14266 | /* 37713 */ // (xor:{ *:[v8i1] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2), immAllOnesV:{ *:[v8i1] }) => (KXNORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 14267 | /* 37713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORBkk), |
| 14268 | /* 37716 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14269 | /* 37718 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14270 | /* 37722 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 14271 | /* 37726 */ GIR_RootConstrainSelectedInstOperands, |
| 14272 | /* 37727 */ // GIR_Coverage, 4425, |
| 14273 | /* 37727 */ GIR_EraseRootFromParent_Done, |
| 14274 | /* 37728 */ // Label 940: @37728 |
| 14275 | /* 37728 */ GIM_Try, /*On fail goto*//*Label 941*/ GIMT_Encode4(37852), // Rule ID 19493 // |
| 14276 | /* 37733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 14277 | /* 37736 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14278 | /* 37740 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14279 | /* 37744 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 14280 | /* 37748 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 14281 | /* 37752 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14282 | /* 37757 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14283 | /* 37762 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 14284 | /* 37766 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14285 | /* 37772 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14286 | /* 37774 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14287 | /* 37776 */ // (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] }) |
| 14288 | /* 37776 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14289 | /* 37779 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14290 | /* 37783 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14291 | /* 37788 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 14292 | /* 37792 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14293 | /* 37797 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14294 | /* 37800 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14295 | /* 37804 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14296 | /* 37809 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14297 | /* 37813 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14298 | /* 37818 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14299 | /* 37821 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14300 | /* 37825 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14301 | /* 37830 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14302 | /* 37833 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14303 | /* 37836 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14304 | /* 37838 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14305 | /* 37841 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14306 | /* 37843 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14307 | /* 37846 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 14308 | /* 37851 */ // GIR_Coverage, 19493, |
| 14309 | /* 37851 */ GIR_EraseRootFromParent_Done, |
| 14310 | /* 37852 */ // Label 941: @37852 |
| 14311 | /* 37852 */ GIM_Try, /*On fail goto*//*Label 942*/ GIMT_Encode4(37912), // Rule ID 23767 // |
| 14312 | /* 37857 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 14313 | /* 37860 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14314 | /* 37864 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14315 | /* 37868 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14316 | /* 37872 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 14317 | /* 37876 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 14318 | /* 37880 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14319 | /* 37885 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14320 | /* 37889 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14321 | /* 37895 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14322 | /* 37897 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14323 | /* 37899 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src2, (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, immAllOnesV:{ *:[v8i1] })) => (KXNORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 14324 | /* 37899 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORBkk), |
| 14325 | /* 37902 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14326 | /* 37904 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14327 | /* 37908 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 14328 | /* 37910 */ GIR_RootConstrainSelectedInstOperands, |
| 14329 | /* 37911 */ // GIR_Coverage, 23767, |
| 14330 | /* 37911 */ GIR_EraseRootFromParent_Done, |
| 14331 | /* 37912 */ // Label 942: @37912 |
| 14332 | /* 37912 */ GIM_Try, /*On fail goto*//*Label 943*/ GIMT_Encode4(38035), // Rule ID 25453 // |
| 14333 | /* 37917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 14334 | /* 37920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14335 | /* 37924 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14336 | /* 37928 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14337 | /* 37932 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 14338 | /* 37936 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 14339 | /* 37940 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14340 | /* 37945 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14341 | /* 37949 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14342 | /* 37955 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14343 | /* 37957 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14344 | /* 37959 */ // (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] }) |
| 14345 | /* 37959 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14346 | /* 37962 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14347 | /* 37966 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14348 | /* 37971 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src2 |
| 14349 | /* 37975 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14350 | /* 37980 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14351 | /* 37983 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14352 | /* 37987 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14353 | /* 37992 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 14354 | /* 37996 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14355 | /* 38001 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14356 | /* 38004 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 14357 | /* 38008 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14358 | /* 38013 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14359 | /* 38016 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14360 | /* 38019 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14361 | /* 38021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14362 | /* 38024 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14363 | /* 38026 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14364 | /* 38029 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 14365 | /* 38034 */ // GIR_Coverage, 25453, |
| 14366 | /* 38034 */ GIR_EraseRootFromParent_Done, |
| 14367 | /* 38035 */ // Label 943: @38035 |
| 14368 | /* 38035 */ GIM_Try, /*On fail goto*//*Label 944*/ GIMT_Encode4(38070), // Rule ID 4413 // |
| 14369 | /* 38040 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 14370 | /* 38043 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14371 | /* 38047 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14372 | /* 38051 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14373 | /* 38057 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14374 | /* 38059 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14375 | /* 38061 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src, immAllOnesV:{ *:[v8i1] }) => (KNOTBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src) |
| 14376 | /* 38061 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KNOTBkk), |
| 14377 | /* 38064 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14378 | /* 38066 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14379 | /* 38068 */ GIR_RootConstrainSelectedInstOperands, |
| 14380 | /* 38069 */ // GIR_Coverage, 4413, |
| 14381 | /* 38069 */ GIR_EraseRootFromParent_Done, |
| 14382 | /* 38070 */ // Label 944: @38070 |
| 14383 | /* 38070 */ GIM_Try, /*On fail goto*//*Label 945*/ GIMT_Encode4(38148), // Rule ID 19477 // |
| 14384 | /* 38075 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoDQI), |
| 14385 | /* 38078 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14386 | /* 38082 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14387 | /* 38086 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14388 | /* 38092 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14389 | /* 38094 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14390 | /* 38096 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src, immAllOnesV:{ *:[v8i1] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } (KNOTWkk:{ *:[v16i1] } (COPY_TO_REGCLASS:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src, VK16:{ *:[i32] })), VK8:{ *:[i32] }) |
| 14391 | /* 38096 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14392 | /* 38099 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14393 | /* 38103 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14394 | /* 38108 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14395 | /* 38112 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14396 | /* 38117 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14397 | /* 38120 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 14398 | /* 38124 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14399 | /* 38129 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14400 | /* 38132 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14401 | /* 38134 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14402 | /* 38137 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14403 | /* 38139 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14404 | /* 38142 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 14405 | /* 38147 */ // GIR_Coverage, 19477, |
| 14406 | /* 38147 */ GIR_EraseRootFromParent_Done, |
| 14407 | /* 38148 */ // Label 945: @38148 |
| 14408 | /* 38148 */ GIM_Try, /*On fail goto*//*Label 946*/ GIMT_Encode4(38171), // Rule ID 4429 // |
| 14409 | /* 38153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 14410 | /* 38156 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14411 | /* 38160 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14412 | /* 38164 */ // (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (KXORBkk:{ *:[v8i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) |
| 14413 | /* 38164 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KXORBkk), |
| 14414 | /* 38169 */ GIR_RootConstrainSelectedInstOperands, |
| 14415 | /* 38170 */ // GIR_Coverage, 4429, |
| 14416 | /* 38170 */ GIR_Done, |
| 14417 | /* 38171 */ // Label 946: @38171 |
| 14418 | /* 38171 */ GIM_Try, /*On fail goto*//*Label 947*/ GIMT_Encode4(38263), // Rule ID 19497 // |
| 14419 | /* 38176 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoDQI), |
| 14420 | /* 38179 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14421 | /* 38183 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 14422 | /* 38187 */ // (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] }) |
| 14423 | /* 38187 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 14424 | /* 38190 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14425 | /* 38194 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14426 | /* 38199 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 14427 | /* 38203 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14428 | /* 38208 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 14429 | /* 38211 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14430 | /* 38215 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14431 | /* 38220 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 14432 | /* 38224 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 14433 | /* 38229 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 14434 | /* 38232 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 14435 | /* 38236 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14436 | /* 38241 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14437 | /* 38244 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 14438 | /* 38247 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14439 | /* 38249 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14440 | /* 38252 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14441 | /* 38254 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 14442 | /* 38257 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 14443 | /* 38262 */ // GIR_Coverage, 19497, |
| 14444 | /* 38262 */ GIR_EraseRootFromParent_Done, |
| 14445 | /* 38263 */ // Label 947: @38263 |
| 14446 | /* 38263 */ GIM_Reject, |
| 14447 | /* 38264 */ // Label 937: @38264 |
| 14448 | /* 38264 */ GIM_Reject, |
| 14449 | /* 38265 */ // Label 825: @38265 |
| 14450 | /* 38265 */ GIM_Try, /*On fail goto*//*Label 948*/ GIMT_Encode4(38884), |
| 14451 | /* 38270 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 14452 | /* 38273 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 14453 | /* 38276 */ GIM_Try, /*On fail goto*//*Label 949*/ GIMT_Encode4(38338), // Rule ID 25340 // |
| 14454 | /* 38281 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14455 | /* 38284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14456 | /* 38288 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14457 | /* 38292 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14458 | /* 38296 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14459 | /* 38299 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14460 | /* 38303 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14461 | /* 38307 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14462 | /* 38311 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14463 | /* 38313 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14464 | /* 38320 */ // (xor:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPXORrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14465 | /* 38320 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 14466 | /* 38323 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14467 | /* 38325 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14468 | /* 38327 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14469 | /* 38331 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14470 | /* 38336 */ GIR_RootConstrainSelectedInstOperands, |
| 14471 | /* 38337 */ // GIR_Coverage, 25340, |
| 14472 | /* 38337 */ GIR_EraseRootFromParent_Done, |
| 14473 | /* 38338 */ // Label 949: @38338 |
| 14474 | /* 38338 */ GIM_Try, /*On fail goto*//*Label 950*/ GIMT_Encode4(38400), // Rule ID 25519 // |
| 14475 | /* 38343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 14476 | /* 38346 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14477 | /* 38350 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14478 | /* 38354 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14479 | /* 38358 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14480 | /* 38361 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14481 | /* 38365 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14482 | /* 38369 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14483 | /* 38373 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14484 | /* 38375 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14485 | /* 38382 */ // (xor:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPXORQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14486 | /* 38382 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 14487 | /* 38385 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14488 | /* 38387 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14489 | /* 38389 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14490 | /* 38393 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14491 | /* 38398 */ GIR_RootConstrainSelectedInstOperands, |
| 14492 | /* 38399 */ // GIR_Coverage, 25519, |
| 14493 | /* 38399 */ GIR_EraseRootFromParent_Done, |
| 14494 | /* 38400 */ // Label 950: @38400 |
| 14495 | /* 38400 */ GIM_Try, /*On fail goto*//*Label 951*/ GIMT_Encode4(38462), // Rule ID 18155 // |
| 14496 | /* 38405 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14497 | /* 38408 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14498 | /* 38412 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14499 | /* 38416 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14500 | /* 38420 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14501 | /* 38424 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14502 | /* 38427 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14503 | /* 38431 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14504 | /* 38435 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14505 | /* 38437 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14506 | /* 38444 */ // (xor:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14507 | /* 38444 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 14508 | /* 38447 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14509 | /* 38449 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14510 | /* 38451 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14511 | /* 38455 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14512 | /* 38460 */ GIR_RootConstrainSelectedInstOperands, |
| 14513 | /* 38461 */ // GIR_Coverage, 18155, |
| 14514 | /* 38461 */ GIR_EraseRootFromParent_Done, |
| 14515 | /* 38462 */ // Label 951: @38462 |
| 14516 | /* 38462 */ GIM_Try, /*On fail goto*//*Label 952*/ GIMT_Encode4(38524), // Rule ID 20038 // |
| 14517 | /* 38467 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 14518 | /* 38470 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14519 | /* 38474 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14520 | /* 38478 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14521 | /* 38482 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14522 | /* 38486 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14523 | /* 38489 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14524 | /* 38493 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14525 | /* 38497 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14526 | /* 38499 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14527 | /* 38506 */ // (xor:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14528 | /* 38506 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 14529 | /* 38509 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14530 | /* 38511 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14531 | /* 38513 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14532 | /* 38517 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14533 | /* 38522 */ GIR_RootConstrainSelectedInstOperands, |
| 14534 | /* 38523 */ // GIR_Coverage, 20038, |
| 14535 | /* 38523 */ GIR_EraseRootFromParent_Done, |
| 14536 | /* 38524 */ // Label 952: @38524 |
| 14537 | /* 38524 */ GIM_Try, /*On fail goto*//*Label 953*/ GIMT_Encode4(38756), // Rule ID 21955 // |
| 14538 | /* 38529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 14539 | /* 38532 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 14540 | /* 38536 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14541 | /* 38540 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14542 | /* 38544 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14543 | /* 38550 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14544 | /* 38552 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14545 | /* 38554 */ // (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] }) |
| 14546 | /* 38554 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 14547 | /* 38557 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14548 | /* 38561 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14549 | /* 38566 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 14550 | /* 38568 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 14551 | /* 38571 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14552 | /* 38575 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14553 | /* 38580 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 14554 | /* 38583 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14555 | /* 38587 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 14556 | /* 38590 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14557 | /* 38595 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14558 | /* 38600 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14559 | /* 38605 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 14560 | /* 38608 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14561 | /* 38612 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14562 | /* 38617 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 14563 | /* 38619 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 14564 | /* 38622 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14565 | /* 38626 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14566 | /* 38631 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 14567 | /* 38634 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14568 | /* 38638 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 14569 | /* 38641 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14570 | /* 38646 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14571 | /* 38651 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14572 | /* 38656 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 14573 | /* 38659 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14574 | /* 38663 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14575 | /* 38668 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 14576 | /* 38670 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 14577 | /* 38673 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14578 | /* 38677 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14579 | /* 38682 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 14580 | /* 38685 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14581 | /* 38689 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 14582 | /* 38692 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14583 | /* 38697 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14584 | /* 38702 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 14585 | /* 38707 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 14586 | /* 38710 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 14587 | /* 38714 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14588 | /* 38719 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14589 | /* 38722 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 14590 | /* 38725 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 14591 | /* 38728 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 14592 | /* 38731 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14593 | /* 38733 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14594 | /* 38736 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14595 | /* 38738 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 14596 | /* 38745 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 14597 | /* 38750 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14598 | /* 38755 */ // GIR_Coverage, 21955, |
| 14599 | /* 38755 */ GIR_EraseRootFromParent_Done, |
| 14600 | /* 38756 */ // Label 953: @38756 |
| 14601 | /* 38756 */ GIM_Try, /*On fail goto*//*Label 954*/ GIMT_Encode4(38802), // Rule ID 21963 // |
| 14602 | /* 38761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 14603 | /* 38764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14604 | /* 38768 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14605 | /* 38772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14606 | /* 38776 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14607 | /* 38782 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14608 | /* 38784 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14609 | /* 38786 */ // (xor:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, immAllOnesV:{ *:[v8i16] }) => (VPTERNLOGQZ128rri:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, VR128X:{ *:[v8i16] }:$src, VR128X:{ *:[v8i16] }:$src, 15:{ *:[i8] }) |
| 14610 | /* 38786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ128rri), |
| 14611 | /* 38789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14612 | /* 38791 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14613 | /* 38793 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14614 | /* 38795 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14615 | /* 38797 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 14616 | /* 38800 */ GIR_RootConstrainSelectedInstOperands, |
| 14617 | /* 38801 */ // GIR_Coverage, 21963, |
| 14618 | /* 38801 */ GIR_EraseRootFromParent_Done, |
| 14619 | /* 38802 */ // Label 954: @38802 |
| 14620 | /* 38802 */ GIM_Try, /*On fail goto*//*Label 955*/ GIMT_Encode4(38829), // Rule ID 18143 // |
| 14621 | /* 38807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 14622 | /* 38810 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14623 | /* 38814 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14624 | /* 38818 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14625 | /* 38822 */ // (xor:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPXORrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 14626 | /* 38822 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORrr), |
| 14627 | /* 38827 */ GIR_RootConstrainSelectedInstOperands, |
| 14628 | /* 38828 */ // GIR_Coverage, 18143, |
| 14629 | /* 38828 */ GIR_Done, |
| 14630 | /* 38829 */ // Label 955: @38829 |
| 14631 | /* 38829 */ GIM_Try, /*On fail goto*//*Label 956*/ GIMT_Encode4(38856), // Rule ID 18167 // |
| 14632 | /* 38834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 14633 | /* 38837 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14634 | /* 38841 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14635 | /* 38845 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 14636 | /* 38849 */ // (xor:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PXORrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 14637 | /* 38849 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PXORrr), |
| 14638 | /* 38854 */ GIR_RootConstrainSelectedInstOperands, |
| 14639 | /* 38855 */ // GIR_Coverage, 18167, |
| 14640 | /* 38855 */ GIR_Done, |
| 14641 | /* 38856 */ // Label 956: @38856 |
| 14642 | /* 38856 */ GIM_Try, /*On fail goto*//*Label 957*/ GIMT_Encode4(38883), // Rule ID 20030 // |
| 14643 | /* 38861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 14644 | /* 38864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14645 | /* 38868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14646 | /* 38872 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 14647 | /* 38876 */ // (xor:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPXORQZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 14648 | /* 38876 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rr), |
| 14649 | /* 38881 */ GIR_RootConstrainSelectedInstOperands, |
| 14650 | /* 38882 */ // GIR_Coverage, 20030, |
| 14651 | /* 38882 */ GIR_Done, |
| 14652 | /* 38883 */ // Label 957: @38883 |
| 14653 | /* 38883 */ GIM_Reject, |
| 14654 | /* 38884 */ // Label 948: @38884 |
| 14655 | /* 38884 */ GIM_Reject, |
| 14656 | /* 38885 */ // Label 826: @38885 |
| 14657 | /* 38885 */ GIM_Try, /*On fail goto*//*Label 958*/ GIMT_Encode4(39628), |
| 14658 | /* 38890 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 14659 | /* 38893 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 14660 | /* 38896 */ GIM_Try, /*On fail goto*//*Label 959*/ GIMT_Encode4(38958), // Rule ID 24315 // |
| 14661 | /* 38901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14662 | /* 38904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14663 | /* 38908 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14664 | /* 38912 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14665 | /* 38916 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14666 | /* 38919 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14667 | /* 38923 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14668 | /* 38927 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14669 | /* 38931 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14670 | /* 38933 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14671 | /* 38940 */ // (xor:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPXORDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14672 | /* 38940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZ256rm), |
| 14673 | /* 38943 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14674 | /* 38945 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14675 | /* 38947 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14676 | /* 38951 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14677 | /* 38956 */ GIR_RootConstrainSelectedInstOperands, |
| 14678 | /* 38957 */ // GIR_Coverage, 24315, |
| 14679 | /* 38957 */ GIR_EraseRootFromParent_Done, |
| 14680 | /* 38958 */ // Label 959: @38958 |
| 14681 | /* 38958 */ GIM_Try, /*On fail goto*//*Label 960*/ GIMT_Encode4(39020), // Rule ID 25320 // |
| 14682 | /* 38963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 14683 | /* 38966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14684 | /* 38970 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14685 | /* 38974 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14686 | /* 38978 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14687 | /* 38981 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14688 | /* 38985 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14689 | /* 38989 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14690 | /* 38993 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14691 | /* 38995 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14692 | /* 39002 */ // (xor:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPXORYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14693 | /* 39002 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 14694 | /* 39005 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14695 | /* 39007 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14696 | /* 39009 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14697 | /* 39013 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14698 | /* 39018 */ GIR_RootConstrainSelectedInstOperands, |
| 14699 | /* 39019 */ // GIR_Coverage, 25320, |
| 14700 | /* 39019 */ GIR_EraseRootFromParent_Done, |
| 14701 | /* 39020 */ // Label 960: @39020 |
| 14702 | /* 39020 */ GIM_Try, /*On fail goto*//*Label 961*/ GIMT_Encode4(39082), // Rule ID 25331 // |
| 14703 | /* 39025 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 14704 | /* 39028 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14705 | /* 39032 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14706 | /* 39036 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14707 | /* 39040 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14708 | /* 39043 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14709 | /* 39047 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14710 | /* 39051 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14711 | /* 39055 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14712 | /* 39057 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14713 | /* 39064 */ // (xor:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VXORPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14714 | /* 39064 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 14715 | /* 39067 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14716 | /* 39069 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14717 | /* 39071 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14718 | /* 39075 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14719 | /* 39080 */ GIR_RootConstrainSelectedInstOperands, |
| 14720 | /* 39081 */ // GIR_Coverage, 25331, |
| 14721 | /* 39081 */ GIR_EraseRootFromParent_Done, |
| 14722 | /* 39082 */ // Label 961: @39082 |
| 14723 | /* 39082 */ GIM_Try, /*On fail goto*//*Label 962*/ GIMT_Encode4(39144), // Rule ID 5837 // |
| 14724 | /* 39087 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14725 | /* 39090 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14726 | /* 39094 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14727 | /* 39098 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14728 | /* 39102 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14729 | /* 39106 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14730 | /* 39109 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14731 | /* 39113 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14732 | /* 39117 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14733 | /* 39119 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14734 | /* 39126 */ // (xor:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14735 | /* 39126 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZ256rm), |
| 14736 | /* 39129 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14737 | /* 39131 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14738 | /* 39133 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14739 | /* 39137 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14740 | /* 39142 */ GIR_RootConstrainSelectedInstOperands, |
| 14741 | /* 39143 */ // GIR_Coverage, 5837, |
| 14742 | /* 39143 */ GIR_EraseRootFromParent_Done, |
| 14743 | /* 39144 */ // Label 962: @39144 |
| 14744 | /* 39144 */ GIM_Try, /*On fail goto*//*Label 963*/ GIMT_Encode4(39206), // Rule ID 18100 // |
| 14745 | /* 39149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 14746 | /* 39152 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14747 | /* 39156 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14748 | /* 39160 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14749 | /* 39164 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14750 | /* 39168 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14751 | /* 39171 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14752 | /* 39175 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14753 | /* 39179 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14754 | /* 39181 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14755 | /* 39188 */ // (xor:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14756 | /* 39188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 14757 | /* 39191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14758 | /* 39193 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14759 | /* 39195 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14760 | /* 39199 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14761 | /* 39204 */ GIR_RootConstrainSelectedInstOperands, |
| 14762 | /* 39205 */ // GIR_Coverage, 18100, |
| 14763 | /* 39205 */ GIR_EraseRootFromParent_Done, |
| 14764 | /* 39206 */ // Label 963: @39206 |
| 14765 | /* 39206 */ GIM_Try, /*On fail goto*//*Label 964*/ GIMT_Encode4(39268), // Rule ID 18130 // |
| 14766 | /* 39211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 14767 | /* 39214 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14768 | /* 39218 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14769 | /* 39222 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14770 | /* 39226 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14771 | /* 39230 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14772 | /* 39233 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14773 | /* 39237 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14774 | /* 39241 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14775 | /* 39243 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14776 | /* 39250 */ // (xor:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VXORPSYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14777 | /* 39250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 14778 | /* 39253 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14779 | /* 39255 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14780 | /* 39257 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14781 | /* 39261 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14782 | /* 39266 */ GIR_RootConstrainSelectedInstOperands, |
| 14783 | /* 39267 */ // GIR_Coverage, 18130, |
| 14784 | /* 39267 */ GIR_EraseRootFromParent_Done, |
| 14785 | /* 39268 */ // Label 964: @39268 |
| 14786 | /* 39268 */ GIM_Try, /*On fail goto*//*Label 965*/ GIMT_Encode4(39500), // Rule ID 21960 // |
| 14787 | /* 39273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 14788 | /* 39276 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14789 | /* 39280 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14790 | /* 39284 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14791 | /* 39288 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14792 | /* 39294 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14793 | /* 39296 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14794 | /* 39298 */ // (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] }) |
| 14795 | /* 39298 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 14796 | /* 39301 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14797 | /* 39305 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14798 | /* 39310 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 14799 | /* 39312 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 14800 | /* 39315 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14801 | /* 39319 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14802 | /* 39324 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 14803 | /* 39327 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14804 | /* 39331 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 14805 | /* 39334 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14806 | /* 39339 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14807 | /* 39344 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 14808 | /* 39349 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 14809 | /* 39352 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14810 | /* 39356 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14811 | /* 39361 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 14812 | /* 39363 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 14813 | /* 39366 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14814 | /* 39370 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14815 | /* 39375 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 14816 | /* 39378 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14817 | /* 39382 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 14818 | /* 39385 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14819 | /* 39390 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14820 | /* 39395 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 14821 | /* 39400 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 14822 | /* 39403 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 14823 | /* 39407 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14824 | /* 39412 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 14825 | /* 39414 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 14826 | /* 39417 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 14827 | /* 39421 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14828 | /* 39426 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 14829 | /* 39429 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 14830 | /* 39433 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 14831 | /* 39436 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 14832 | /* 39441 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14833 | /* 39446 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 14834 | /* 39451 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 14835 | /* 39454 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 14836 | /* 39458 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 14837 | /* 39463 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 14838 | /* 39466 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 14839 | /* 39469 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 14840 | /* 39472 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 14841 | /* 39475 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 14842 | /* 39477 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 14843 | /* 39480 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14844 | /* 39482 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 14845 | /* 39489 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 14846 | /* 39494 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 14847 | /* 39499 */ // GIR_Coverage, 21960, |
| 14848 | /* 39499 */ GIR_EraseRootFromParent_Done, |
| 14849 | /* 39500 */ // Label 965: @39500 |
| 14850 | /* 39500 */ GIM_Try, /*On fail goto*//*Label 966*/ GIMT_Encode4(39546), // Rule ID 21968 // |
| 14851 | /* 39505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 14852 | /* 39508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14853 | /* 39512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14854 | /* 39516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14855 | /* 39520 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14856 | /* 39526 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14857 | /* 39528 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14858 | /* 39530 */ // (xor:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, immAllOnesV:{ *:[v8i32] }) => (VPTERNLOGQZ256rri:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, VR256X:{ *:[v8i32] }:$src, VR256X:{ *:[v8i32] }:$src, 15:{ *:[i8] }) |
| 14859 | /* 39530 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ256rri), |
| 14860 | /* 39533 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14861 | /* 39535 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14862 | /* 39537 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14863 | /* 39539 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14864 | /* 39541 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 14865 | /* 39544 */ GIR_RootConstrainSelectedInstOperands, |
| 14866 | /* 39545 */ // GIR_Coverage, 21968, |
| 14867 | /* 39545 */ GIR_EraseRootFromParent_Done, |
| 14868 | /* 39546 */ // Label 966: @39546 |
| 14869 | /* 39546 */ GIM_Try, /*On fail goto*//*Label 967*/ GIMT_Encode4(39573), // Rule ID 5834 // |
| 14870 | /* 39551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 14871 | /* 39554 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14872 | /* 39558 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14873 | /* 39562 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 14874 | /* 39566 */ // (xor:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPXORDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 14875 | /* 39566 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORDZ256rr), |
| 14876 | /* 39571 */ GIR_RootConstrainSelectedInstOperands, |
| 14877 | /* 39572 */ // GIR_Coverage, 5834, |
| 14878 | /* 39572 */ GIR_Done, |
| 14879 | /* 39573 */ // Label 967: @39573 |
| 14880 | /* 39573 */ GIM_Try, /*On fail goto*//*Label 968*/ GIMT_Encode4(39600), // Rule ID 18088 // |
| 14881 | /* 39578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 14882 | /* 39581 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14883 | /* 39585 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14884 | /* 39589 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14885 | /* 39593 */ // (xor:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPXORYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 14886 | /* 39593 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORYrr), |
| 14887 | /* 39598 */ GIR_RootConstrainSelectedInstOperands, |
| 14888 | /* 39599 */ // GIR_Coverage, 18088, |
| 14889 | /* 39599 */ GIR_Done, |
| 14890 | /* 39600 */ // Label 968: @39600 |
| 14891 | /* 39600 */ GIM_Try, /*On fail goto*//*Label 969*/ GIMT_Encode4(39627), // Rule ID 18114 // |
| 14892 | /* 39605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 14893 | /* 39608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14894 | /* 39612 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14895 | /* 39616 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 14896 | /* 39620 */ // (xor:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VXORPSYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 14897 | /* 39620 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VXORPSYrr), |
| 14898 | /* 39625 */ GIR_RootConstrainSelectedInstOperands, |
| 14899 | /* 39626 */ // GIR_Coverage, 18114, |
| 14900 | /* 39626 */ GIR_Done, |
| 14901 | /* 39627 */ // Label 969: @39627 |
| 14902 | /* 39627 */ GIM_Reject, |
| 14903 | /* 39628 */ // Label 958: @39628 |
| 14904 | /* 39628 */ GIM_Reject, |
| 14905 | /* 39629 */ // Label 827: @39629 |
| 14906 | /* 39629 */ GIM_Try, /*On fail goto*//*Label 970*/ GIMT_Encode4(39826), |
| 14907 | /* 39634 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 14908 | /* 39637 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 14909 | /* 39640 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 14910 | /* 39644 */ GIM_Try, /*On fail goto*//*Label 971*/ GIMT_Encode4(39702), // Rule ID 24291 // |
| 14911 | /* 39649 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 14912 | /* 39652 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14913 | /* 39656 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14914 | /* 39660 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14915 | /* 39663 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14916 | /* 39667 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14917 | /* 39671 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 14918 | /* 39675 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14919 | /* 39677 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14920 | /* 39684 */ // (xor:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPXORQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14921 | /* 39684 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 14922 | /* 39687 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14923 | /* 39689 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 14924 | /* 39691 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14925 | /* 39695 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14926 | /* 39700 */ GIR_RootConstrainSelectedInstOperands, |
| 14927 | /* 39701 */ // GIR_Coverage, 24291, |
| 14928 | /* 39701 */ GIR_EraseRootFromParent_Done, |
| 14929 | /* 39702 */ // Label 971: @39702 |
| 14930 | /* 39702 */ GIM_Try, /*On fail goto*//*Label 972*/ GIMT_Encode4(39760), // Rule ID 5801 // |
| 14931 | /* 39707 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 14932 | /* 39710 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 14933 | /* 39714 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14934 | /* 39718 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 14935 | /* 39722 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 14936 | /* 39725 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 14937 | /* 39729 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 14938 | /* 39733 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14939 | /* 39735 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 14940 | /* 39742 */ // (xor:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 14941 | /* 39742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 14942 | /* 39745 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14943 | /* 39747 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 14944 | /* 39749 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 14945 | /* 39753 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14946 | /* 39758 */ GIR_RootConstrainSelectedInstOperands, |
| 14947 | /* 39759 */ // GIR_Coverage, 5801, |
| 14948 | /* 39759 */ GIR_EraseRootFromParent_Done, |
| 14949 | /* 39760 */ // Label 972: @39760 |
| 14950 | /* 39760 */ GIM_Try, /*On fail goto*//*Label 973*/ GIMT_Encode4(39802), // Rule ID 21953 // |
| 14951 | /* 39765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 14952 | /* 39768 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 14953 | /* 39772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 14954 | /* 39776 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14955 | /* 39782 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 14956 | /* 39784 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14957 | /* 39786 */ // (xor:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, immAllOnesV:{ *:[v8i64] }) => (VPTERNLOGQZrri:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, VR512:{ *:[v8i64] }:$src, VR512:{ *:[v8i64] }:$src, 15:{ *:[i8] }) |
| 14958 | /* 39786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 14959 | /* 39789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 14960 | /* 39791 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14961 | /* 39793 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14962 | /* 39795 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 14963 | /* 39797 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 14964 | /* 39800 */ GIR_RootConstrainSelectedInstOperands, |
| 14965 | /* 39801 */ // GIR_Coverage, 21953, |
| 14966 | /* 39801 */ GIR_EraseRootFromParent_Done, |
| 14967 | /* 39802 */ // Label 973: @39802 |
| 14968 | /* 39802 */ GIM_Try, /*On fail goto*//*Label 974*/ GIMT_Encode4(39825), // Rule ID 5798 // |
| 14969 | /* 39807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 14970 | /* 39810 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 14971 | /* 39814 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 14972 | /* 39818 */ // (xor:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPXORQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 14973 | /* 39818 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZrr), |
| 14974 | /* 39823 */ GIR_RootConstrainSelectedInstOperands, |
| 14975 | /* 39824 */ // GIR_Coverage, 5798, |
| 14976 | /* 39824 */ GIR_Done, |
| 14977 | /* 39825 */ // Label 974: @39825 |
| 14978 | /* 39825 */ GIM_Reject, |
| 14979 | /* 39826 */ // Label 970: @39826 |
| 14980 | /* 39826 */ GIM_Reject, |
| 14981 | /* 39827 */ // Label 828: @39827 |
| 14982 | /* 39827 */ GIM_Try, /*On fail goto*//*Label 975*/ GIMT_Encode4(40084), |
| 14983 | /* 39832 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 14984 | /* 39835 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 14985 | /* 39838 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 14986 | /* 39842 */ GIM_Try, /*On fail goto*//*Label 976*/ GIMT_Encode4(39902), // Rule ID 23768 // |
| 14987 | /* 39847 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 14988 | /* 39850 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 14989 | /* 39854 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 14990 | /* 39858 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 14991 | /* 39862 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 14992 | /* 39866 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 14993 | /* 39871 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 14994 | /* 39875 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 14995 | /* 39881 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 14996 | /* 39883 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 14997 | /* 39887 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 14998 | /* 39889 */ // (xor:{ *:[v16i1] } (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, immAllOnesV:{ *:[v16i1] }), VK16:{ *:[v16i1] }:$src2) => (KXNORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 14999 | /* 39889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 15000 | /* 39892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15001 | /* 39894 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15002 | /* 39898 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 15003 | /* 39900 */ GIR_RootConstrainSelectedInstOperands, |
| 15004 | /* 39901 */ // GIR_Coverage, 23768, |
| 15005 | /* 39901 */ GIR_EraseRootFromParent_Done, |
| 15006 | /* 39902 */ // Label 976: @39902 |
| 15007 | /* 39902 */ GIM_Try, /*On fail goto*//*Label 977*/ GIMT_Encode4(39965), // Rule ID 4426 // |
| 15008 | /* 39907 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15009 | /* 39910 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15010 | /* 39914 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15011 | /* 39918 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 15012 | /* 39922 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 15013 | /* 39926 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 15014 | /* 39931 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 15015 | /* 39936 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 15016 | /* 39940 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15017 | /* 39946 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15018 | /* 39948 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15019 | /* 39950 */ // (xor:{ *:[v16i1] } (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2), immAllOnesV:{ *:[v16i1] }) => (KXNORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 15020 | /* 39950 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 15021 | /* 39953 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15022 | /* 39955 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15023 | /* 39959 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15024 | /* 39963 */ GIR_RootConstrainSelectedInstOperands, |
| 15025 | /* 39964 */ // GIR_Coverage, 4426, |
| 15026 | /* 39964 */ GIR_EraseRootFromParent_Done, |
| 15027 | /* 39965 */ // Label 977: @39965 |
| 15028 | /* 39965 */ GIM_Try, /*On fail goto*//*Label 978*/ GIMT_Encode4(40025), // Rule ID 23769 // |
| 15029 | /* 39970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15030 | /* 39973 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 15031 | /* 39977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15032 | /* 39981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15033 | /* 39985 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 15034 | /* 39989 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 15035 | /* 39993 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 15036 | /* 39998 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15037 | /* 40002 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15038 | /* 40008 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15039 | /* 40010 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15040 | /* 40012 */ // (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src2, (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, immAllOnesV:{ *:[v16i1] })) => (KXNORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 15041 | /* 40012 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORWkk), |
| 15042 | /* 40015 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15043 | /* 40017 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15044 | /* 40021 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 15045 | /* 40023 */ GIR_RootConstrainSelectedInstOperands, |
| 15046 | /* 40024 */ // GIR_Coverage, 23769, |
| 15047 | /* 40024 */ GIR_EraseRootFromParent_Done, |
| 15048 | /* 40025 */ // Label 978: @40025 |
| 15049 | /* 40025 */ GIM_Try, /*On fail goto*//*Label 979*/ GIMT_Encode4(40060), // Rule ID 4414 // |
| 15050 | /* 40030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15051 | /* 40033 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 15052 | /* 40037 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15053 | /* 40041 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15054 | /* 40047 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15055 | /* 40049 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15056 | /* 40051 */ // (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src, immAllOnesV:{ *:[v16i1] }) => (KNOTWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src) |
| 15057 | /* 40051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 15058 | /* 40054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15059 | /* 40056 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15060 | /* 40058 */ GIR_RootConstrainSelectedInstOperands, |
| 15061 | /* 40059 */ // GIR_Coverage, 4414, |
| 15062 | /* 40059 */ GIR_EraseRootFromParent_Done, |
| 15063 | /* 40060 */ // Label 979: @40060 |
| 15064 | /* 40060 */ GIM_Try, /*On fail goto*//*Label 980*/ GIMT_Encode4(40083), // Rule ID 4430 // |
| 15065 | /* 40065 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15066 | /* 40068 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 15067 | /* 40072 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 15068 | /* 40076 */ // (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) => (KXORWkk:{ *:[v16i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) |
| 15069 | /* 40076 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KXORWkk), |
| 15070 | /* 40081 */ GIR_RootConstrainSelectedInstOperands, |
| 15071 | /* 40082 */ // GIR_Coverage, 4430, |
| 15072 | /* 40082 */ GIR_Done, |
| 15073 | /* 40083 */ // Label 980: @40083 |
| 15074 | /* 40083 */ GIM_Reject, |
| 15075 | /* 40084 */ // Label 975: @40084 |
| 15076 | /* 40084 */ GIM_Reject, |
| 15077 | /* 40085 */ // Label 829: @40085 |
| 15078 | /* 40085 */ GIM_Try, /*On fail goto*//*Label 981*/ GIMT_Encode4(40704), |
| 15079 | /* 40090 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 15080 | /* 40093 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 15081 | /* 40096 */ GIM_Try, /*On fail goto*//*Label 982*/ GIMT_Encode4(40158), // Rule ID 25339 // |
| 15082 | /* 40101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 15083 | /* 40104 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15084 | /* 40108 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15085 | /* 40112 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15086 | /* 40116 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15087 | /* 40119 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15088 | /* 40123 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15089 | /* 40127 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15090 | /* 40131 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15091 | /* 40133 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15092 | /* 40140 */ // (xor:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPXORrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15093 | /* 40140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 15094 | /* 40143 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15095 | /* 40145 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15096 | /* 40147 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15097 | /* 40151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15098 | /* 40156 */ GIR_RootConstrainSelectedInstOperands, |
| 15099 | /* 40157 */ // GIR_Coverage, 25339, |
| 15100 | /* 40157 */ GIR_EraseRootFromParent_Done, |
| 15101 | /* 40158 */ // Label 982: @40158 |
| 15102 | /* 40158 */ GIM_Try, /*On fail goto*//*Label 983*/ GIMT_Encode4(40220), // Rule ID 25518 // |
| 15103 | /* 40163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15104 | /* 40166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15105 | /* 40170 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15106 | /* 40174 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15107 | /* 40178 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15108 | /* 40181 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15109 | /* 40185 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15110 | /* 40189 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15111 | /* 40193 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15112 | /* 40195 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15113 | /* 40202 */ // (xor:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPXORQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15114 | /* 40202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 15115 | /* 40205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15116 | /* 40207 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15117 | /* 40209 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15118 | /* 40213 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15119 | /* 40218 */ GIR_RootConstrainSelectedInstOperands, |
| 15120 | /* 40219 */ // GIR_Coverage, 25518, |
| 15121 | /* 40219 */ GIR_EraseRootFromParent_Done, |
| 15122 | /* 40220 */ // Label 983: @40220 |
| 15123 | /* 40220 */ GIM_Try, /*On fail goto*//*Label 984*/ GIMT_Encode4(40282), // Rule ID 18154 // |
| 15124 | /* 40225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 15125 | /* 40228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15126 | /* 40232 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15127 | /* 40236 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15128 | /* 40240 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15129 | /* 40244 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15130 | /* 40247 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15131 | /* 40251 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15132 | /* 40255 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15133 | /* 40257 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15134 | /* 40264 */ // (xor:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15135 | /* 40264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORrm), |
| 15136 | /* 40267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15137 | /* 40269 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15138 | /* 40271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15139 | /* 40275 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15140 | /* 40280 */ GIR_RootConstrainSelectedInstOperands, |
| 15141 | /* 40281 */ // GIR_Coverage, 18154, |
| 15142 | /* 40281 */ GIR_EraseRootFromParent_Done, |
| 15143 | /* 40282 */ // Label 984: @40282 |
| 15144 | /* 40282 */ GIM_Try, /*On fail goto*//*Label 985*/ GIMT_Encode4(40344), // Rule ID 20037 // |
| 15145 | /* 40287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15146 | /* 40290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15147 | /* 40294 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15148 | /* 40298 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15149 | /* 40302 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15150 | /* 40306 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15151 | /* 40309 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15152 | /* 40313 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15153 | /* 40317 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15154 | /* 40319 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15155 | /* 40326 */ // (xor:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15156 | /* 40326 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rm), |
| 15157 | /* 40329 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15158 | /* 40331 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15159 | /* 40333 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15160 | /* 40337 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15161 | /* 40342 */ GIR_RootConstrainSelectedInstOperands, |
| 15162 | /* 40343 */ // GIR_Coverage, 20037, |
| 15163 | /* 40343 */ GIR_EraseRootFromParent_Done, |
| 15164 | /* 40344 */ // Label 985: @40344 |
| 15165 | /* 40344 */ GIM_Try, /*On fail goto*//*Label 986*/ GIMT_Encode4(40576), // Rule ID 21954 // |
| 15166 | /* 40349 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 15167 | /* 40352 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 15168 | /* 40356 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15169 | /* 40360 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15170 | /* 40364 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15171 | /* 40370 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15172 | /* 40372 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15173 | /* 40374 */ // (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] }) |
| 15174 | /* 40374 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 15175 | /* 40377 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15176 | /* 40381 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15177 | /* 40386 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 15178 | /* 40388 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 15179 | /* 40391 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15180 | /* 40395 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15181 | /* 40400 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 15182 | /* 40403 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15183 | /* 40407 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 15184 | /* 40410 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15185 | /* 40415 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15186 | /* 40420 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 15187 | /* 40425 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 15188 | /* 40428 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15189 | /* 40432 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15190 | /* 40437 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 15191 | /* 40439 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 15192 | /* 40442 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15193 | /* 40446 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15194 | /* 40451 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 15195 | /* 40454 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15196 | /* 40458 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 15197 | /* 40461 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15198 | /* 40466 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15199 | /* 40471 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 15200 | /* 40476 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 15201 | /* 40479 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15202 | /* 40483 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15203 | /* 40488 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 15204 | /* 40490 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 15205 | /* 40493 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15206 | /* 40497 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15207 | /* 40502 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 15208 | /* 40505 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15209 | /* 40509 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 15210 | /* 40512 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15211 | /* 40517 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15212 | /* 40522 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 15213 | /* 40527 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 15214 | /* 40530 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 15215 | /* 40534 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15216 | /* 40539 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15217 | /* 40542 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 15218 | /* 40545 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 15219 | /* 40548 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 15220 | /* 40551 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15221 | /* 40553 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15222 | /* 40556 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15223 | /* 40558 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 15224 | /* 40565 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 15225 | /* 40570 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15226 | /* 40575 */ // GIR_Coverage, 21954, |
| 15227 | /* 40575 */ GIR_EraseRootFromParent_Done, |
| 15228 | /* 40576 */ // Label 986: @40576 |
| 15229 | /* 40576 */ GIM_Try, /*On fail goto*//*Label 987*/ GIMT_Encode4(40622), // Rule ID 21962 // |
| 15230 | /* 40581 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15231 | /* 40584 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15232 | /* 40588 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15233 | /* 40592 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15234 | /* 40596 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15235 | /* 40602 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15236 | /* 40604 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15237 | /* 40606 */ // (xor:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, immAllOnesV:{ *:[v16i8] }) => (VPTERNLOGQZ128rri:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, VR128X:{ *:[v16i8] }:$src, VR128X:{ *:[v16i8] }:$src, 15:{ *:[i8] }) |
| 15238 | /* 40606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ128rri), |
| 15239 | /* 40609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15240 | /* 40611 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15241 | /* 40613 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15242 | /* 40615 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15243 | /* 40617 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 15244 | /* 40620 */ GIR_RootConstrainSelectedInstOperands, |
| 15245 | /* 40621 */ // GIR_Coverage, 21962, |
| 15246 | /* 40621 */ GIR_EraseRootFromParent_Done, |
| 15247 | /* 40622 */ // Label 987: @40622 |
| 15248 | /* 40622 */ GIM_Try, /*On fail goto*//*Label 988*/ GIMT_Encode4(40649), // Rule ID 18142 // |
| 15249 | /* 40627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 15250 | /* 40630 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15251 | /* 40634 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15252 | /* 40638 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15253 | /* 40642 */ // (xor:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPXORrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 15254 | /* 40642 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORrr), |
| 15255 | /* 40647 */ GIR_RootConstrainSelectedInstOperands, |
| 15256 | /* 40648 */ // GIR_Coverage, 18142, |
| 15257 | /* 40648 */ GIR_Done, |
| 15258 | /* 40649 */ // Label 988: @40649 |
| 15259 | /* 40649 */ GIM_Try, /*On fail goto*//*Label 989*/ GIMT_Encode4(40676), // Rule ID 18166 // |
| 15260 | /* 40654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 15261 | /* 40657 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15262 | /* 40661 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15263 | /* 40665 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 15264 | /* 40669 */ // (xor:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PXORrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 15265 | /* 40669 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PXORrr), |
| 15266 | /* 40674 */ GIR_RootConstrainSelectedInstOperands, |
| 15267 | /* 40675 */ // GIR_Coverage, 18166, |
| 15268 | /* 40675 */ GIR_Done, |
| 15269 | /* 40676 */ // Label 989: @40676 |
| 15270 | /* 40676 */ GIM_Try, /*On fail goto*//*Label 990*/ GIMT_Encode4(40703), // Rule ID 20029 // |
| 15271 | /* 40681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15272 | /* 40684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15273 | /* 40688 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15274 | /* 40692 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 15275 | /* 40696 */ // (xor:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPXORQZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 15276 | /* 40696 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ128rr), |
| 15277 | /* 40701 */ GIR_RootConstrainSelectedInstOperands, |
| 15278 | /* 40702 */ // GIR_Coverage, 20029, |
| 15279 | /* 40702 */ GIR_Done, |
| 15280 | /* 40703 */ // Label 990: @40703 |
| 15281 | /* 40703 */ GIM_Reject, |
| 15282 | /* 40704 */ // Label 981: @40704 |
| 15283 | /* 40704 */ GIM_Reject, |
| 15284 | /* 40705 */ // Label 830: @40705 |
| 15285 | /* 40705 */ GIM_Try, /*On fail goto*//*Label 991*/ GIMT_Encode4(41448), |
| 15286 | /* 40710 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 15287 | /* 40713 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 15288 | /* 40716 */ GIM_Try, /*On fail goto*//*Label 992*/ GIMT_Encode4(40778), // Rule ID 25319 // |
| 15289 | /* 40721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15290 | /* 40724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15291 | /* 40728 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15292 | /* 40732 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15293 | /* 40736 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15294 | /* 40739 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15295 | /* 40743 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15296 | /* 40747 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15297 | /* 40751 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15298 | /* 40753 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15299 | /* 40760 */ // (xor:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPXORYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15300 | /* 40760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 15301 | /* 40763 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15302 | /* 40765 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15303 | /* 40767 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15304 | /* 40771 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15305 | /* 40776 */ GIR_RootConstrainSelectedInstOperands, |
| 15306 | /* 40777 */ // GIR_Coverage, 25319, |
| 15307 | /* 40777 */ GIR_EraseRootFromParent_Done, |
| 15308 | /* 40778 */ // Label 992: @40778 |
| 15309 | /* 40778 */ GIM_Try, /*On fail goto*//*Label 993*/ GIMT_Encode4(40840), // Rule ID 25330 // |
| 15310 | /* 40783 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15311 | /* 40786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15312 | /* 40790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15313 | /* 40794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15314 | /* 40798 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15315 | /* 40801 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15316 | /* 40805 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15317 | /* 40809 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15318 | /* 40813 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15319 | /* 40815 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15320 | /* 40822 */ // (xor:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VXORPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15321 | /* 40822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 15322 | /* 40825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15323 | /* 40827 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15324 | /* 40829 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15325 | /* 40833 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15326 | /* 40838 */ GIR_RootConstrainSelectedInstOperands, |
| 15327 | /* 40839 */ // GIR_Coverage, 25330, |
| 15328 | /* 40839 */ GIR_EraseRootFromParent_Done, |
| 15329 | /* 40840 */ // Label 993: @40840 |
| 15330 | /* 40840 */ GIM_Try, /*On fail goto*//*Label 994*/ GIMT_Encode4(40902), // Rule ID 25525 // |
| 15331 | /* 40845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15332 | /* 40848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15333 | /* 40852 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15334 | /* 40856 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15335 | /* 40860 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15336 | /* 40863 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15337 | /* 40867 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15338 | /* 40871 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15339 | /* 40875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15340 | /* 40877 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15341 | /* 40884 */ // (xor:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPXORQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15342 | /* 40884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 15343 | /* 40887 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15344 | /* 40889 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15345 | /* 40891 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15346 | /* 40895 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15347 | /* 40900 */ GIR_RootConstrainSelectedInstOperands, |
| 15348 | /* 40901 */ // GIR_Coverage, 25525, |
| 15349 | /* 40901 */ GIR_EraseRootFromParent_Done, |
| 15350 | /* 40902 */ // Label 994: @40902 |
| 15351 | /* 40902 */ GIM_Try, /*On fail goto*//*Label 995*/ GIMT_Encode4(40964), // Rule ID 18099 // |
| 15352 | /* 40907 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15353 | /* 40910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15354 | /* 40914 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15355 | /* 40918 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15356 | /* 40922 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15357 | /* 40926 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15358 | /* 40929 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15359 | /* 40933 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15360 | /* 40937 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15361 | /* 40939 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15362 | /* 40946 */ // (xor:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15363 | /* 40946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 15364 | /* 40949 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15365 | /* 40951 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15366 | /* 40953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15367 | /* 40957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15368 | /* 40962 */ GIR_RootConstrainSelectedInstOperands, |
| 15369 | /* 40963 */ // GIR_Coverage, 18099, |
| 15370 | /* 40963 */ GIR_EraseRootFromParent_Done, |
| 15371 | /* 40964 */ // Label 995: @40964 |
| 15372 | /* 40964 */ GIM_Try, /*On fail goto*//*Label 996*/ GIMT_Encode4(41026), // Rule ID 18129 // |
| 15373 | /* 40969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15374 | /* 40972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15375 | /* 40976 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15376 | /* 40980 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15377 | /* 40984 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15378 | /* 40988 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15379 | /* 40991 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15380 | /* 40995 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15381 | /* 40999 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15382 | /* 41001 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15383 | /* 41008 */ // (xor:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VXORPSYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15384 | /* 41008 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 15385 | /* 41011 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15386 | /* 41013 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15387 | /* 41015 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15388 | /* 41019 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15389 | /* 41024 */ GIR_RootConstrainSelectedInstOperands, |
| 15390 | /* 41025 */ // GIR_Coverage, 18129, |
| 15391 | /* 41025 */ GIR_EraseRootFromParent_Done, |
| 15392 | /* 41026 */ // Label 996: @41026 |
| 15393 | /* 41026 */ GIM_Try, /*On fail goto*//*Label 997*/ GIMT_Encode4(41088), // Rule ID 20054 // |
| 15394 | /* 41031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15395 | /* 41034 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15396 | /* 41038 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15397 | /* 41042 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15398 | /* 41046 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15399 | /* 41050 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15400 | /* 41053 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15401 | /* 41057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15402 | /* 41061 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15403 | /* 41063 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15404 | /* 41070 */ // (xor:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15405 | /* 41070 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 15406 | /* 41073 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15407 | /* 41075 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15408 | /* 41077 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15409 | /* 41081 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15410 | /* 41086 */ GIR_RootConstrainSelectedInstOperands, |
| 15411 | /* 41087 */ // GIR_Coverage, 20054, |
| 15412 | /* 41087 */ GIR_EraseRootFromParent_Done, |
| 15413 | /* 41088 */ // Label 997: @41088 |
| 15414 | /* 41088 */ GIM_Try, /*On fail goto*//*Label 998*/ GIMT_Encode4(41320), // Rule ID 21959 // |
| 15415 | /* 41093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 15416 | /* 41096 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15417 | /* 41100 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15418 | /* 41104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15419 | /* 41108 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15420 | /* 41114 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15421 | /* 41116 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15422 | /* 41118 */ // (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] }) |
| 15423 | /* 41118 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 15424 | /* 41121 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15425 | /* 41125 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15426 | /* 41130 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 15427 | /* 41132 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 15428 | /* 41135 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15429 | /* 41139 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15430 | /* 41144 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 15431 | /* 41147 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15432 | /* 41151 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 15433 | /* 41154 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15434 | /* 41159 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15435 | /* 41164 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15436 | /* 41169 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 15437 | /* 41172 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15438 | /* 41176 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15439 | /* 41181 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 15440 | /* 41183 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 15441 | /* 41186 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15442 | /* 41190 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15443 | /* 41195 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 15444 | /* 41198 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15445 | /* 41202 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 15446 | /* 41205 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15447 | /* 41210 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15448 | /* 41215 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15449 | /* 41220 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 15450 | /* 41223 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15451 | /* 41227 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15452 | /* 41232 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 15453 | /* 41234 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 15454 | /* 41237 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15455 | /* 41241 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15456 | /* 41246 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 15457 | /* 41249 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15458 | /* 41253 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 15459 | /* 41256 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15460 | /* 41261 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15461 | /* 41266 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15462 | /* 41271 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 15463 | /* 41274 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 15464 | /* 41278 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15465 | /* 41283 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15466 | /* 41286 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 15467 | /* 41289 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 15468 | /* 41292 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 15469 | /* 41295 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15470 | /* 41297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15471 | /* 41300 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15472 | /* 41302 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 15473 | /* 41309 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 15474 | /* 41314 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15475 | /* 41319 */ // GIR_Coverage, 21959, |
| 15476 | /* 41319 */ GIR_EraseRootFromParent_Done, |
| 15477 | /* 41320 */ // Label 998: @41320 |
| 15478 | /* 41320 */ GIM_Try, /*On fail goto*//*Label 999*/ GIMT_Encode4(41366), // Rule ID 21967 // |
| 15479 | /* 41325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15480 | /* 41328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15481 | /* 41332 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15482 | /* 41336 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15483 | /* 41340 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15484 | /* 41346 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15485 | /* 41348 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15486 | /* 41350 */ // (xor:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, immAllOnesV:{ *:[v16i16] }) => (VPTERNLOGQZ256rri:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, VR256X:{ *:[v16i16] }:$src, VR256X:{ *:[v16i16] }:$src, 15:{ *:[i8] }) |
| 15487 | /* 41350 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ256rri), |
| 15488 | /* 41353 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15489 | /* 41355 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15490 | /* 41357 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15491 | /* 41359 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15492 | /* 41361 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 15493 | /* 41364 */ GIR_RootConstrainSelectedInstOperands, |
| 15494 | /* 41365 */ // GIR_Coverage, 21967, |
| 15495 | /* 41365 */ GIR_EraseRootFromParent_Done, |
| 15496 | /* 41366 */ // Label 999: @41366 |
| 15497 | /* 41366 */ GIM_Try, /*On fail goto*//*Label 1000*/ GIMT_Encode4(41393), // Rule ID 18087 // |
| 15498 | /* 41371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15499 | /* 41374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15500 | /* 41378 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15501 | /* 41382 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15502 | /* 41386 */ // (xor:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPXORYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 15503 | /* 41386 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORYrr), |
| 15504 | /* 41391 */ GIR_RootConstrainSelectedInstOperands, |
| 15505 | /* 41392 */ // GIR_Coverage, 18087, |
| 15506 | /* 41392 */ GIR_Done, |
| 15507 | /* 41393 */ // Label 1000: @41393 |
| 15508 | /* 41393 */ GIM_Try, /*On fail goto*//*Label 1001*/ GIMT_Encode4(41420), // Rule ID 18113 // |
| 15509 | /* 41398 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15510 | /* 41401 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15511 | /* 41405 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15512 | /* 41409 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15513 | /* 41413 */ // (xor:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VXORPSYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 15514 | /* 41413 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VXORPSYrr), |
| 15515 | /* 41418 */ GIR_RootConstrainSelectedInstOperands, |
| 15516 | /* 41419 */ // GIR_Coverage, 18113, |
| 15517 | /* 41419 */ GIR_Done, |
| 15518 | /* 41420 */ // Label 1001: @41420 |
| 15519 | /* 41420 */ GIM_Try, /*On fail goto*//*Label 1002*/ GIMT_Encode4(41447), // Rule ID 20046 // |
| 15520 | /* 41425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15521 | /* 41428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15522 | /* 41432 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15523 | /* 41436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15524 | /* 41440 */ // (xor:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPXORQZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 15525 | /* 41440 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rr), |
| 15526 | /* 41445 */ GIR_RootConstrainSelectedInstOperands, |
| 15527 | /* 41446 */ // GIR_Coverage, 20046, |
| 15528 | /* 41446 */ GIR_Done, |
| 15529 | /* 41447 */ // Label 1002: @41447 |
| 15530 | /* 41447 */ GIM_Reject, |
| 15531 | /* 41448 */ // Label 991: @41448 |
| 15532 | /* 41448 */ GIM_Reject, |
| 15533 | /* 41449 */ // Label 831: @41449 |
| 15534 | /* 41449 */ GIM_Try, /*On fail goto*//*Label 1003*/ GIMT_Encode4(41646), |
| 15535 | /* 41454 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 15536 | /* 41457 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 15537 | /* 41460 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15538 | /* 41464 */ GIM_Try, /*On fail goto*//*Label 1004*/ GIMT_Encode4(41522), // Rule ID 24309 // |
| 15539 | /* 41469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15540 | /* 41472 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15541 | /* 41476 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15542 | /* 41480 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15543 | /* 41483 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15544 | /* 41487 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15545 | /* 41491 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15546 | /* 41495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15547 | /* 41497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15548 | /* 41504 */ // (xor:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPXORDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15549 | /* 41504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZrm), |
| 15550 | /* 41507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15551 | /* 41509 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15552 | /* 41511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15553 | /* 41515 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15554 | /* 41520 */ GIR_RootConstrainSelectedInstOperands, |
| 15555 | /* 41521 */ // GIR_Coverage, 24309, |
| 15556 | /* 41521 */ GIR_EraseRootFromParent_Done, |
| 15557 | /* 41522 */ // Label 1004: @41522 |
| 15558 | /* 41522 */ GIM_Try, /*On fail goto*//*Label 1005*/ GIMT_Encode4(41580), // Rule ID 5828 // |
| 15559 | /* 41527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15560 | /* 41530 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15561 | /* 41534 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15562 | /* 41538 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15563 | /* 41542 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15564 | /* 41545 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15565 | /* 41549 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15566 | /* 41553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15567 | /* 41555 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15568 | /* 41562 */ // (xor:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15569 | /* 41562 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORDZrm), |
| 15570 | /* 41565 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15571 | /* 41567 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15572 | /* 41569 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15573 | /* 41573 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15574 | /* 41578 */ GIR_RootConstrainSelectedInstOperands, |
| 15575 | /* 41579 */ // GIR_Coverage, 5828, |
| 15576 | /* 41579 */ GIR_EraseRootFromParent_Done, |
| 15577 | /* 41580 */ // Label 1005: @41580 |
| 15578 | /* 41580 */ GIM_Try, /*On fail goto*//*Label 1006*/ GIMT_Encode4(41622), // Rule ID 21952 // |
| 15579 | /* 41585 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15580 | /* 41588 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15581 | /* 41592 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15582 | /* 41596 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15583 | /* 41602 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15584 | /* 41604 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15585 | /* 41606 */ // (xor:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, immAllOnesV:{ *:[v16i32] }) => (VPTERNLOGQZrri:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, VR512:{ *:[v16i32] }:$src, VR512:{ *:[v16i32] }:$src, 15:{ *:[i8] }) |
| 15586 | /* 41606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 15587 | /* 41609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15588 | /* 41611 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15589 | /* 41613 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15590 | /* 41615 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15591 | /* 41617 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 15592 | /* 41620 */ GIR_RootConstrainSelectedInstOperands, |
| 15593 | /* 41621 */ // GIR_Coverage, 21952, |
| 15594 | /* 41621 */ GIR_EraseRootFromParent_Done, |
| 15595 | /* 41622 */ // Label 1006: @41622 |
| 15596 | /* 41622 */ GIM_Try, /*On fail goto*//*Label 1007*/ GIMT_Encode4(41645), // Rule ID 5825 // |
| 15597 | /* 41627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15598 | /* 41630 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15599 | /* 41634 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15600 | /* 41638 */ // (xor:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPXORDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 15601 | /* 41638 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORDZrr), |
| 15602 | /* 41643 */ GIR_RootConstrainSelectedInstOperands, |
| 15603 | /* 41644 */ // GIR_Coverage, 5825, |
| 15604 | /* 41644 */ GIR_Done, |
| 15605 | /* 41645 */ // Label 1007: @41645 |
| 15606 | /* 41645 */ GIM_Reject, |
| 15607 | /* 41646 */ // Label 1003: @41646 |
| 15608 | /* 41646 */ GIM_Reject, |
| 15609 | /* 41647 */ // Label 832: @41647 |
| 15610 | /* 41647 */ GIM_Try, /*On fail goto*//*Label 1008*/ GIMT_Encode4(41904), |
| 15611 | /* 41652 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 15612 | /* 41655 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 15613 | /* 41658 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15614 | /* 41662 */ GIM_Try, /*On fail goto*//*Label 1009*/ GIMT_Encode4(41722), // Rule ID 23770 // |
| 15615 | /* 41667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 15616 | /* 41670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15617 | /* 41674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15618 | /* 41678 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 15619 | /* 41682 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 15620 | /* 41686 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15621 | /* 41691 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15622 | /* 41695 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15623 | /* 41701 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15624 | /* 41703 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15625 | /* 41707 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15626 | /* 41709 */ // (xor:{ *:[v32i1] } (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, immAllOnesV:{ *:[v32i1] }), VK32:{ *:[v32i1] }:$src2) => (KXNORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 15627 | /* 41709 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORDkk), |
| 15628 | /* 41712 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15629 | /* 41714 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15630 | /* 41718 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 15631 | /* 41720 */ GIR_RootConstrainSelectedInstOperands, |
| 15632 | /* 41721 */ // GIR_Coverage, 23770, |
| 15633 | /* 41721 */ GIR_EraseRootFromParent_Done, |
| 15634 | /* 41722 */ // Label 1009: @41722 |
| 15635 | /* 41722 */ GIM_Try, /*On fail goto*//*Label 1010*/ GIMT_Encode4(41785), // Rule ID 4427 // |
| 15636 | /* 41727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 15637 | /* 41730 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15638 | /* 41734 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15639 | /* 41738 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 15640 | /* 41742 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 15641 | /* 41746 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15642 | /* 41751 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15643 | /* 41756 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 15644 | /* 41760 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15645 | /* 41766 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15646 | /* 41768 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15647 | /* 41770 */ // (xor:{ *:[v32i1] } (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2), immAllOnesV:{ *:[v32i1] }) => (KXNORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 15648 | /* 41770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORDkk), |
| 15649 | /* 41773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15650 | /* 41775 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15651 | /* 41779 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15652 | /* 41783 */ GIR_RootConstrainSelectedInstOperands, |
| 15653 | /* 41784 */ // GIR_Coverage, 4427, |
| 15654 | /* 41784 */ GIR_EraseRootFromParent_Done, |
| 15655 | /* 41785 */ // Label 1010: @41785 |
| 15656 | /* 41785 */ GIM_Try, /*On fail goto*//*Label 1011*/ GIMT_Encode4(41845), // Rule ID 23771 // |
| 15657 | /* 41790 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 15658 | /* 41793 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15659 | /* 41797 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15660 | /* 41801 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 15661 | /* 41805 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v32s1, |
| 15662 | /* 41809 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v32s1, |
| 15663 | /* 41813 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15664 | /* 41818 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15665 | /* 41822 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15666 | /* 41828 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 15667 | /* 41830 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15668 | /* 41832 */ // (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src2, (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, immAllOnesV:{ *:[v32i1] })) => (KXNORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 15669 | /* 41832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORDkk), |
| 15670 | /* 41835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15671 | /* 41837 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 15672 | /* 41841 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 15673 | /* 41843 */ GIR_RootConstrainSelectedInstOperands, |
| 15674 | /* 41844 */ // GIR_Coverage, 23771, |
| 15675 | /* 41844 */ GIR_EraseRootFromParent_Done, |
| 15676 | /* 41845 */ // Label 1011: @41845 |
| 15677 | /* 41845 */ GIM_Try, /*On fail goto*//*Label 1012*/ GIMT_Encode4(41880), // Rule ID 4415 // |
| 15678 | /* 41850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 15679 | /* 41853 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15680 | /* 41857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15681 | /* 41861 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15682 | /* 41867 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15683 | /* 41869 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15684 | /* 41871 */ // (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src, immAllOnesV:{ *:[v32i1] }) => (KNOTDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src) |
| 15685 | /* 41871 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KNOTDkk), |
| 15686 | /* 41874 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15687 | /* 41876 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15688 | /* 41878 */ GIR_RootConstrainSelectedInstOperands, |
| 15689 | /* 41879 */ // GIR_Coverage, 4415, |
| 15690 | /* 41879 */ GIR_EraseRootFromParent_Done, |
| 15691 | /* 41880 */ // Label 1012: @41880 |
| 15692 | /* 41880 */ GIM_Try, /*On fail goto*//*Label 1013*/ GIMT_Encode4(41903), // Rule ID 4431 // |
| 15693 | /* 41885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 15694 | /* 41888 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15695 | /* 41892 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 15696 | /* 41896 */ // (xor:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) => (KXORDkk:{ *:[v32i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) |
| 15697 | /* 41896 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KXORDkk), |
| 15698 | /* 41901 */ GIR_RootConstrainSelectedInstOperands, |
| 15699 | /* 41902 */ // GIR_Coverage, 4431, |
| 15700 | /* 41902 */ GIR_Done, |
| 15701 | /* 41903 */ // Label 1013: @41903 |
| 15702 | /* 41903 */ GIM_Reject, |
| 15703 | /* 41904 */ // Label 1008: @41904 |
| 15704 | /* 41904 */ GIM_Reject, |
| 15705 | /* 41905 */ // Label 833: @41905 |
| 15706 | /* 41905 */ GIM_Try, /*On fail goto*//*Label 1014*/ GIMT_Encode4(42648), |
| 15707 | /* 41910 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 15708 | /* 41913 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 15709 | /* 41916 */ GIM_Try, /*On fail goto*//*Label 1015*/ GIMT_Encode4(41978), // Rule ID 25318 // |
| 15710 | /* 41921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15711 | /* 41924 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15712 | /* 41928 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15713 | /* 41932 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15714 | /* 41936 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15715 | /* 41939 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15716 | /* 41943 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15717 | /* 41947 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15718 | /* 41951 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15719 | /* 41953 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15720 | /* 41960 */ // (xor:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPXORYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15721 | /* 41960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 15722 | /* 41963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15723 | /* 41965 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15724 | /* 41967 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15725 | /* 41971 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15726 | /* 41976 */ GIR_RootConstrainSelectedInstOperands, |
| 15727 | /* 41977 */ // GIR_Coverage, 25318, |
| 15728 | /* 41977 */ GIR_EraseRootFromParent_Done, |
| 15729 | /* 41978 */ // Label 1015: @41978 |
| 15730 | /* 41978 */ GIM_Try, /*On fail goto*//*Label 1016*/ GIMT_Encode4(42040), // Rule ID 25329 // |
| 15731 | /* 41983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15732 | /* 41986 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15733 | /* 41990 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15734 | /* 41994 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15735 | /* 41998 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15736 | /* 42001 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15737 | /* 42005 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15738 | /* 42009 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15739 | /* 42013 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15740 | /* 42015 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15741 | /* 42022 */ // (xor:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VXORPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15742 | /* 42022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 15743 | /* 42025 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15744 | /* 42027 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15745 | /* 42029 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15746 | /* 42033 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15747 | /* 42038 */ GIR_RootConstrainSelectedInstOperands, |
| 15748 | /* 42039 */ // GIR_Coverage, 25329, |
| 15749 | /* 42039 */ GIR_EraseRootFromParent_Done, |
| 15750 | /* 42040 */ // Label 1016: @42040 |
| 15751 | /* 42040 */ GIM_Try, /*On fail goto*//*Label 1017*/ GIMT_Encode4(42102), // Rule ID 25524 // |
| 15752 | /* 42045 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15753 | /* 42048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15754 | /* 42052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15755 | /* 42056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15756 | /* 42060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15757 | /* 42063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15758 | /* 42067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15759 | /* 42071 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15760 | /* 42075 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15761 | /* 42077 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15762 | /* 42084 */ // (xor:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPXORQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15763 | /* 42084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 15764 | /* 42087 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15765 | /* 42089 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15766 | /* 42091 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15767 | /* 42095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15768 | /* 42100 */ GIR_RootConstrainSelectedInstOperands, |
| 15769 | /* 42101 */ // GIR_Coverage, 25524, |
| 15770 | /* 42101 */ GIR_EraseRootFromParent_Done, |
| 15771 | /* 42102 */ // Label 1017: @42102 |
| 15772 | /* 42102 */ GIM_Try, /*On fail goto*//*Label 1018*/ GIMT_Encode4(42164), // Rule ID 18098 // |
| 15773 | /* 42107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15774 | /* 42110 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15775 | /* 42114 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15776 | /* 42118 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15777 | /* 42122 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15778 | /* 42126 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15779 | /* 42129 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15780 | /* 42133 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15781 | /* 42137 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15782 | /* 42139 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15783 | /* 42146 */ // (xor:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15784 | /* 42146 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORYrm), |
| 15785 | /* 42149 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15786 | /* 42151 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15787 | /* 42153 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15788 | /* 42157 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15789 | /* 42162 */ GIR_RootConstrainSelectedInstOperands, |
| 15790 | /* 42163 */ // GIR_Coverage, 18098, |
| 15791 | /* 42163 */ GIR_EraseRootFromParent_Done, |
| 15792 | /* 42164 */ // Label 1018: @42164 |
| 15793 | /* 42164 */ GIM_Try, /*On fail goto*//*Label 1019*/ GIMT_Encode4(42226), // Rule ID 18128 // |
| 15794 | /* 42169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15795 | /* 42172 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15796 | /* 42176 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15797 | /* 42180 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15798 | /* 42184 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15799 | /* 42188 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15800 | /* 42191 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15801 | /* 42195 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15802 | /* 42199 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15803 | /* 42201 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15804 | /* 42208 */ // (xor:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VXORPSYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15805 | /* 42208 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VXORPSYrm), |
| 15806 | /* 42211 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15807 | /* 42213 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15808 | /* 42215 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15809 | /* 42219 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15810 | /* 42224 */ GIR_RootConstrainSelectedInstOperands, |
| 15811 | /* 42225 */ // GIR_Coverage, 18128, |
| 15812 | /* 42225 */ GIR_EraseRootFromParent_Done, |
| 15813 | /* 42226 */ // Label 1019: @42226 |
| 15814 | /* 42226 */ GIM_Try, /*On fail goto*//*Label 1020*/ GIMT_Encode4(42288), // Rule ID 20053 // |
| 15815 | /* 42231 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15816 | /* 42234 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15817 | /* 42238 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15818 | /* 42242 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15819 | /* 42246 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15820 | /* 42250 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15821 | /* 42253 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15822 | /* 42257 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15823 | /* 42261 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15824 | /* 42263 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15825 | /* 42270 */ // (xor:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15826 | /* 42270 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rm), |
| 15827 | /* 42273 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15828 | /* 42275 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15829 | /* 42277 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15830 | /* 42281 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15831 | /* 42286 */ GIR_RootConstrainSelectedInstOperands, |
| 15832 | /* 42287 */ // GIR_Coverage, 20053, |
| 15833 | /* 42287 */ GIR_EraseRootFromParent_Done, |
| 15834 | /* 42288 */ // Label 1020: @42288 |
| 15835 | /* 42288 */ GIM_Try, /*On fail goto*//*Label 1021*/ GIMT_Encode4(42520), // Rule ID 21958 // |
| 15836 | /* 42293 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 15837 | /* 42296 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15838 | /* 42300 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15839 | /* 42304 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15840 | /* 42308 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15841 | /* 42314 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15842 | /* 42316 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15843 | /* 42318 */ // (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] }) |
| 15844 | /* 42318 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 15845 | /* 42321 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15846 | /* 42325 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15847 | /* 42330 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 15848 | /* 42332 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 15849 | /* 42335 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15850 | /* 42339 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15851 | /* 42344 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 15852 | /* 42347 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15853 | /* 42351 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 15854 | /* 42354 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15855 | /* 42359 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15856 | /* 42364 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15857 | /* 42369 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 15858 | /* 42372 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15859 | /* 42376 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15860 | /* 42381 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 15861 | /* 42383 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 15862 | /* 42386 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15863 | /* 42390 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15864 | /* 42395 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 15865 | /* 42398 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15866 | /* 42402 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 15867 | /* 42405 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15868 | /* 42410 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15869 | /* 42415 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15870 | /* 42420 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 15871 | /* 42423 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15872 | /* 42427 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15873 | /* 42432 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 15874 | /* 42434 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 15875 | /* 42437 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15876 | /* 42441 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15877 | /* 42446 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 15878 | /* 42449 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 15879 | /* 42453 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 15880 | /* 42456 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 15881 | /* 42461 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15882 | /* 42466 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 15883 | /* 42471 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 15884 | /* 42474 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 15885 | /* 42478 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15886 | /* 42483 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 15887 | /* 42486 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 15888 | /* 42489 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 15889 | /* 42492 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/15, |
| 15890 | /* 42495 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15891 | /* 42497 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15892 | /* 42500 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15893 | /* 42502 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 15894 | /* 42509 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 15895 | /* 42514 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 15896 | /* 42519 */ // GIR_Coverage, 21958, |
| 15897 | /* 42519 */ GIR_EraseRootFromParent_Done, |
| 15898 | /* 42520 */ // Label 1021: @42520 |
| 15899 | /* 42520 */ GIM_Try, /*On fail goto*//*Label 1022*/ GIMT_Encode4(42566), // Rule ID 21966 // |
| 15900 | /* 42525 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15901 | /* 42528 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15902 | /* 42532 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15903 | /* 42536 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15904 | /* 42540 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 15905 | /* 42546 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 15906 | /* 42548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15907 | /* 42550 */ // (xor:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, immAllOnesV:{ *:[v32i8] }) => (VPTERNLOGQZ256rri:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, VR256X:{ *:[v32i8] }:$src, VR256X:{ *:[v32i8] }:$src, 15:{ *:[i8] }) |
| 15908 | /* 42550 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZ256rri), |
| 15909 | /* 42553 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15910 | /* 42555 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15911 | /* 42557 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15912 | /* 42559 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15913 | /* 42561 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 15914 | /* 42564 */ GIR_RootConstrainSelectedInstOperands, |
| 15915 | /* 42565 */ // GIR_Coverage, 21966, |
| 15916 | /* 42565 */ GIR_EraseRootFromParent_Done, |
| 15917 | /* 42566 */ // Label 1022: @42566 |
| 15918 | /* 42566 */ GIM_Try, /*On fail goto*//*Label 1023*/ GIMT_Encode4(42593), // Rule ID 18086 // |
| 15919 | /* 42571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 15920 | /* 42574 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15921 | /* 42578 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15922 | /* 42582 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15923 | /* 42586 */ // (xor:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPXORYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 15924 | /* 42586 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORYrr), |
| 15925 | /* 42591 */ GIR_RootConstrainSelectedInstOperands, |
| 15926 | /* 42592 */ // GIR_Coverage, 18086, |
| 15927 | /* 42592 */ GIR_Done, |
| 15928 | /* 42593 */ // Label 1023: @42593 |
| 15929 | /* 42593 */ GIM_Try, /*On fail goto*//*Label 1024*/ GIMT_Encode4(42620), // Rule ID 18112 // |
| 15930 | /* 42598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX1Only), |
| 15931 | /* 42601 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15932 | /* 42605 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15933 | /* 42609 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 15934 | /* 42613 */ // (xor:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VXORPSYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 15935 | /* 42613 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VXORPSYrr), |
| 15936 | /* 42618 */ GIR_RootConstrainSelectedInstOperands, |
| 15937 | /* 42619 */ // GIR_Coverage, 18112, |
| 15938 | /* 42619 */ GIR_Done, |
| 15939 | /* 42620 */ // Label 1024: @42620 |
| 15940 | /* 42620 */ GIM_Try, /*On fail goto*//*Label 1025*/ GIMT_Encode4(42647), // Rule ID 20045 // |
| 15941 | /* 42625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 15942 | /* 42628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15943 | /* 42632 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15944 | /* 42636 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 15945 | /* 42640 */ // (xor:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPXORQZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 15946 | /* 42640 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZ256rr), |
| 15947 | /* 42645 */ GIR_RootConstrainSelectedInstOperands, |
| 15948 | /* 42646 */ // GIR_Coverage, 20045, |
| 15949 | /* 42646 */ GIR_Done, |
| 15950 | /* 42647 */ // Label 1025: @42647 |
| 15951 | /* 42647 */ GIM_Reject, |
| 15952 | /* 42648 */ // Label 1014: @42648 |
| 15953 | /* 42648 */ GIM_Reject, |
| 15954 | /* 42649 */ // Label 834: @42649 |
| 15955 | /* 42649 */ GIM_Try, /*On fail goto*//*Label 1026*/ GIMT_Encode4(42846), |
| 15956 | /* 42654 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 15957 | /* 42657 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 15958 | /* 42660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15959 | /* 42664 */ GIM_Try, /*On fail goto*//*Label 1027*/ GIMT_Encode4(42722), // Rule ID 25531 // |
| 15960 | /* 42669 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15961 | /* 42672 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15962 | /* 42676 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15963 | /* 42680 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15964 | /* 42683 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15965 | /* 42687 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15966 | /* 42691 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15967 | /* 42695 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15968 | /* 42697 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15969 | /* 42704 */ // (xor:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPXORQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15970 | /* 42704 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 15971 | /* 42707 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15972 | /* 42709 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 15973 | /* 42711 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15974 | /* 42715 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15975 | /* 42720 */ GIR_RootConstrainSelectedInstOperands, |
| 15976 | /* 42721 */ // GIR_Coverage, 25531, |
| 15977 | /* 42721 */ GIR_EraseRootFromParent_Done, |
| 15978 | /* 42722 */ // Label 1027: @42722 |
| 15979 | /* 42722 */ GIM_Try, /*On fail goto*//*Label 1028*/ GIMT_Encode4(42780), // Rule ID 20070 // |
| 15980 | /* 42727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 15981 | /* 42730 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 15982 | /* 42734 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 15983 | /* 42738 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 15984 | /* 42742 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 15985 | /* 42745 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 15986 | /* 42749 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 15987 | /* 42753 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15988 | /* 42755 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 15989 | /* 42762 */ // (xor:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 15990 | /* 42762 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 15991 | /* 42765 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15992 | /* 42767 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 15993 | /* 42769 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 15994 | /* 42773 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 15995 | /* 42778 */ GIR_RootConstrainSelectedInstOperands, |
| 15996 | /* 42779 */ // GIR_Coverage, 20070, |
| 15997 | /* 42779 */ GIR_EraseRootFromParent_Done, |
| 15998 | /* 42780 */ // Label 1028: @42780 |
| 15999 | /* 42780 */ GIM_Try, /*On fail goto*//*Label 1029*/ GIMT_Encode4(42822), // Rule ID 21951 // |
| 16000 | /* 42785 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16001 | /* 42788 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16002 | /* 42792 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16003 | /* 42796 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16004 | /* 42802 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16005 | /* 42804 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16006 | /* 42806 */ // (xor:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, immAllOnesV:{ *:[v32i16] }) => (VPTERNLOGQZrri:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, VR512:{ *:[v32i16] }:$src, VR512:{ *:[v32i16] }:$src, 15:{ *:[i8] }) |
| 16007 | /* 42806 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 16008 | /* 42809 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16009 | /* 42811 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16010 | /* 42813 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16011 | /* 42815 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16012 | /* 42817 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 16013 | /* 42820 */ GIR_RootConstrainSelectedInstOperands, |
| 16014 | /* 42821 */ // GIR_Coverage, 21951, |
| 16015 | /* 42821 */ GIR_EraseRootFromParent_Done, |
| 16016 | /* 42822 */ // Label 1029: @42822 |
| 16017 | /* 42822 */ GIM_Try, /*On fail goto*//*Label 1030*/ GIMT_Encode4(42845), // Rule ID 20062 // |
| 16018 | /* 42827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16019 | /* 42830 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16020 | /* 42834 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16021 | /* 42838 */ // (xor:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPXORQZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 16022 | /* 42838 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZrr), |
| 16023 | /* 42843 */ GIR_RootConstrainSelectedInstOperands, |
| 16024 | /* 42844 */ // GIR_Coverage, 20062, |
| 16025 | /* 42844 */ GIR_Done, |
| 16026 | /* 42845 */ // Label 1030: @42845 |
| 16027 | /* 42845 */ GIM_Reject, |
| 16028 | /* 42846 */ // Label 1026: @42846 |
| 16029 | /* 42846 */ GIM_Reject, |
| 16030 | /* 42847 */ // Label 835: @42847 |
| 16031 | /* 42847 */ GIM_Try, /*On fail goto*//*Label 1031*/ GIMT_Encode4(43104), |
| 16032 | /* 42852 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 16033 | /* 42855 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s1, |
| 16034 | /* 42858 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16035 | /* 42862 */ GIM_Try, /*On fail goto*//*Label 1032*/ GIMT_Encode4(42922), // Rule ID 23772 // |
| 16036 | /* 42867 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16037 | /* 42870 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16038 | /* 42874 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16039 | /* 42878 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 16040 | /* 42882 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 16041 | /* 42886 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16042 | /* 42891 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16043 | /* 42895 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16044 | /* 42901 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16045 | /* 42903 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16046 | /* 42907 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16047 | /* 42909 */ // (xor:{ *:[v64i1] } (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, immAllOnesV:{ *:[v64i1] }), VK64:{ *:[v64i1] }:$src2) => (KXNORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 16048 | /* 42909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORQkk), |
| 16049 | /* 42912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16050 | /* 42914 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16051 | /* 42918 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 16052 | /* 42920 */ GIR_RootConstrainSelectedInstOperands, |
| 16053 | /* 42921 */ // GIR_Coverage, 23772, |
| 16054 | /* 42921 */ GIR_EraseRootFromParent_Done, |
| 16055 | /* 42922 */ // Label 1032: @42922 |
| 16056 | /* 42922 */ GIM_Try, /*On fail goto*//*Label 1033*/ GIMT_Encode4(42985), // Rule ID 4428 // |
| 16057 | /* 42927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16058 | /* 42930 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16059 | /* 42934 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16060 | /* 42938 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 16061 | /* 42942 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 16062 | /* 42946 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16063 | /* 42951 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16064 | /* 42956 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 16065 | /* 42960 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16066 | /* 42966 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16067 | /* 42968 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16068 | /* 42970 */ // (xor:{ *:[v64i1] } (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2), immAllOnesV:{ *:[v64i1] }) => (KXNORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 16069 | /* 42970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORQkk), |
| 16070 | /* 42973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16071 | /* 42975 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16072 | /* 42979 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 16073 | /* 42983 */ GIR_RootConstrainSelectedInstOperands, |
| 16074 | /* 42984 */ // GIR_Coverage, 4428, |
| 16075 | /* 42984 */ GIR_EraseRootFromParent_Done, |
| 16076 | /* 42985 */ // Label 1033: @42985 |
| 16077 | /* 42985 */ GIM_Try, /*On fail goto*//*Label 1034*/ GIMT_Encode4(43045), // Rule ID 23773 // |
| 16078 | /* 42990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16079 | /* 42993 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16080 | /* 42997 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16081 | /* 43001 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 16082 | /* 43005 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v64s1, |
| 16083 | /* 43009 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v64s1, |
| 16084 | /* 43013 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16085 | /* 43018 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16086 | /* 43022 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16087 | /* 43028 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 16088 | /* 43030 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 16089 | /* 43032 */ // (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src2, (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, immAllOnesV:{ *:[v64i1] })) => (KXNORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 16090 | /* 43032 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KXNORQkk), |
| 16091 | /* 43035 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16092 | /* 43037 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 16093 | /* 43041 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 16094 | /* 43043 */ GIR_RootConstrainSelectedInstOperands, |
| 16095 | /* 43044 */ // GIR_Coverage, 23773, |
| 16096 | /* 43044 */ GIR_EraseRootFromParent_Done, |
| 16097 | /* 43045 */ // Label 1034: @43045 |
| 16098 | /* 43045 */ GIM_Try, /*On fail goto*//*Label 1035*/ GIMT_Encode4(43080), // Rule ID 4416 // |
| 16099 | /* 43050 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16100 | /* 43053 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16101 | /* 43057 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16102 | /* 43061 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16103 | /* 43067 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16104 | /* 43069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16105 | /* 43071 */ // (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src, immAllOnesV:{ *:[v64i1] }) => (KNOTQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src) |
| 16106 | /* 43071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KNOTQkk), |
| 16107 | /* 43074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16108 | /* 43076 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16109 | /* 43078 */ GIR_RootConstrainSelectedInstOperands, |
| 16110 | /* 43079 */ // GIR_Coverage, 4416, |
| 16111 | /* 43079 */ GIR_EraseRootFromParent_Done, |
| 16112 | /* 43080 */ // Label 1035: @43080 |
| 16113 | /* 43080 */ GIM_Try, /*On fail goto*//*Label 1036*/ GIMT_Encode4(43103), // Rule ID 4432 // |
| 16114 | /* 43085 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16115 | /* 43088 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16116 | /* 43092 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16117 | /* 43096 */ // (xor:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) => (KXORQkk:{ *:[v64i1] } VK64:{ *:[v64i1] }:$src1, VK64:{ *:[v64i1] }:$src2) |
| 16118 | /* 43096 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::KXORQkk), |
| 16119 | /* 43101 */ GIR_RootConstrainSelectedInstOperands, |
| 16120 | /* 43102 */ // GIR_Coverage, 4432, |
| 16121 | /* 43102 */ GIR_Done, |
| 16122 | /* 43103 */ // Label 1036: @43103 |
| 16123 | /* 43103 */ GIM_Reject, |
| 16124 | /* 43104 */ // Label 1031: @43104 |
| 16125 | /* 43104 */ GIM_Reject, |
| 16126 | /* 43105 */ // Label 836: @43105 |
| 16127 | /* 43105 */ GIM_Try, /*On fail goto*//*Label 1037*/ GIMT_Encode4(43302), |
| 16128 | /* 43110 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 16129 | /* 43113 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 16130 | /* 43116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16131 | /* 43120 */ GIM_Try, /*On fail goto*//*Label 1038*/ GIMT_Encode4(43178), // Rule ID 25530 // |
| 16132 | /* 43125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16133 | /* 43128 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16134 | /* 43132 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16135 | /* 43136 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16136 | /* 43139 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16137 | /* 43143 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16138 | /* 43147 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16139 | /* 43151 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16140 | /* 43153 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16141 | /* 43160 */ // (xor:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPXORQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16142 | /* 43160 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 16143 | /* 43163 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16144 | /* 43165 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16145 | /* 43167 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16146 | /* 43171 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16147 | /* 43176 */ GIR_RootConstrainSelectedInstOperands, |
| 16148 | /* 43177 */ // GIR_Coverage, 25530, |
| 16149 | /* 43177 */ GIR_EraseRootFromParent_Done, |
| 16150 | /* 43178 */ // Label 1038: @43178 |
| 16151 | /* 43178 */ GIM_Try, /*On fail goto*//*Label 1039*/ GIMT_Encode4(43236), // Rule ID 20069 // |
| 16152 | /* 43183 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16153 | /* 43186 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16154 | /* 43190 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16155 | /* 43194 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16156 | /* 43198 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16157 | /* 43201 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16158 | /* 43205 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16159 | /* 43209 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16160 | /* 43211 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16161 | /* 43218 */ // (xor:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPXORQZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16162 | /* 43218 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPXORQZrm), |
| 16163 | /* 43221 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16164 | /* 43223 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16165 | /* 43225 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16166 | /* 43229 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16167 | /* 43234 */ GIR_RootConstrainSelectedInstOperands, |
| 16168 | /* 43235 */ // GIR_Coverage, 20069, |
| 16169 | /* 43235 */ GIR_EraseRootFromParent_Done, |
| 16170 | /* 43236 */ // Label 1039: @43236 |
| 16171 | /* 43236 */ GIM_Try, /*On fail goto*//*Label 1040*/ GIMT_Encode4(43278), // Rule ID 21950 // |
| 16172 | /* 43241 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16173 | /* 43244 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16174 | /* 43248 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16175 | /* 43252 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 16176 | /* 43258 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 16177 | /* 43260 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16178 | /* 43262 */ // (xor:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, immAllOnesV:{ *:[v64i8] }) => (VPTERNLOGQZrri:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, VR512:{ *:[v64i8] }:$src, VR512:{ *:[v64i8] }:$src, 15:{ *:[i8] }) |
| 16179 | /* 43262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPTERNLOGQZrri), |
| 16180 | /* 43265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16181 | /* 43267 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16182 | /* 43269 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16183 | /* 43271 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16184 | /* 43273 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/15, |
| 16185 | /* 43276 */ GIR_RootConstrainSelectedInstOperands, |
| 16186 | /* 43277 */ // GIR_Coverage, 21950, |
| 16187 | /* 43277 */ GIR_EraseRootFromParent_Done, |
| 16188 | /* 43278 */ // Label 1040: @43278 |
| 16189 | /* 43278 */ GIM_Try, /*On fail goto*//*Label 1041*/ GIMT_Encode4(43301), // Rule ID 20061 // |
| 16190 | /* 43283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16191 | /* 43286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16192 | /* 43290 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16193 | /* 43294 */ // (xor:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPXORQZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 16194 | /* 43294 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPXORQZrr), |
| 16195 | /* 43299 */ GIR_RootConstrainSelectedInstOperands, |
| 16196 | /* 43300 */ // GIR_Coverage, 20061, |
| 16197 | /* 43300 */ GIR_Done, |
| 16198 | /* 43301 */ // Label 1041: @43301 |
| 16199 | /* 43301 */ GIM_Reject, |
| 16200 | /* 43302 */ // Label 1037: @43302 |
| 16201 | /* 43302 */ GIM_Reject, |
| 16202 | /* 43303 */ // Label 837: @43303 |
| 16203 | /* 43303 */ GIM_Reject, |
| 16204 | /* 43304 */ // Label 6: @43304 |
| 16205 | /* 43304 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 1048*/ GIMT_Encode4(44989), |
| 16206 | /* 43315 */ /*GILLT_v8s16*//*Label 1042*/ GIMT_Encode4(43363), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 16207 | /* 43331 */ /*GILLT_v16s8*//*Label 1043*/ GIMT_Encode4(43705), |
| 16208 | /* 43335 */ /*GILLT_v16s16*//*Label 1044*/ GIMT_Encode4(44047), GIMT_Encode4(0), GIMT_Encode4(0), |
| 16209 | /* 43347 */ /*GILLT_v32s8*//*Label 1045*/ GIMT_Encode4(44362), |
| 16210 | /* 43351 */ /*GILLT_v32s16*//*Label 1046*/ GIMT_Encode4(44677), GIMT_Encode4(0), |
| 16211 | /* 43359 */ /*GILLT_v64s8*//*Label 1047*/ GIMT_Encode4(44833), |
| 16212 | /* 43363 */ // Label 1042: @43363 |
| 16213 | /* 43363 */ GIM_Try, /*On fail goto*//*Label 1049*/ GIMT_Encode4(43704), |
| 16214 | /* 43368 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 16215 | /* 43371 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 16216 | /* 43374 */ GIM_Try, /*On fail goto*//*Label 1050*/ GIMT_Encode4(43436), // Rule ID 23559 // |
| 16217 | /* 43379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 16218 | /* 43382 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16219 | /* 43386 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16220 | /* 43390 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16221 | /* 43394 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16222 | /* 43397 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16223 | /* 43401 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16224 | /* 43405 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16225 | /* 43409 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16226 | /* 43411 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16227 | /* 43418 */ // (avgceilu:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPAVGWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16228 | /* 43418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWrm), |
| 16229 | /* 43421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16230 | /* 43423 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16231 | /* 43425 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16232 | /* 43429 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16233 | /* 43434 */ GIR_RootConstrainSelectedInstOperands, |
| 16234 | /* 43435 */ // GIR_Coverage, 23559, |
| 16235 | /* 43435 */ GIR_EraseRootFromParent_Done, |
| 16236 | /* 43436 */ // Label 1050: @43436 |
| 16237 | /* 43436 */ GIM_Try, /*On fail goto*//*Label 1051*/ GIMT_Encode4(43498), // Rule ID 23946 // |
| 16238 | /* 43441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16239 | /* 43444 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16240 | /* 43448 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16241 | /* 43452 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16242 | /* 43456 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16243 | /* 43459 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16244 | /* 43463 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16245 | /* 43467 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16246 | /* 43471 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16247 | /* 43473 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16248 | /* 43480 */ // (avgceilu:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPAVGWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16249 | /* 43480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWZ128rm), |
| 16250 | /* 43483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16251 | /* 43485 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16252 | /* 43487 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16253 | /* 43491 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16254 | /* 43496 */ GIR_RootConstrainSelectedInstOperands, |
| 16255 | /* 43497 */ // GIR_Coverage, 23946, |
| 16256 | /* 43497 */ GIR_EraseRootFromParent_Done, |
| 16257 | /* 43498 */ // Label 1051: @43498 |
| 16258 | /* 43498 */ GIM_Try, /*On fail goto*//*Label 1052*/ GIMT_Encode4(43560), // Rule ID 2667 // |
| 16259 | /* 43503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 16260 | /* 43506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16261 | /* 43510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16262 | /* 43514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16263 | /* 43518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16264 | /* 43522 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16265 | /* 43525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16266 | /* 43529 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16267 | /* 43533 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16268 | /* 43535 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16269 | /* 43542 */ // (avgceilu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16270 | /* 43542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWrm), |
| 16271 | /* 43545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16272 | /* 43547 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16273 | /* 43549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16274 | /* 43553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16275 | /* 43558 */ GIR_RootConstrainSelectedInstOperands, |
| 16276 | /* 43559 */ // GIR_Coverage, 2667, |
| 16277 | /* 43559 */ GIR_EraseRootFromParent_Done, |
| 16278 | /* 43560 */ // Label 1052: @43560 |
| 16279 | /* 43560 */ GIM_Try, /*On fail goto*//*Label 1053*/ GIMT_Encode4(43622), // Rule ID 5102 // |
| 16280 | /* 43565 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16281 | /* 43568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16282 | /* 43572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16283 | /* 43576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16284 | /* 43580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16285 | /* 43584 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16286 | /* 43587 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16287 | /* 43591 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16288 | /* 43595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16289 | /* 43597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16290 | /* 43604 */ // (avgceilu:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16291 | /* 43604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWZ128rm), |
| 16292 | /* 43607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16293 | /* 43609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16294 | /* 43611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16295 | /* 43615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16296 | /* 43620 */ GIR_RootConstrainSelectedInstOperands, |
| 16297 | /* 43621 */ // GIR_Coverage, 5102, |
| 16298 | /* 43621 */ GIR_EraseRootFromParent_Done, |
| 16299 | /* 43622 */ // Label 1053: @43622 |
| 16300 | /* 43622 */ GIM_Try, /*On fail goto*//*Label 1054*/ GIMT_Encode4(43649), // Rule ID 2666 // |
| 16301 | /* 43627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 16302 | /* 43630 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16303 | /* 43634 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16304 | /* 43638 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16305 | /* 43642 */ // (avgceilu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPAVGWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 16306 | /* 43642 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGWrr), |
| 16307 | /* 43647 */ GIR_RootConstrainSelectedInstOperands, |
| 16308 | /* 43648 */ // GIR_Coverage, 2666, |
| 16309 | /* 43648 */ GIR_Done, |
| 16310 | /* 43649 */ // Label 1054: @43649 |
| 16311 | /* 43649 */ GIM_Try, /*On fail goto*//*Label 1055*/ GIMT_Encode4(43676), // Rule ID 2668 // |
| 16312 | /* 43654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 16313 | /* 43657 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16314 | /* 43661 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16315 | /* 43665 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16316 | /* 43669 */ // (avgceilu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PAVGWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 16317 | /* 43669 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PAVGWrr), |
| 16318 | /* 43674 */ GIR_RootConstrainSelectedInstOperands, |
| 16319 | /* 43675 */ // GIR_Coverage, 2668, |
| 16320 | /* 43675 */ GIR_Done, |
| 16321 | /* 43676 */ // Label 1055: @43676 |
| 16322 | /* 43676 */ GIM_Try, /*On fail goto*//*Label 1056*/ GIMT_Encode4(43703), // Rule ID 5099 // |
| 16323 | /* 43681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16324 | /* 43684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16325 | /* 43688 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16326 | /* 43692 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16327 | /* 43696 */ // (avgceilu:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPAVGWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 16328 | /* 43696 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGWZ128rr), |
| 16329 | /* 43701 */ GIR_RootConstrainSelectedInstOperands, |
| 16330 | /* 43702 */ // GIR_Coverage, 5099, |
| 16331 | /* 43702 */ GIR_Done, |
| 16332 | /* 43703 */ // Label 1056: @43703 |
| 16333 | /* 43703 */ GIM_Reject, |
| 16334 | /* 43704 */ // Label 1049: @43704 |
| 16335 | /* 43704 */ GIM_Reject, |
| 16336 | /* 43705 */ // Label 1043: @43705 |
| 16337 | /* 43705 */ GIM_Try, /*On fail goto*//*Label 1057*/ GIMT_Encode4(44046), |
| 16338 | /* 43710 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 16339 | /* 43713 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 16340 | /* 43716 */ GIM_Try, /*On fail goto*//*Label 1058*/ GIMT_Encode4(43778), // Rule ID 23556 // |
| 16341 | /* 43721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 16342 | /* 43724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16343 | /* 43728 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16344 | /* 43732 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16345 | /* 43736 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16346 | /* 43739 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16347 | /* 43743 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16348 | /* 43747 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16349 | /* 43751 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16350 | /* 43753 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16351 | /* 43760 */ // (avgceilu:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPAVGBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16352 | /* 43760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBrm), |
| 16353 | /* 43763 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16354 | /* 43765 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16355 | /* 43767 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16356 | /* 43771 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16357 | /* 43776 */ GIR_RootConstrainSelectedInstOperands, |
| 16358 | /* 43777 */ // GIR_Coverage, 23556, |
| 16359 | /* 43777 */ GIR_EraseRootFromParent_Done, |
| 16360 | /* 43778 */ // Label 1058: @43778 |
| 16361 | /* 43778 */ GIM_Try, /*On fail goto*//*Label 1059*/ GIMT_Encode4(43840), // Rule ID 23955 // |
| 16362 | /* 43783 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16363 | /* 43786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16364 | /* 43790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16365 | /* 43794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16366 | /* 43798 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16367 | /* 43801 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16368 | /* 43805 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16369 | /* 43809 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16370 | /* 43813 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16371 | /* 43815 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16372 | /* 43822 */ // (avgceilu:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPAVGBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16373 | /* 43822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBZ128rm), |
| 16374 | /* 43825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16375 | /* 43827 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16376 | /* 43829 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16377 | /* 43833 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16378 | /* 43838 */ GIR_RootConstrainSelectedInstOperands, |
| 16379 | /* 43839 */ // GIR_Coverage, 23955, |
| 16380 | /* 43839 */ GIR_EraseRootFromParent_Done, |
| 16381 | /* 43840 */ // Label 1059: @43840 |
| 16382 | /* 43840 */ GIM_Try, /*On fail goto*//*Label 1060*/ GIMT_Encode4(43902), // Rule ID 2661 // |
| 16383 | /* 43845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 16384 | /* 43848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16385 | /* 43852 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16386 | /* 43856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16387 | /* 43860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16388 | /* 43864 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16389 | /* 43867 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16390 | /* 43871 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16391 | /* 43875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16392 | /* 43877 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16393 | /* 43884 */ // (avgceilu:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16394 | /* 43884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBrm), |
| 16395 | /* 43887 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16396 | /* 43889 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16397 | /* 43891 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16398 | /* 43895 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16399 | /* 43900 */ GIR_RootConstrainSelectedInstOperands, |
| 16400 | /* 43901 */ // GIR_Coverage, 2661, |
| 16401 | /* 43901 */ GIR_EraseRootFromParent_Done, |
| 16402 | /* 43902 */ // Label 1060: @43902 |
| 16403 | /* 43902 */ GIM_Try, /*On fail goto*//*Label 1061*/ GIMT_Encode4(43964), // Rule ID 5120 // |
| 16404 | /* 43907 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16405 | /* 43910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16406 | /* 43914 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16407 | /* 43918 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16408 | /* 43922 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16409 | /* 43926 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16410 | /* 43929 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16411 | /* 43933 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16412 | /* 43937 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16413 | /* 43939 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16414 | /* 43946 */ // (avgceilu:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16415 | /* 43946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBZ128rm), |
| 16416 | /* 43949 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16417 | /* 43951 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16418 | /* 43953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16419 | /* 43957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16420 | /* 43962 */ GIR_RootConstrainSelectedInstOperands, |
| 16421 | /* 43963 */ // GIR_Coverage, 5120, |
| 16422 | /* 43963 */ GIR_EraseRootFromParent_Done, |
| 16423 | /* 43964 */ // Label 1061: @43964 |
| 16424 | /* 43964 */ GIM_Try, /*On fail goto*//*Label 1062*/ GIMT_Encode4(43991), // Rule ID 2660 // |
| 16425 | /* 43969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 16426 | /* 43972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16427 | /* 43976 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16428 | /* 43980 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16429 | /* 43984 */ // (avgceilu:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPAVGBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 16430 | /* 43984 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGBrr), |
| 16431 | /* 43989 */ GIR_RootConstrainSelectedInstOperands, |
| 16432 | /* 43990 */ // GIR_Coverage, 2660, |
| 16433 | /* 43990 */ GIR_Done, |
| 16434 | /* 43991 */ // Label 1062: @43991 |
| 16435 | /* 43991 */ GIM_Try, /*On fail goto*//*Label 1063*/ GIMT_Encode4(44018), // Rule ID 2662 // |
| 16436 | /* 43996 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 16437 | /* 43999 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16438 | /* 44003 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16439 | /* 44007 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 16440 | /* 44011 */ // (avgceilu:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PAVGBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 16441 | /* 44011 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PAVGBrr), |
| 16442 | /* 44016 */ GIR_RootConstrainSelectedInstOperands, |
| 16443 | /* 44017 */ // GIR_Coverage, 2662, |
| 16444 | /* 44017 */ GIR_Done, |
| 16445 | /* 44018 */ // Label 1063: @44018 |
| 16446 | /* 44018 */ GIM_Try, /*On fail goto*//*Label 1064*/ GIMT_Encode4(44045), // Rule ID 5117 // |
| 16447 | /* 44023 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16448 | /* 44026 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16449 | /* 44030 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16450 | /* 44034 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 16451 | /* 44038 */ // (avgceilu:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPAVGBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 16452 | /* 44038 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGBZ128rr), |
| 16453 | /* 44043 */ GIR_RootConstrainSelectedInstOperands, |
| 16454 | /* 44044 */ // GIR_Coverage, 5117, |
| 16455 | /* 44044 */ GIR_Done, |
| 16456 | /* 44045 */ // Label 1064: @44045 |
| 16457 | /* 44045 */ GIM_Reject, |
| 16458 | /* 44046 */ // Label 1057: @44046 |
| 16459 | /* 44046 */ GIM_Reject, |
| 16460 | /* 44047 */ // Label 1044: @44047 |
| 16461 | /* 44047 */ GIM_Try, /*On fail goto*//*Label 1065*/ GIMT_Encode4(44361), |
| 16462 | /* 44052 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 16463 | /* 44055 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 16464 | /* 44058 */ GIM_Try, /*On fail goto*//*Label 1066*/ GIMT_Encode4(44120), // Rule ID 23561 // |
| 16465 | /* 44063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 16466 | /* 44066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16467 | /* 44070 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16468 | /* 44074 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16469 | /* 44078 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16470 | /* 44081 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16471 | /* 44085 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16472 | /* 44089 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16473 | /* 44093 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16474 | /* 44095 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16475 | /* 44102 */ // (avgceilu:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPAVGWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16476 | /* 44102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWYrm), |
| 16477 | /* 44105 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16478 | /* 44107 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16479 | /* 44109 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16480 | /* 44113 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16481 | /* 44118 */ GIR_RootConstrainSelectedInstOperands, |
| 16482 | /* 44119 */ // GIR_Coverage, 23561, |
| 16483 | /* 44119 */ GIR_EraseRootFromParent_Done, |
| 16484 | /* 44120 */ // Label 1066: @44120 |
| 16485 | /* 44120 */ GIM_Try, /*On fail goto*//*Label 1067*/ GIMT_Encode4(44182), // Rule ID 23943 // |
| 16486 | /* 44125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16487 | /* 44128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16488 | /* 44132 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16489 | /* 44136 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16490 | /* 44140 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16491 | /* 44143 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16492 | /* 44147 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16493 | /* 44151 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16494 | /* 44155 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16495 | /* 44157 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16496 | /* 44164 */ // (avgceilu:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPAVGWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16497 | /* 44164 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWZ256rm), |
| 16498 | /* 44167 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16499 | /* 44169 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16500 | /* 44171 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16501 | /* 44175 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16502 | /* 44180 */ GIR_RootConstrainSelectedInstOperands, |
| 16503 | /* 44181 */ // GIR_Coverage, 23943, |
| 16504 | /* 44181 */ GIR_EraseRootFromParent_Done, |
| 16505 | /* 44182 */ // Label 1067: @44182 |
| 16506 | /* 44182 */ GIM_Try, /*On fail goto*//*Label 1068*/ GIMT_Encode4(44244), // Rule ID 2671 // |
| 16507 | /* 44187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 16508 | /* 44190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16509 | /* 44194 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16510 | /* 44198 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16511 | /* 44202 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16512 | /* 44206 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16513 | /* 44209 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16514 | /* 44213 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16515 | /* 44217 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16516 | /* 44219 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16517 | /* 44226 */ // (avgceilu:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16518 | /* 44226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWYrm), |
| 16519 | /* 44229 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16520 | /* 44231 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16521 | /* 44233 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16522 | /* 44237 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16523 | /* 44242 */ GIR_RootConstrainSelectedInstOperands, |
| 16524 | /* 44243 */ // GIR_Coverage, 2671, |
| 16525 | /* 44243 */ GIR_EraseRootFromParent_Done, |
| 16526 | /* 44244 */ // Label 1068: @44244 |
| 16527 | /* 44244 */ GIM_Try, /*On fail goto*//*Label 1069*/ GIMT_Encode4(44306), // Rule ID 5096 // |
| 16528 | /* 44249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16529 | /* 44252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16530 | /* 44256 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16531 | /* 44260 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16532 | /* 44264 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16533 | /* 44268 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16534 | /* 44271 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16535 | /* 44275 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16536 | /* 44279 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16537 | /* 44281 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16538 | /* 44288 */ // (avgceilu:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16539 | /* 44288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWZ256rm), |
| 16540 | /* 44291 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16541 | /* 44293 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16542 | /* 44295 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16543 | /* 44299 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16544 | /* 44304 */ GIR_RootConstrainSelectedInstOperands, |
| 16545 | /* 44305 */ // GIR_Coverage, 5096, |
| 16546 | /* 44305 */ GIR_EraseRootFromParent_Done, |
| 16547 | /* 44306 */ // Label 1069: @44306 |
| 16548 | /* 44306 */ GIM_Try, /*On fail goto*//*Label 1070*/ GIMT_Encode4(44333), // Rule ID 2670 // |
| 16549 | /* 44311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 16550 | /* 44314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16551 | /* 44318 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16552 | /* 44322 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16553 | /* 44326 */ // (avgceilu:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPAVGWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 16554 | /* 44326 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGWYrr), |
| 16555 | /* 44331 */ GIR_RootConstrainSelectedInstOperands, |
| 16556 | /* 44332 */ // GIR_Coverage, 2670, |
| 16557 | /* 44332 */ GIR_Done, |
| 16558 | /* 44333 */ // Label 1070: @44333 |
| 16559 | /* 44333 */ GIM_Try, /*On fail goto*//*Label 1071*/ GIMT_Encode4(44360), // Rule ID 5093 // |
| 16560 | /* 44338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16561 | /* 44341 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16562 | /* 44345 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16563 | /* 44349 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16564 | /* 44353 */ // (avgceilu:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPAVGWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 16565 | /* 44353 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGWZ256rr), |
| 16566 | /* 44358 */ GIR_RootConstrainSelectedInstOperands, |
| 16567 | /* 44359 */ // GIR_Coverage, 5093, |
| 16568 | /* 44359 */ GIR_Done, |
| 16569 | /* 44360 */ // Label 1071: @44360 |
| 16570 | /* 44360 */ GIM_Reject, |
| 16571 | /* 44361 */ // Label 1065: @44361 |
| 16572 | /* 44361 */ GIM_Reject, |
| 16573 | /* 44362 */ // Label 1045: @44362 |
| 16574 | /* 44362 */ GIM_Try, /*On fail goto*//*Label 1072*/ GIMT_Encode4(44676), |
| 16575 | /* 44367 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 16576 | /* 44370 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 16577 | /* 44373 */ GIM_Try, /*On fail goto*//*Label 1073*/ GIMT_Encode4(44435), // Rule ID 23558 // |
| 16578 | /* 44378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 16579 | /* 44381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16580 | /* 44385 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16581 | /* 44389 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16582 | /* 44393 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16583 | /* 44396 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16584 | /* 44400 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16585 | /* 44404 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16586 | /* 44408 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16587 | /* 44410 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16588 | /* 44417 */ // (avgceilu:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPAVGBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16589 | /* 44417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBYrm), |
| 16590 | /* 44420 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16591 | /* 44422 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16592 | /* 44424 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16593 | /* 44428 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16594 | /* 44433 */ GIR_RootConstrainSelectedInstOperands, |
| 16595 | /* 44434 */ // GIR_Coverage, 23558, |
| 16596 | /* 44434 */ GIR_EraseRootFromParent_Done, |
| 16597 | /* 44435 */ // Label 1073: @44435 |
| 16598 | /* 44435 */ GIM_Try, /*On fail goto*//*Label 1074*/ GIMT_Encode4(44497), // Rule ID 23952 // |
| 16599 | /* 44440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16600 | /* 44443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16601 | /* 44447 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16602 | /* 44451 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16603 | /* 44455 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16604 | /* 44458 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16605 | /* 44462 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16606 | /* 44466 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16607 | /* 44470 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16608 | /* 44472 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16609 | /* 44479 */ // (avgceilu:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPAVGBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16610 | /* 44479 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBZ256rm), |
| 16611 | /* 44482 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16612 | /* 44484 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16613 | /* 44486 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16614 | /* 44490 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16615 | /* 44495 */ GIR_RootConstrainSelectedInstOperands, |
| 16616 | /* 44496 */ // GIR_Coverage, 23952, |
| 16617 | /* 44496 */ GIR_EraseRootFromParent_Done, |
| 16618 | /* 44497 */ // Label 1074: @44497 |
| 16619 | /* 44497 */ GIM_Try, /*On fail goto*//*Label 1075*/ GIMT_Encode4(44559), // Rule ID 2665 // |
| 16620 | /* 44502 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 16621 | /* 44505 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16622 | /* 44509 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16623 | /* 44513 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16624 | /* 44517 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16625 | /* 44521 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16626 | /* 44524 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16627 | /* 44528 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16628 | /* 44532 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16629 | /* 44534 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16630 | /* 44541 */ // (avgceilu:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16631 | /* 44541 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBYrm), |
| 16632 | /* 44544 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16633 | /* 44546 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16634 | /* 44548 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16635 | /* 44552 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16636 | /* 44557 */ GIR_RootConstrainSelectedInstOperands, |
| 16637 | /* 44558 */ // GIR_Coverage, 2665, |
| 16638 | /* 44558 */ GIR_EraseRootFromParent_Done, |
| 16639 | /* 44559 */ // Label 1075: @44559 |
| 16640 | /* 44559 */ GIM_Try, /*On fail goto*//*Label 1076*/ GIMT_Encode4(44621), // Rule ID 5114 // |
| 16641 | /* 44564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16642 | /* 44567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16643 | /* 44571 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16644 | /* 44575 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16645 | /* 44579 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16646 | /* 44583 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16647 | /* 44586 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16648 | /* 44590 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16649 | /* 44594 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16650 | /* 44596 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16651 | /* 44603 */ // (avgceilu:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16652 | /* 44603 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBZ256rm), |
| 16653 | /* 44606 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16654 | /* 44608 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16655 | /* 44610 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16656 | /* 44614 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16657 | /* 44619 */ GIR_RootConstrainSelectedInstOperands, |
| 16658 | /* 44620 */ // GIR_Coverage, 5114, |
| 16659 | /* 44620 */ GIR_EraseRootFromParent_Done, |
| 16660 | /* 44621 */ // Label 1076: @44621 |
| 16661 | /* 44621 */ GIM_Try, /*On fail goto*//*Label 1077*/ GIMT_Encode4(44648), // Rule ID 2664 // |
| 16662 | /* 44626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 16663 | /* 44629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16664 | /* 44633 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16665 | /* 44637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 16666 | /* 44641 */ // (avgceilu:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPAVGBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 16667 | /* 44641 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGBYrr), |
| 16668 | /* 44646 */ GIR_RootConstrainSelectedInstOperands, |
| 16669 | /* 44647 */ // GIR_Coverage, 2664, |
| 16670 | /* 44647 */ GIR_Done, |
| 16671 | /* 44648 */ // Label 1077: @44648 |
| 16672 | /* 44648 */ GIM_Try, /*On fail goto*//*Label 1078*/ GIMT_Encode4(44675), // Rule ID 5111 // |
| 16673 | /* 44653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 16674 | /* 44656 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16675 | /* 44660 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16676 | /* 44664 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 16677 | /* 44668 */ // (avgceilu:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPAVGBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 16678 | /* 44668 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGBZ256rr), |
| 16679 | /* 44673 */ GIR_RootConstrainSelectedInstOperands, |
| 16680 | /* 44674 */ // GIR_Coverage, 5111, |
| 16681 | /* 44674 */ GIR_Done, |
| 16682 | /* 44675 */ // Label 1078: @44675 |
| 16683 | /* 44675 */ GIM_Reject, |
| 16684 | /* 44676 */ // Label 1072: @44676 |
| 16685 | /* 44676 */ GIM_Reject, |
| 16686 | /* 44677 */ // Label 1046: @44677 |
| 16687 | /* 44677 */ GIM_Try, /*On fail goto*//*Label 1079*/ GIMT_Encode4(44832), |
| 16688 | /* 44682 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 16689 | /* 44685 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 16690 | /* 44688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16691 | /* 44692 */ GIM_Try, /*On fail goto*//*Label 1080*/ GIMT_Encode4(44750), // Rule ID 23940 // |
| 16692 | /* 44697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16693 | /* 44700 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16694 | /* 44704 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16695 | /* 44708 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16696 | /* 44711 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16697 | /* 44715 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16698 | /* 44719 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16699 | /* 44723 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16700 | /* 44725 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16701 | /* 44732 */ // (avgceilu:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPAVGWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16702 | /* 44732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWZrm), |
| 16703 | /* 44735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16704 | /* 44737 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16705 | /* 44739 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16706 | /* 44743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16707 | /* 44748 */ GIR_RootConstrainSelectedInstOperands, |
| 16708 | /* 44749 */ // GIR_Coverage, 23940, |
| 16709 | /* 44749 */ GIR_EraseRootFromParent_Done, |
| 16710 | /* 44750 */ // Label 1080: @44750 |
| 16711 | /* 44750 */ GIM_Try, /*On fail goto*//*Label 1081*/ GIMT_Encode4(44808), // Rule ID 5090 // |
| 16712 | /* 44755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16713 | /* 44758 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16714 | /* 44762 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16715 | /* 44766 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16716 | /* 44770 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16717 | /* 44773 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16718 | /* 44777 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16719 | /* 44781 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16720 | /* 44783 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16721 | /* 44790 */ // (avgceilu:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16722 | /* 44790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGWZrm), |
| 16723 | /* 44793 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16724 | /* 44795 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16725 | /* 44797 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16726 | /* 44801 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16727 | /* 44806 */ GIR_RootConstrainSelectedInstOperands, |
| 16728 | /* 44807 */ // GIR_Coverage, 5090, |
| 16729 | /* 44807 */ GIR_EraseRootFromParent_Done, |
| 16730 | /* 44808 */ // Label 1081: @44808 |
| 16731 | /* 44808 */ GIM_Try, /*On fail goto*//*Label 1082*/ GIMT_Encode4(44831), // Rule ID 5087 // |
| 16732 | /* 44813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16733 | /* 44816 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16734 | /* 44820 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16735 | /* 44824 */ // (avgceilu:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPAVGWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 16736 | /* 44824 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGWZrr), |
| 16737 | /* 44829 */ GIR_RootConstrainSelectedInstOperands, |
| 16738 | /* 44830 */ // GIR_Coverage, 5087, |
| 16739 | /* 44830 */ GIR_Done, |
| 16740 | /* 44831 */ // Label 1082: @44831 |
| 16741 | /* 44831 */ GIM_Reject, |
| 16742 | /* 44832 */ // Label 1079: @44832 |
| 16743 | /* 44832 */ GIM_Reject, |
| 16744 | /* 44833 */ // Label 1047: @44833 |
| 16745 | /* 44833 */ GIM_Try, /*On fail goto*//*Label 1083*/ GIMT_Encode4(44988), |
| 16746 | /* 44838 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 16747 | /* 44841 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 16748 | /* 44844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16749 | /* 44848 */ GIM_Try, /*On fail goto*//*Label 1084*/ GIMT_Encode4(44906), // Rule ID 23949 // |
| 16750 | /* 44853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16751 | /* 44856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16752 | /* 44860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16753 | /* 44864 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16754 | /* 44867 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16755 | /* 44871 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16756 | /* 44875 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16757 | /* 44879 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16758 | /* 44881 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16759 | /* 44888 */ // (avgceilu:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPAVGBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16760 | /* 44888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBZrm), |
| 16761 | /* 44891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16762 | /* 44893 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 16763 | /* 44895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16764 | /* 44899 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16765 | /* 44904 */ GIR_RootConstrainSelectedInstOperands, |
| 16766 | /* 44905 */ // GIR_Coverage, 23949, |
| 16767 | /* 44905 */ GIR_EraseRootFromParent_Done, |
| 16768 | /* 44906 */ // Label 1084: @44906 |
| 16769 | /* 44906 */ GIM_Try, /*On fail goto*//*Label 1085*/ GIMT_Encode4(44964), // Rule ID 5108 // |
| 16770 | /* 44911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16771 | /* 44914 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16772 | /* 44918 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16773 | /* 44922 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 16774 | /* 44926 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 16775 | /* 44929 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 16776 | /* 44933 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 16777 | /* 44937 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16778 | /* 44939 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 16779 | /* 44946 */ // (avgceilu:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPAVGBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 16780 | /* 44946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPAVGBZrm), |
| 16781 | /* 44949 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16782 | /* 44951 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16783 | /* 44953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 16784 | /* 44957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 16785 | /* 44962 */ GIR_RootConstrainSelectedInstOperands, |
| 16786 | /* 44963 */ // GIR_Coverage, 5108, |
| 16787 | /* 44963 */ GIR_EraseRootFromParent_Done, |
| 16788 | /* 44964 */ // Label 1085: @44964 |
| 16789 | /* 44964 */ GIM_Try, /*On fail goto*//*Label 1086*/ GIMT_Encode4(44987), // Rule ID 5105 // |
| 16790 | /* 44969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16791 | /* 44972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16792 | /* 44976 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 16793 | /* 44980 */ // (avgceilu:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPAVGBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 16794 | /* 44980 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPAVGBZrr), |
| 16795 | /* 44985 */ GIR_RootConstrainSelectedInstOperands, |
| 16796 | /* 44986 */ // GIR_Coverage, 5105, |
| 16797 | /* 44986 */ GIR_Done, |
| 16798 | /* 44987 */ // Label 1086: @44987 |
| 16799 | /* 44987 */ GIM_Reject, |
| 16800 | /* 44988 */ // Label 1083: @44988 |
| 16801 | /* 44988 */ GIM_Reject, |
| 16802 | /* 44989 */ // Label 1048: @44989 |
| 16803 | /* 44989 */ GIM_Reject, |
| 16804 | /* 44990 */ // Label 7: @44990 |
| 16805 | /* 44990 */ GIM_Try, /*On fail goto*//*Label 1087*/ GIMT_Encode4(45156), |
| 16806 | /* 44995 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 16807 | /* 44998 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(16), GIMT_Encode2(24), /*)*//*default:*//*Label 1091*/ GIMT_Encode4(45155), |
| 16808 | /* 45009 */ /*GILLT_v16s1*//*Label 1088*/ GIMT_Encode4(45041), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 16809 | /* 45025 */ /*GILLT_v32s1*//*Label 1089*/ GIMT_Encode4(45079), GIMT_Encode4(0), GIMT_Encode4(0), |
| 16810 | /* 45037 */ /*GILLT_v64s1*//*Label 1090*/ GIMT_Encode4(45117), |
| 16811 | /* 45041 */ // Label 1088: @45041 |
| 16812 | /* 45041 */ GIM_Try, /*On fail goto*//*Label 1092*/ GIMT_Encode4(45078), // Rule ID 19501 // |
| 16813 | /* 45046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 16814 | /* 45049 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 16815 | /* 45052 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 16816 | /* 45055 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16817 | /* 45059 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 16818 | /* 45063 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 16819 | /* 45067 */ // (concat_vectors:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src1, VK8:{ *:[v8i1] }:$src2) => (KUNPCKBWkk:{ *:[v16i1] } VK8:{ *:[v8i1] }:$src2, VK8:{ *:[v8i1] }:$src1) |
| 16820 | /* 45067 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KUNPCKBWkk), |
| 16821 | /* 45070 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16822 | /* 45072 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 16823 | /* 45074 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16824 | /* 45076 */ GIR_RootConstrainSelectedInstOperands, |
| 16825 | /* 45077 */ // GIR_Coverage, 19501, |
| 16826 | /* 45077 */ GIR_EraseRootFromParent_Done, |
| 16827 | /* 45078 */ // Label 1092: @45078 |
| 16828 | /* 45078 */ GIM_Reject, |
| 16829 | /* 45079 */ // Label 1089: @45079 |
| 16830 | /* 45079 */ GIM_Try, /*On fail goto*//*Label 1093*/ GIMT_Encode4(45116), // Rule ID 19502 // |
| 16831 | /* 45084 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16832 | /* 45087 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 16833 | /* 45090 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 16834 | /* 45093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16835 | /* 45097 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16836 | /* 45101 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16837 | /* 45105 */ // (concat_vectors:{ *:[v32i1] } VK16:{ *:[v16i1] }:$src1, VK16:{ *:[v16i1] }:$src2) => (KUNPCKWDkk:{ *:[v32i1] } VK16:{ *:[v16i1] }:$src2, VK16:{ *:[v16i1] }:$src1) |
| 16838 | /* 45105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KUNPCKWDkk), |
| 16839 | /* 45108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16840 | /* 45110 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 16841 | /* 45112 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16842 | /* 45114 */ GIR_RootConstrainSelectedInstOperands, |
| 16843 | /* 45115 */ // GIR_Coverage, 19502, |
| 16844 | /* 45115 */ GIR_EraseRootFromParent_Done, |
| 16845 | /* 45116 */ // Label 1093: @45116 |
| 16846 | /* 45116 */ GIM_Reject, |
| 16847 | /* 45117 */ // Label 1090: @45117 |
| 16848 | /* 45117 */ GIM_Try, /*On fail goto*//*Label 1094*/ GIMT_Encode4(45154), // Rule ID 19503 // |
| 16849 | /* 45122 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 16850 | /* 45125 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 16851 | /* 45128 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 16852 | /* 45131 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 16853 | /* 45135 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16854 | /* 45139 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 16855 | /* 45143 */ // (concat_vectors:{ *:[v64i1] } VK32:{ *:[v32i1] }:$src1, VK32:{ *:[v32i1] }:$src2) => (KUNPCKDQkk:{ *:[v64i1] } VK32:{ *:[v32i1] }:$src2, VK32:{ *:[v32i1] }:$src1) |
| 16856 | /* 45143 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KUNPCKDQkk), |
| 16857 | /* 45146 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16858 | /* 45148 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 16859 | /* 45150 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 16860 | /* 45152 */ GIR_RootConstrainSelectedInstOperands, |
| 16861 | /* 45153 */ // GIR_Coverage, 19503, |
| 16862 | /* 45153 */ GIR_EraseRootFromParent_Done, |
| 16863 | /* 45154 */ // Label 1094: @45154 |
| 16864 | /* 45154 */ GIM_Reject, |
| 16865 | /* 45155 */ // Label 1091: @45155 |
| 16866 | /* 45155 */ GIM_Reject, |
| 16867 | /* 45156 */ // Label 1087: @45156 |
| 16868 | /* 45156 */ GIM_Reject, |
| 16869 | /* 45157 */ // Label 8: @45157 |
| 16870 | /* 45157 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(24), /*)*//*default:*//*Label 1103*/ GIMT_Encode4(47792), |
| 16871 | /* 45168 */ /*GILLT_s8*//*Label 1095*/ GIMT_Encode4(45260), |
| 16872 | /* 45172 */ /*GILLT_s16*//*Label 1096*/ GIMT_Encode4(45321), |
| 16873 | /* 45176 */ /*GILLT_s32*//*Label 1097*/ GIMT_Encode4(46151), |
| 16874 | /* 45180 */ /*GILLT_s64*//*Label 1098*/ GIMT_Encode4(46577), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 16875 | /* 45212 */ /*GILLT_v8s1*//*Label 1099*/ GIMT_Encode4(47003), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 16876 | /* 45228 */ /*GILLT_v16s1*//*Label 1100*/ GIMT_Encode4(47190), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 16877 | /* 45244 */ /*GILLT_v32s1*//*Label 1101*/ GIMT_Encode4(47377), GIMT_Encode4(0), GIMT_Encode4(0), |
| 16878 | /* 45256 */ /*GILLT_v64s1*//*Label 1102*/ GIMT_Encode4(47561), |
| 16879 | /* 45260 */ // Label 1095: @45260 |
| 16880 | /* 45260 */ GIM_Try, /*On fail goto*//*Label 1104*/ GIMT_Encode4(45320), // Rule ID 19432 // |
| 16881 | /* 45265 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 16882 | /* 45268 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 16883 | /* 45272 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 16884 | /* 45276 */ // (bitconvert:{ *:[i8] } VK8:{ *:[v8i1] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } (COPY_TO_REGCLASS:{ *:[i32] } VK8:{ *:[v8i1] }:$src, GR32:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 16885 | /* 45276 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 16886 | /* 45279 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16887 | /* 45283 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16888 | /* 45288 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16889 | /* 45292 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 16890 | /* 45297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16891 | /* 45300 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16892 | /* 45302 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 16893 | /* 45309 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 16894 | /* 45314 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 16895 | /* 45319 */ // GIR_Coverage, 19432, |
| 16896 | /* 45319 */ GIR_EraseRootFromParent_Done, |
| 16897 | /* 45320 */ // Label 1104: @45320 |
| 16898 | /* 45320 */ GIM_Reject, |
| 16899 | /* 45321 */ // Label 1096: @45321 |
| 16900 | /* 45321 */ GIM_Try, /*On fail goto*//*Label 1105*/ GIMT_Encode4(45381), // Rule ID 19429 // |
| 16901 | /* 45326 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 16902 | /* 45329 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 16903 | /* 45333 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 16904 | /* 45337 */ // (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (COPY_TO_REGCLASS:{ *:[i32] } VK16:{ *:[v16i1] }:$src, GR32:{ *:[i32] }), sub_16bit:{ *:[i32] }) |
| 16905 | /* 45337 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 16906 | /* 45340 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16907 | /* 45344 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16908 | /* 45349 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16909 | /* 45353 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 16910 | /* 45358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16911 | /* 45361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16912 | /* 45363 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 16913 | /* 45370 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 16914 | /* 45375 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 16915 | /* 45380 */ // GIR_Coverage, 19429, |
| 16916 | /* 45380 */ GIR_EraseRootFromParent_Done, |
| 16917 | /* 45381 */ // Label 1105: @45381 |
| 16918 | /* 45381 */ GIM_Try, /*On fail goto*//*Label 1106*/ GIMT_Encode4(45482), // Rule ID 22201 // |
| 16919 | /* 45386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 16920 | /* 45389 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 16921 | /* 45392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 16922 | /* 45396 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 16923 | /* 45400 */ // (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] }) |
| 16924 | /* 45400 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s32, |
| 16925 | /* 45403 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16926 | /* 45407 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16927 | /* 45412 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 16928 | /* 45414 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 16929 | /* 45417 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16930 | /* 45421 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16931 | /* 45426 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 16932 | /* 45429 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16933 | /* 45433 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/4, |
| 16934 | /* 45436 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 16935 | /* 45441 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 16936 | /* 45446 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 16937 | /* 45451 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 16938 | /* 45454 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVW2SHrr), |
| 16939 | /* 45458 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16940 | /* 45463 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 16941 | /* 45466 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16942 | /* 45468 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16943 | /* 45471 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16944 | /* 45473 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 16945 | /* 45476 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 16946 | /* 45481 */ // GIR_Coverage, 22201, |
| 16947 | /* 45481 */ GIR_EraseRootFromParent_Done, |
| 16948 | /* 45482 */ // Label 1106: @45482 |
| 16949 | /* 45482 */ GIM_Try, /*On fail goto*//*Label 1107*/ GIMT_Encode4(45562), // Rule ID 22214 // |
| 16950 | /* 45487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 16951 | /* 45490 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 16952 | /* 45493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 16953 | /* 45497 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 16954 | /* 45501 */ // (bitconvert:{ *:[i16] } FR16X:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (VMOVSH2Wrr:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[f128] } FR16X:{ *:[f16] }:$src, VR128X:{ *:[i32] })), sub_16bit:{ *:[i32] }) |
| 16955 | /* 45501 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s128, |
| 16956 | /* 45504 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16957 | /* 45508 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16958 | /* 45513 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16959 | /* 45517 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR128XRegClassID), |
| 16960 | /* 45522 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 16961 | /* 45525 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVSH2Wrr), |
| 16962 | /* 45529 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16963 | /* 45534 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 16964 | /* 45537 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16965 | /* 45539 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16966 | /* 45542 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16967 | /* 45544 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 16968 | /* 45551 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 16969 | /* 45556 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 16970 | /* 45561 */ // GIR_Coverage, 22214, |
| 16971 | /* 45561 */ GIR_EraseRootFromParent_Done, |
| 16972 | /* 45562 */ // Label 1107: @45562 |
| 16973 | /* 45562 */ GIM_Try, /*On fail goto*//*Label 1108*/ GIMT_Encode4(45641), // Rule ID 18330 // |
| 16974 | /* 45567 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoBWI), |
| 16975 | /* 45570 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 16976 | /* 45573 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 16977 | /* 45577 */ // (bitconvert:{ *:[i16] } f16:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (VPEXTRWrri:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[v8i16] } FR16:{ *:[f16] }:$src, VR128:{ *:[i32] }), 0:{ *:[i8] }), sub_16bit:{ *:[i32] }) |
| 16978 | /* 45577 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 16979 | /* 45580 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16980 | /* 45584 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16981 | /* 45589 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16982 | /* 45593 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 16983 | /* 45598 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 16984 | /* 45601 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPEXTRWrri), |
| 16985 | /* 45605 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16986 | /* 45610 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 16987 | /* 45613 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 16988 | /* 45616 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16989 | /* 45618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16990 | /* 45621 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16991 | /* 45623 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 16992 | /* 45630 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 16993 | /* 45635 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 16994 | /* 45640 */ // GIR_Coverage, 18330, |
| 16995 | /* 45640 */ GIR_EraseRootFromParent_Done, |
| 16996 | /* 45641 */ // Label 1108: @45641 |
| 16997 | /* 45641 */ GIM_Try, /*On fail goto*//*Label 1109*/ GIMT_Encode4(45758), // Rule ID 18331 // |
| 16998 | /* 45646 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoBWI), |
| 16999 | /* 45649 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17000 | /* 45652 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 17001 | /* 45656 */ // (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] }) |
| 17002 | /* 45656 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_s32, |
| 17003 | /* 45659 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17004 | /* 45663 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17005 | /* 45668 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 17006 | /* 45670 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s32, |
| 17007 | /* 45673 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17008 | /* 45677 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17009 | /* 45682 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 17010 | /* 45685 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17011 | /* 45689 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/4, |
| 17012 | /* 45692 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17013 | /* 45697 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17014 | /* 45702 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17015 | /* 45707 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17016 | /* 45710 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17017 | /* 45714 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17018 | /* 45719 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17019 | /* 45721 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 17020 | /* 45724 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPINSRWrri), |
| 17021 | /* 45728 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17022 | /* 45733 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17023 | /* 45736 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 17024 | /* 45739 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17025 | /* 45742 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17026 | /* 45744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17027 | /* 45747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17028 | /* 45749 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17029 | /* 45752 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 17030 | /* 45757 */ // GIR_Coverage, 18331, |
| 17031 | /* 45757 */ GIR_EraseRootFromParent_Done, |
| 17032 | /* 45758 */ // Label 1109: @45758 |
| 17033 | /* 45758 */ GIM_Try, /*On fail goto*//*Label 1110*/ GIMT_Encode4(45837), // Rule ID 18327 // |
| 17034 | /* 45763 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17035 | /* 45766 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17036 | /* 45769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17037 | /* 45773 */ // (bitconvert:{ *:[i16] } f16:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (PEXTRWrri:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[v8i16] } FR16:{ *:[f16] }:$src, VR128:{ *:[i32] }), 0:{ *:[i8] }), sub_16bit:{ *:[i32] }) |
| 17038 | /* 45773 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17039 | /* 45776 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17040 | /* 45780 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17041 | /* 45785 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17042 | /* 45789 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 17043 | /* 45794 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17044 | /* 45797 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::PEXTRWrri), |
| 17045 | /* 45801 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17046 | /* 45806 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17047 | /* 45809 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17048 | /* 45812 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17049 | /* 45814 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17050 | /* 45817 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17051 | /* 45819 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 17052 | /* 45826 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 17053 | /* 45831 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17054 | /* 45836 */ // GIR_Coverage, 18327, |
| 17055 | /* 45836 */ GIR_EraseRootFromParent_Done, |
| 17056 | /* 45837 */ // Label 1110: @45837 |
| 17057 | /* 45837 */ GIM_Try, /*On fail goto*//*Label 1111*/ GIMT_Encode4(45954), // Rule ID 18328 // |
| 17058 | /* 45842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17059 | /* 45845 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17060 | /* 45848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 17061 | /* 45852 */ // (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] }) |
| 17062 | /* 45852 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_s32, |
| 17063 | /* 45855 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17064 | /* 45859 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17065 | /* 45864 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 17066 | /* 45866 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s32, |
| 17067 | /* 45869 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17068 | /* 45873 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17069 | /* 45878 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 17070 | /* 45881 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17071 | /* 45885 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/4, |
| 17072 | /* 45888 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17073 | /* 45893 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17074 | /* 45898 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17075 | /* 45903 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17076 | /* 45906 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17077 | /* 45910 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17078 | /* 45915 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17079 | /* 45917 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 17080 | /* 45920 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::PINSRWrri), |
| 17081 | /* 45924 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17082 | /* 45929 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17083 | /* 45932 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 17084 | /* 45935 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17085 | /* 45938 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17086 | /* 45940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17087 | /* 45943 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17088 | /* 45945 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17089 | /* 45948 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 17090 | /* 45953 */ // GIR_Coverage, 18328, |
| 17091 | /* 45953 */ GIR_EraseRootFromParent_Done, |
| 17092 | /* 45954 */ // Label 1111: @45954 |
| 17093 | /* 45954 */ GIM_Try, /*On fail goto*//*Label 1112*/ GIMT_Encode4(46033), // Rule ID 21852 // |
| 17094 | /* 45959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17095 | /* 45962 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17096 | /* 45965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17097 | /* 45969 */ // (bitconvert:{ *:[i16] } f16:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (VPEXTRWZrri:{ *:[i32] } (COPY_TO_REGCLASS:{ *:[v8i16] } FR16X:{ *:[f16] }:$src, VR128X:{ *:[i32] }), 0:{ *:[i8] }), sub_16bit:{ *:[i32] }) |
| 17098 | /* 45969 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17099 | /* 45972 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17100 | /* 45976 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17101 | /* 45981 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17102 | /* 45985 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR128XRegClassID), |
| 17103 | /* 45990 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17104 | /* 45993 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPEXTRWZrri), |
| 17105 | /* 45997 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17106 | /* 46002 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17107 | /* 46005 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17108 | /* 46008 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17109 | /* 46010 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17110 | /* 46013 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17111 | /* 46015 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 17112 | /* 46022 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 17113 | /* 46027 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17114 | /* 46032 */ // GIR_Coverage, 21852, |
| 17115 | /* 46032 */ GIR_EraseRootFromParent_Done, |
| 17116 | /* 46033 */ // Label 1112: @46033 |
| 17117 | /* 46033 */ GIM_Try, /*On fail goto*//*Label 1113*/ GIMT_Encode4(46150), // Rule ID 21853 // |
| 17118 | /* 46038 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17119 | /* 46041 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17120 | /* 46044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 17121 | /* 46048 */ // (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] }) |
| 17122 | /* 46048 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_s32, |
| 17123 | /* 46051 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17124 | /* 46055 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17125 | /* 46060 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 17126 | /* 46062 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s32, |
| 17127 | /* 46065 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17128 | /* 46069 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17129 | /* 46074 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 17130 | /* 46077 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17131 | /* 46081 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/4, |
| 17132 | /* 46084 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17133 | /* 46089 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17134 | /* 46094 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17135 | /* 46099 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 17136 | /* 46102 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17137 | /* 46106 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17138 | /* 46111 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17139 | /* 46113 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 17140 | /* 46116 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPINSRWZrri), |
| 17141 | /* 46120 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17142 | /* 46125 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17143 | /* 46128 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 17144 | /* 46131 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 17145 | /* 46134 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17146 | /* 46136 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17147 | /* 46139 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17148 | /* 46141 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17149 | /* 46144 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 17150 | /* 46149 */ // GIR_Coverage, 21853, |
| 17151 | /* 46149 */ GIR_EraseRootFromParent_Done, |
| 17152 | /* 46150 */ // Label 1113: @46150 |
| 17153 | /* 46150 */ GIM_Reject, |
| 17154 | /* 46151 */ // Label 1097: @46151 |
| 17155 | /* 46151 */ GIM_Try, /*On fail goto*//*Label 1114*/ GIMT_Encode4(46217), // Rule ID 22592 // |
| 17156 | /* 46156 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 17157 | /* 46159 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17158 | /* 46162 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17159 | /* 46166 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17160 | /* 46170 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17161 | /* 46174 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17162 | /* 46177 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17163 | /* 46181 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 17164 | /* 46188 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17165 | /* 46192 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17166 | /* 46194 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17167 | /* 46201 */ // (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) |
| 17168 | /* 46201 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSSrm_alt), |
| 17169 | /* 46204 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17170 | /* 46206 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17171 | /* 46210 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17172 | /* 46215 */ GIR_RootConstrainSelectedInstOperands, |
| 17173 | /* 46216 */ // GIR_Coverage, 22592, |
| 17174 | /* 46216 */ GIR_EraseRootFromParent_Done, |
| 17175 | /* 46217 */ // Label 1114: @46217 |
| 17176 | /* 46217 */ GIM_Try, /*On fail goto*//*Label 1115*/ GIMT_Encode4(46283), // Rule ID 22593 // |
| 17177 | /* 46222 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17178 | /* 46225 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17179 | /* 46228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17180 | /* 46232 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17181 | /* 46236 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17182 | /* 46240 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17183 | /* 46243 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17184 | /* 46247 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 17185 | /* 46254 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17186 | /* 46258 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17187 | /* 46260 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17188 | /* 46267 */ // (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) |
| 17189 | /* 46267 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSrm_alt), |
| 17190 | /* 46270 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17191 | /* 46272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17192 | /* 46276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17193 | /* 46281 */ GIR_RootConstrainSelectedInstOperands, |
| 17194 | /* 46282 */ // GIR_Coverage, 22593, |
| 17195 | /* 46282 */ GIR_EraseRootFromParent_Done, |
| 17196 | /* 46283 */ // Label 1115: @46283 |
| 17197 | /* 46283 */ GIM_Try, /*On fail goto*//*Label 1116*/ GIMT_Encode4(46349), // Rule ID 22594 // |
| 17198 | /* 46288 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17199 | /* 46291 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17200 | /* 46294 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17201 | /* 46298 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17202 | /* 46302 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17203 | /* 46306 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17204 | /* 46309 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17205 | /* 46313 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 17206 | /* 46320 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17207 | /* 46324 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17208 | /* 46326 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17209 | /* 46333 */ // (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) |
| 17210 | /* 46333 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSZrm_alt), |
| 17211 | /* 46336 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17212 | /* 46338 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17213 | /* 46342 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17214 | /* 46347 */ GIR_RootConstrainSelectedInstOperands, |
| 17215 | /* 46348 */ // GIR_Coverage, 22594, |
| 17216 | /* 46348 */ GIR_EraseRootFromParent_Done, |
| 17217 | /* 46349 */ // Label 1116: @46349 |
| 17218 | /* 46349 */ GIM_Try, /*On fail goto*//*Label 1117*/ GIMT_Encode4(46375), // Rule ID 2915 // |
| 17219 | /* 46354 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17220 | /* 46357 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17221 | /* 46360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17222 | /* 46364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17223 | /* 46368 */ // (bitconvert:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VMOVDI2SSrr:{ *:[f32] } GR32:{ *:[i32] }:$src) |
| 17224 | /* 46368 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVDI2SSrr), |
| 17225 | /* 46373 */ GIR_RootConstrainSelectedInstOperands, |
| 17226 | /* 46374 */ // GIR_Coverage, 2915, |
| 17227 | /* 46374 */ GIR_Done, |
| 17228 | /* 46375 */ // Label 1117: @46375 |
| 17229 | /* 46375 */ GIM_Try, /*On fail goto*//*Label 1118*/ GIMT_Encode4(46401), // Rule ID 2916 // |
| 17230 | /* 46380 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17231 | /* 46383 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17232 | /* 46386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17233 | /* 46390 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17234 | /* 46394 */ // (bitconvert:{ *:[f32] } GR32:{ *:[i32] }:$src) => (MOVDI2SSrr:{ *:[f32] } GR32:{ *:[i32] }:$src) |
| 17235 | /* 46394 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVDI2SSrr), |
| 17236 | /* 46399 */ GIR_RootConstrainSelectedInstOperands, |
| 17237 | /* 46400 */ // GIR_Coverage, 2916, |
| 17238 | /* 46400 */ GIR_Done, |
| 17239 | /* 46401 */ // Label 1118: @46401 |
| 17240 | /* 46401 */ GIM_Try, /*On fail goto*//*Label 1119*/ GIMT_Encode4(46427), // Rule ID 2925 // |
| 17241 | /* 46406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17242 | /* 46409 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17243 | /* 46412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17244 | /* 46416 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17245 | /* 46420 */ // (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src) => (VMOVSS2DIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 17246 | /* 46420 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVSS2DIrr), |
| 17247 | /* 46425 */ GIR_RootConstrainSelectedInstOperands, |
| 17248 | /* 46426 */ // GIR_Coverage, 2925, |
| 17249 | /* 46426 */ GIR_Done, |
| 17250 | /* 46427 */ // Label 1119: @46427 |
| 17251 | /* 46427 */ GIM_Try, /*On fail goto*//*Label 1120*/ GIMT_Encode4(46453), // Rule ID 2926 // |
| 17252 | /* 46432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17253 | /* 46435 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17254 | /* 46438 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17255 | /* 46442 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17256 | /* 46446 */ // (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src) => (MOVSS2DIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 17257 | /* 46446 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSS2DIrr), |
| 17258 | /* 46451 */ GIR_RootConstrainSelectedInstOperands, |
| 17259 | /* 46452 */ // GIR_Coverage, 2926, |
| 17260 | /* 46452 */ GIR_Done, |
| 17261 | /* 46453 */ // Label 1120: @46453 |
| 17262 | /* 46453 */ GIM_Try, /*On fail goto*//*Label 1121*/ GIMT_Encode4(46479), // Rule ID 4602 // |
| 17263 | /* 46458 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17264 | /* 46461 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17265 | /* 46464 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17266 | /* 46468 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17267 | /* 46472 */ // (bitconvert:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VMOVDI2SSZrr:{ *:[f32] } GR32:{ *:[i32] }:$src) |
| 17268 | /* 46472 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVDI2SSZrr), |
| 17269 | /* 46477 */ GIR_RootConstrainSelectedInstOperands, |
| 17270 | /* 46478 */ // GIR_Coverage, 4602, |
| 17271 | /* 46478 */ GIR_Done, |
| 17272 | /* 46479 */ // Label 1121: @46479 |
| 17273 | /* 46479 */ GIM_Try, /*On fail goto*//*Label 1122*/ GIMT_Encode4(46505), // Rule ID 4607 // |
| 17274 | /* 46484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17275 | /* 46487 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17276 | /* 46490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17277 | /* 46494 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17278 | /* 46498 */ // (bitconvert:{ *:[i32] } FR32X:{ *:[f32] }:$src) => (VMOVSS2DIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src) |
| 17279 | /* 46498 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVSS2DIZrr), |
| 17280 | /* 46503 */ GIR_RootConstrainSelectedInstOperands, |
| 17281 | /* 46504 */ // GIR_Coverage, 4607, |
| 17282 | /* 46504 */ GIR_Done, |
| 17283 | /* 46505 */ // Label 1122: @46505 |
| 17284 | /* 46505 */ GIM_Try, /*On fail goto*//*Label 1123*/ GIMT_Encode4(46532), // Rule ID 19440 // |
| 17285 | /* 46510 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 17286 | /* 46513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17287 | /* 46517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 17288 | /* 46521 */ // (bitconvert:{ *:[i32] } VK32:{ *:[v32i1] }:$src) => (COPY_TO_REGCLASS:{ *:[i32] } VK32:{ *:[v32i1] }:$src, GR32:{ *:[i32] }) |
| 17289 | /* 46521 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17290 | /* 46526 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 17291 | /* 46531 */ // GIR_Coverage, 19440, |
| 17292 | /* 46531 */ GIR_Done, |
| 17293 | /* 46532 */ // Label 1123: @46532 |
| 17294 | /* 46532 */ GIM_Try, /*On fail goto*//*Label 1124*/ GIMT_Encode4(46576), // Rule ID 19885 // |
| 17295 | /* 46537 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 17296 | /* 46540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17297 | /* 46544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 17298 | /* 46548 */ // (bitconvert:{ *:[f32] } VK32:{ *:[v32i1] }:$src) => (VMOVDI2SSZrr:{ *:[f32] } (KMOVDrk:{ *:[i32] } VK32:{ *:[v32i1] }:$src)) |
| 17299 | /* 46548 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17300 | /* 46551 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVDrk), |
| 17301 | /* 46555 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17302 | /* 46560 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17303 | /* 46564 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17304 | /* 46566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDI2SSZrr), |
| 17305 | /* 46569 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17306 | /* 46571 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17307 | /* 46574 */ GIR_RootConstrainSelectedInstOperands, |
| 17308 | /* 46575 */ // GIR_Coverage, 19885, |
| 17309 | /* 46575 */ GIR_EraseRootFromParent_Done, |
| 17310 | /* 46576 */ // Label 1124: @46576 |
| 17311 | /* 46576 */ GIM_Reject, |
| 17312 | /* 46577 */ // Label 1098: @46577 |
| 17313 | /* 46577 */ GIM_Try, /*On fail goto*//*Label 1125*/ GIMT_Encode4(46643), // Rule ID 22595 // |
| 17314 | /* 46582 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17315 | /* 46585 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17316 | /* 46588 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17317 | /* 46592 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17318 | /* 46596 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17319 | /* 46600 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17320 | /* 46603 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17321 | /* 46607 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 17322 | /* 46614 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17323 | /* 46618 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17324 | /* 46620 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17325 | /* 46627 */ // (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) |
| 17326 | /* 46627 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSDrm_alt), |
| 17327 | /* 46630 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17328 | /* 46632 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17329 | /* 46636 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17330 | /* 46641 */ GIR_RootConstrainSelectedInstOperands, |
| 17331 | /* 46642 */ // GIR_Coverage, 22595, |
| 17332 | /* 46642 */ GIR_EraseRootFromParent_Done, |
| 17333 | /* 46643 */ // Label 1125: @46643 |
| 17334 | /* 46643 */ GIM_Try, /*On fail goto*//*Label 1126*/ GIMT_Encode4(46709), // Rule ID 22596 // |
| 17335 | /* 46648 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17336 | /* 46651 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17337 | /* 46654 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17338 | /* 46658 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17339 | /* 46662 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17340 | /* 46666 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17341 | /* 46669 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17342 | /* 46673 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 17343 | /* 46680 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17344 | /* 46684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17345 | /* 46686 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17346 | /* 46693 */ // (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) |
| 17347 | /* 46693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDrm_alt), |
| 17348 | /* 46696 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17349 | /* 46698 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17350 | /* 46702 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17351 | /* 46707 */ GIR_RootConstrainSelectedInstOperands, |
| 17352 | /* 46708 */ // GIR_Coverage, 22596, |
| 17353 | /* 46708 */ GIR_EraseRootFromParent_Done, |
| 17354 | /* 46709 */ // Label 1126: @46709 |
| 17355 | /* 46709 */ GIM_Try, /*On fail goto*//*Label 1127*/ GIMT_Encode4(46775), // Rule ID 22597 // |
| 17356 | /* 46714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17357 | /* 46717 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17358 | /* 46720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17359 | /* 46724 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17360 | /* 46728 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17361 | /* 46732 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 17362 | /* 46735 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17363 | /* 46739 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 17364 | /* 46746 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17365 | /* 46750 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17366 | /* 46752 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17367 | /* 46759 */ // (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) |
| 17368 | /* 46759 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDZrm_alt), |
| 17369 | /* 46762 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17370 | /* 46764 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17371 | /* 46768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17372 | /* 46773 */ GIR_RootConstrainSelectedInstOperands, |
| 17373 | /* 46774 */ // GIR_Coverage, 22597, |
| 17374 | /* 46774 */ GIR_EraseRootFromParent_Done, |
| 17375 | /* 46775 */ // Label 1127: @46775 |
| 17376 | /* 46775 */ GIM_Try, /*On fail goto*//*Label 1128*/ GIMT_Encode4(46801), // Rule ID 2910 // |
| 17377 | /* 46780 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17378 | /* 46783 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17379 | /* 46786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17380 | /* 46790 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17381 | /* 46794 */ // (bitconvert:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VMOV64toSDrr:{ *:[f64] } GR64:{ *:[i64] }:$src) |
| 17382 | /* 46794 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOV64toSDrr), |
| 17383 | /* 46799 */ GIR_RootConstrainSelectedInstOperands, |
| 17384 | /* 46800 */ // GIR_Coverage, 2910, |
| 17385 | /* 46800 */ GIR_Done, |
| 17386 | /* 46801 */ // Label 1128: @46801 |
| 17387 | /* 46801 */ GIM_Try, /*On fail goto*//*Label 1129*/ GIMT_Encode4(46827), // Rule ID 2914 // |
| 17388 | /* 46806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17389 | /* 46809 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17390 | /* 46812 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17391 | /* 46816 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17392 | /* 46820 */ // (bitconvert:{ *:[f64] } GR64:{ *:[i64] }:$src) => (MOV64toSDrr:{ *:[f64] } GR64:{ *:[i64] }:$src) |
| 17393 | /* 46820 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOV64toSDrr), |
| 17394 | /* 46825 */ GIR_RootConstrainSelectedInstOperands, |
| 17395 | /* 46826 */ // GIR_Coverage, 2914, |
| 17396 | /* 46826 */ GIR_Done, |
| 17397 | /* 46827 */ // Label 1129: @46827 |
| 17398 | /* 46827 */ GIM_Try, /*On fail goto*//*Label 1130*/ GIMT_Encode4(46853), // Rule ID 2923 // |
| 17399 | /* 46832 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17400 | /* 46835 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17401 | /* 46838 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17402 | /* 46842 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17403 | /* 46846 */ // (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VMOVSDto64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 17404 | /* 46846 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVSDto64rr), |
| 17405 | /* 46851 */ GIR_RootConstrainSelectedInstOperands, |
| 17406 | /* 46852 */ // GIR_Coverage, 2923, |
| 17407 | /* 46852 */ GIR_Done, |
| 17408 | /* 46853 */ // Label 1130: @46853 |
| 17409 | /* 46853 */ GIM_Try, /*On fail goto*//*Label 1131*/ GIMT_Encode4(46879), // Rule ID 2924 // |
| 17410 | /* 46858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17411 | /* 46861 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17412 | /* 46864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17413 | /* 46868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17414 | /* 46872 */ // (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src) => (MOVSDto64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 17415 | /* 46872 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSDto64rr), |
| 17416 | /* 46877 */ GIR_RootConstrainSelectedInstOperands, |
| 17417 | /* 46878 */ // GIR_Coverage, 2924, |
| 17418 | /* 46878 */ GIR_Done, |
| 17419 | /* 46879 */ // Label 1131: @46879 |
| 17420 | /* 46879 */ GIM_Try, /*On fail goto*//*Label 1132*/ GIMT_Encode4(46905), // Rule ID 4600 // |
| 17421 | /* 46884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17422 | /* 46887 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17423 | /* 46890 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17424 | /* 46894 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17425 | /* 46898 */ // (bitconvert:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VMOV64toSDZrr:{ *:[f64] } GR64:{ *:[i64] }:$src) |
| 17426 | /* 46898 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOV64toSDZrr), |
| 17427 | /* 46903 */ GIR_RootConstrainSelectedInstOperands, |
| 17428 | /* 46904 */ // GIR_Coverage, 4600, |
| 17429 | /* 46904 */ GIR_Done, |
| 17430 | /* 46905 */ // Label 1132: @46905 |
| 17431 | /* 46905 */ GIM_Try, /*On fail goto*//*Label 1133*/ GIMT_Encode4(46931), // Rule ID 4601 // |
| 17432 | /* 46910 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17433 | /* 46913 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17434 | /* 46916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17435 | /* 46920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17436 | /* 46924 */ // (bitconvert:{ *:[i64] } FR64X:{ *:[f64] }:$src) => (VMOVSDto64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src) |
| 17437 | /* 46924 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMOVSDto64Zrr), |
| 17438 | /* 46929 */ GIR_RootConstrainSelectedInstOperands, |
| 17439 | /* 46930 */ // GIR_Coverage, 4601, |
| 17440 | /* 46930 */ GIR_Done, |
| 17441 | /* 46931 */ // Label 1133: @46931 |
| 17442 | /* 46931 */ GIM_Try, /*On fail goto*//*Label 1134*/ GIMT_Encode4(46958), // Rule ID 19442 // |
| 17443 | /* 46936 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 17444 | /* 46939 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17445 | /* 46943 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17446 | /* 46947 */ // (bitconvert:{ *:[i64] } VK64:{ *:[v64i1] }:$src) => (COPY_TO_REGCLASS:{ *:[i64] } VK64:{ *:[v64i1] }:$src, GR64:{ *:[i32] }) |
| 17447 | /* 46947 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17448 | /* 46952 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 17449 | /* 46957 */ // GIR_Coverage, 19442, |
| 17450 | /* 46957 */ GIR_Done, |
| 17451 | /* 46958 */ // Label 1134: @46958 |
| 17452 | /* 46958 */ GIM_Try, /*On fail goto*//*Label 1135*/ GIMT_Encode4(47002), // Rule ID 19887 // |
| 17453 | /* 46963 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 17454 | /* 46966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17455 | /* 46970 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17456 | /* 46974 */ // (bitconvert:{ *:[f64] } VK64:{ *:[v64i1] }:$src) => (VMOV64toSDZrr:{ *:[f64] } (KMOVQrk:{ *:[i64] } VK64:{ *:[v64i1] }:$src)) |
| 17457 | /* 46974 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 17458 | /* 46977 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVQrk), |
| 17459 | /* 46981 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17460 | /* 46986 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17461 | /* 46990 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17462 | /* 46992 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOV64toSDZrr), |
| 17463 | /* 46995 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17464 | /* 46997 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17465 | /* 47000 */ GIR_RootConstrainSelectedInstOperands, |
| 17466 | /* 47001 */ // GIR_Coverage, 19887, |
| 17467 | /* 47001 */ GIR_EraseRootFromParent_Done, |
| 17468 | /* 47002 */ // Label 1135: @47002 |
| 17469 | /* 47002 */ GIM_Reject, |
| 17470 | /* 47003 */ // Label 1099: @47003 |
| 17471 | /* 47003 */ GIM_Try, /*On fail goto*//*Label 1136*/ GIMT_Encode4(47189), |
| 17472 | /* 47008 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 17473 | /* 47011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 17474 | /* 47015 */ GIM_Try, /*On fail goto*//*Label 1137*/ GIMT_Encode4(47088), // Rule ID 19446 // |
| 17475 | /* 47020 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17476 | /* 47023 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17477 | /* 47027 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17478 | /* 47031 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17479 | /* 47034 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17480 | /* 47038 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17481 | /* 47042 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17482 | /* 47044 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17483 | /* 47051 */ // (bitconvert:{ *:[v8i1] } (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (COPY_TO_REGCLASS:{ *:[v8i1] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), VK8:{ *:[i32] }) |
| 17484 | /* 47051 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17485 | /* 47054 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 17486 | /* 47058 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17487 | /* 47063 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 17488 | /* 47067 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17489 | /* 47072 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17490 | /* 47074 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17491 | /* 47077 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17492 | /* 47079 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17493 | /* 47082 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 17494 | /* 47087 */ // GIR_Coverage, 19446, |
| 17495 | /* 47087 */ GIR_EraseRootFromParent_Done, |
| 17496 | /* 47088 */ // Label 1137: @47088 |
| 17497 | /* 47088 */ GIM_Try, /*On fail goto*//*Label 1138*/ GIMT_Encode4(47114), // Rule ID 19602 // |
| 17498 | /* 47093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 17499 | /* 47096 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/1, GIMT_Encode8(255), |
| 17500 | /* 47107 */ // (bitconvert:{ *:[v8i1] } 255:{ *:[i8] }) => (KSET1B:{ *:[v8i1] }) |
| 17501 | /* 47107 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KSET1B), |
| 17502 | /* 47110 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17503 | /* 47112 */ GIR_RootConstrainSelectedInstOperands, |
| 17504 | /* 47113 */ // GIR_Coverage, 19602, |
| 17505 | /* 47113 */ GIR_EraseRootFromParent_Done, |
| 17506 | /* 47114 */ // Label 1138: @47114 |
| 17507 | /* 47114 */ GIM_Try, /*On fail goto*//*Label 1139*/ GIMT_Encode4(47188), // Rule ID 19431 // |
| 17508 | /* 47119 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 17509 | /* 47123 */ // (bitconvert:{ *:[v8i1] } GR8:{ *:[i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i1] } (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR8:{ *:[i8] }:$src, sub_8bit:{ *:[i32] }), VK8:{ *:[i32] }) |
| 17510 | /* 47123 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 17511 | /* 47126 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17512 | /* 47130 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17513 | /* 47135 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17514 | /* 47137 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17515 | /* 47140 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17516 | /* 47144 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17517 | /* 47149 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17518 | /* 47152 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17519 | /* 47156 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 17520 | /* 47159 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 17521 | /* 47164 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 17522 | /* 47169 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 17523 | /* 47174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17524 | /* 47177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17525 | /* 47179 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17526 | /* 47182 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 17527 | /* 47187 */ // GIR_Coverage, 19431, |
| 17528 | /* 47187 */ GIR_EraseRootFromParent_Done, |
| 17529 | /* 47188 */ // Label 1139: @47188 |
| 17530 | /* 47188 */ GIM_Reject, |
| 17531 | /* 47189 */ // Label 1136: @47189 |
| 17532 | /* 47189 */ GIM_Reject, |
| 17533 | /* 47190 */ // Label 1100: @47190 |
| 17534 | /* 47190 */ GIM_Try, /*On fail goto*//*Label 1140*/ GIMT_Encode4(47376), |
| 17535 | /* 47195 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17536 | /* 47198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 17537 | /* 47202 */ GIM_Try, /*On fail goto*//*Label 1141*/ GIMT_Encode4(47254), // Rule ID 19447 // |
| 17538 | /* 47207 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17539 | /* 47210 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17540 | /* 47214 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17541 | /* 47218 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17542 | /* 47221 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17543 | /* 47225 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 17544 | /* 47229 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17545 | /* 47231 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17546 | /* 47238 */ // (bitconvert:{ *:[v16i1] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (KMOVWkm:{ *:[v16i1] } addr:{ *:[iPTR] }:$src) |
| 17547 | /* 47238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWkm), |
| 17548 | /* 47241 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17549 | /* 47243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17550 | /* 47247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17551 | /* 47252 */ GIR_RootConstrainSelectedInstOperands, |
| 17552 | /* 47253 */ // GIR_Coverage, 19447, |
| 17553 | /* 47253 */ GIR_EraseRootFromParent_Done, |
| 17554 | /* 47254 */ // Label 1141: @47254 |
| 17555 | /* 47254 */ GIM_Try, /*On fail goto*//*Label 1142*/ GIMT_Encode4(47301), // Rule ID 19603 // |
| 17556 | /* 47259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 17557 | /* 47262 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/1, GIMT_Encode8(255), |
| 17558 | /* 47273 */ // (bitconvert:{ *:[v16i1] } 255:{ *:[i16] }) => (COPY_TO_REGCLASS:{ *:[v16i1] } (KSET1B:{ *:[v8i1] }), VK16:{ *:[i32] }) |
| 17559 | /* 47273 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 17560 | /* 47276 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KSET1B), |
| 17561 | /* 47280 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17562 | /* 47285 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17563 | /* 47287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17564 | /* 47290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17565 | /* 47292 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17566 | /* 47295 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 17567 | /* 47300 */ // GIR_Coverage, 19603, |
| 17568 | /* 47300 */ GIR_EraseRootFromParent_Done, |
| 17569 | /* 47301 */ // Label 1142: @47301 |
| 17570 | /* 47301 */ GIM_Try, /*On fail goto*//*Label 1143*/ GIMT_Encode4(47375), // Rule ID 19428 // |
| 17571 | /* 47306 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17572 | /* 47310 */ // (bitconvert:{ *:[v16i1] } GR16:{ *:[i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i1] } (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR16:{ *:[i16] }:$src, sub_16bit:{ *:[i32] }), VK16:{ *:[i32] }) |
| 17573 | /* 47310 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 17574 | /* 47313 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 17575 | /* 47317 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17576 | /* 47322 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 17577 | /* 47324 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17578 | /* 47327 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 17579 | /* 47331 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17580 | /* 47336 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 17581 | /* 47339 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17582 | /* 47343 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/4, |
| 17583 | /* 47346 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17584 | /* 47351 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 17585 | /* 47356 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 17586 | /* 47361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17587 | /* 47364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17588 | /* 47366 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17589 | /* 47369 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 17590 | /* 47374 */ // GIR_Coverage, 19428, |
| 17591 | /* 47374 */ GIR_EraseRootFromParent_Done, |
| 17592 | /* 47375 */ // Label 1143: @47375 |
| 17593 | /* 47375 */ GIM_Reject, |
| 17594 | /* 47376 */ // Label 1140: @47376 |
| 17595 | /* 47376 */ GIM_Reject, |
| 17596 | /* 47377 */ // Label 1101: @47377 |
| 17597 | /* 47377 */ GIM_Try, /*On fail goto*//*Label 1144*/ GIMT_Encode4(47560), |
| 17598 | /* 47382 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17599 | /* 47385 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 17600 | /* 47389 */ GIM_Try, /*On fail goto*//*Label 1145*/ GIMT_Encode4(47408), // Rule ID 19604 // |
| 17601 | /* 47394 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17602 | /* 47397 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 255, |
| 17603 | /* 47401 */ // (bitconvert:{ *:[v32i1] } -1:{ *:[i32] }) => (KSET1D:{ *:[v32i1] }) |
| 17604 | /* 47401 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KSET1D), |
| 17605 | /* 47404 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17606 | /* 47406 */ GIR_RootConstrainSelectedInstOperands, |
| 17607 | /* 47407 */ // GIR_Coverage, 19604, |
| 17608 | /* 47407 */ GIR_EraseRootFromParent_Done, |
| 17609 | /* 47408 */ // Label 1145: @47408 |
| 17610 | /* 47408 */ GIM_Try, /*On fail goto*//*Label 1146*/ GIMT_Encode4(47455), // Rule ID 19606 // |
| 17611 | /* 47413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasDQI), |
| 17612 | /* 47416 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/1, GIMT_Encode8(255), |
| 17613 | /* 47427 */ // (bitconvert:{ *:[v32i1] } 255:{ *:[i32] }) => (COPY_TO_REGCLASS:{ *:[v32i1] } (KSET1B:{ *:[v8i1] }), VK32:{ *:[i32] }) |
| 17614 | /* 47427 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 17615 | /* 47430 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KSET1B), |
| 17616 | /* 47434 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17617 | /* 47439 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17618 | /* 47441 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17619 | /* 47444 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17620 | /* 47446 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17621 | /* 47449 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK32RegClassID), |
| 17622 | /* 47454 */ // GIR_Coverage, 19606, |
| 17623 | /* 47454 */ GIR_EraseRootFromParent_Done, |
| 17624 | /* 47455 */ // Label 1146: @47455 |
| 17625 | /* 47455 */ GIM_Try, /*On fail goto*//*Label 1147*/ GIMT_Encode4(47502), // Rule ID 19607 // |
| 17626 | /* 47460 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasDQI), |
| 17627 | /* 47463 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/1, GIMT_Encode8(65535), |
| 17628 | /* 47474 */ // (bitconvert:{ *:[v32i1] } 65535:{ *:[i32] }) => (COPY_TO_REGCLASS:{ *:[v32i1] } (KSET1W:{ *:[v16i1] }), VK32:{ *:[i32] }) |
| 17629 | /* 47474 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 17630 | /* 47477 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KSET1W), |
| 17631 | /* 47481 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17632 | /* 47486 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17633 | /* 47488 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17634 | /* 47491 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17635 | /* 47493 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17636 | /* 47496 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK32RegClassID), |
| 17637 | /* 47501 */ // GIR_Coverage, 19607, |
| 17638 | /* 47501 */ GIR_EraseRootFromParent_Done, |
| 17639 | /* 47502 */ // Label 1147: @47502 |
| 17640 | /* 47502 */ GIM_Try, /*On fail goto*//*Label 1148*/ GIMT_Encode4(47522), // Rule ID 19439 // |
| 17641 | /* 47507 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17642 | /* 47511 */ // (bitconvert:{ *:[v32i1] } GR32:{ *:[i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v32i1] } GR32:{ *:[i32] }:$src, VK32:{ *:[i32] }) |
| 17643 | /* 47511 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17644 | /* 47516 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK32RegClassID), |
| 17645 | /* 47521 */ // GIR_Coverage, 19439, |
| 17646 | /* 47521 */ GIR_Done, |
| 17647 | /* 47522 */ // Label 1148: @47522 |
| 17648 | /* 47522 */ GIM_Try, /*On fail goto*//*Label 1149*/ GIMT_Encode4(47559), // Rule ID 19884 // |
| 17649 | /* 47527 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17650 | /* 47531 */ // (bitconvert:{ *:[v32i1] } FR32X:{ *:[f32] }:$src) => (KMOVDkr:{ *:[v32i1] } (VMOVSS2DIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src)) |
| 17651 | /* 47531 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17652 | /* 47534 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVSS2DIZrr), |
| 17653 | /* 47538 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17654 | /* 47543 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17655 | /* 47547 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17656 | /* 47549 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDkr), |
| 17657 | /* 47552 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17658 | /* 47554 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17659 | /* 47557 */ GIR_RootConstrainSelectedInstOperands, |
| 17660 | /* 47558 */ // GIR_Coverage, 19884, |
| 17661 | /* 47558 */ GIR_EraseRootFromParent_Done, |
| 17662 | /* 47559 */ // Label 1149: @47559 |
| 17663 | /* 47559 */ GIM_Reject, |
| 17664 | /* 47560 */ // Label 1144: @47560 |
| 17665 | /* 47560 */ GIM_Reject, |
| 17666 | /* 47561 */ // Label 1102: @47561 |
| 17667 | /* 47561 */ GIM_Try, /*On fail goto*//*Label 1150*/ GIMT_Encode4(47791), |
| 17668 | /* 47566 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17669 | /* 47569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 17670 | /* 47573 */ GIM_Try, /*On fail goto*//*Label 1151*/ GIMT_Encode4(47592), // Rule ID 19605 // |
| 17671 | /* 47578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 17672 | /* 47581 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 255, |
| 17673 | /* 47585 */ // (bitconvert:{ *:[v64i1] } -1:{ *:[i64] }) => (KSET1Q:{ *:[v64i1] }) |
| 17674 | /* 47585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KSET1Q), |
| 17675 | /* 47588 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17676 | /* 47590 */ GIR_RootConstrainSelectedInstOperands, |
| 17677 | /* 47591 */ // GIR_Coverage, 19605, |
| 17678 | /* 47591 */ GIR_EraseRootFromParent_Done, |
| 17679 | /* 47592 */ // Label 1151: @47592 |
| 17680 | /* 47592 */ GIM_Try, /*On fail goto*//*Label 1152*/ GIMT_Encode4(47639), // Rule ID 19608 // |
| 17681 | /* 47597 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasDQI), |
| 17682 | /* 47600 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/1, GIMT_Encode8(255), |
| 17683 | /* 47611 */ // (bitconvert:{ *:[v64i1] } 255:{ *:[i64] }) => (COPY_TO_REGCLASS:{ *:[v64i1] } (KSET1B:{ *:[v8i1] }), VK64:{ *:[i32] }) |
| 17684 | /* 47611 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 17685 | /* 47614 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KSET1B), |
| 17686 | /* 47618 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17687 | /* 47623 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17688 | /* 47625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17689 | /* 47628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17690 | /* 47630 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17691 | /* 47633 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK64RegClassID), |
| 17692 | /* 47638 */ // GIR_Coverage, 19608, |
| 17693 | /* 47638 */ GIR_EraseRootFromParent_Done, |
| 17694 | /* 47639 */ // Label 1152: @47639 |
| 17695 | /* 47639 */ GIM_Try, /*On fail goto*//*Label 1153*/ GIMT_Encode4(47686), // Rule ID 19609 // |
| 17696 | /* 47644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasDQI), |
| 17697 | /* 47647 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/1, GIMT_Encode8(65535), |
| 17698 | /* 47658 */ // (bitconvert:{ *:[v64i1] } 65535:{ *:[i64] }) => (COPY_TO_REGCLASS:{ *:[v64i1] } (KSET1W:{ *:[v16i1] }), VK64:{ *:[i32] }) |
| 17699 | /* 47658 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 17700 | /* 47661 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KSET1W), |
| 17701 | /* 47665 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17702 | /* 47670 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17703 | /* 47672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17704 | /* 47675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17705 | /* 47677 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17706 | /* 47680 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK64RegClassID), |
| 17707 | /* 47685 */ // GIR_Coverage, 19609, |
| 17708 | /* 47685 */ GIR_EraseRootFromParent_Done, |
| 17709 | /* 47686 */ // Label 1153: @47686 |
| 17710 | /* 47686 */ GIM_Try, /*On fail goto*//*Label 1154*/ GIMT_Encode4(47733), // Rule ID 19610 // |
| 17711 | /* 47691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasDQI), |
| 17712 | /* 47694 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/1, GIMT_Encode8(4294967295), |
| 17713 | /* 47705 */ // (bitconvert:{ *:[v64i1] } 4294967295:{ *:[i64] }) => (COPY_TO_REGCLASS:{ *:[v64i1] } (KSET1D:{ *:[v32i1] }), VK64:{ *:[i32] }) |
| 17714 | /* 47705 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s1, |
| 17715 | /* 47708 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KSET1D), |
| 17716 | /* 47712 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17717 | /* 47717 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17718 | /* 47719 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17719 | /* 47722 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17720 | /* 47724 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17721 | /* 47727 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK64RegClassID), |
| 17722 | /* 47732 */ // GIR_Coverage, 19610, |
| 17723 | /* 47732 */ GIR_EraseRootFromParent_Done, |
| 17724 | /* 47733 */ // Label 1154: @47733 |
| 17725 | /* 47733 */ GIM_Try, /*On fail goto*//*Label 1155*/ GIMT_Encode4(47753), // Rule ID 19441 // |
| 17726 | /* 47738 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 17727 | /* 47742 */ // (bitconvert:{ *:[v64i1] } GR64:{ *:[i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v64i1] } GR64:{ *:[i64] }:$src, VK64:{ *:[i32] }) |
| 17728 | /* 47742 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17729 | /* 47747 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK64RegClassID), |
| 17730 | /* 47752 */ // GIR_Coverage, 19441, |
| 17731 | /* 47752 */ GIR_Done, |
| 17732 | /* 47753 */ // Label 1155: @47753 |
| 17733 | /* 47753 */ GIM_Try, /*On fail goto*//*Label 1156*/ GIMT_Encode4(47790), // Rule ID 19886 // |
| 17734 | /* 47758 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17735 | /* 47762 */ // (bitconvert:{ *:[v64i1] } FR64X:{ *:[f64] }:$src) => (KMOVQkr:{ *:[v64i1] } (VMOVSDto64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src)) |
| 17736 | /* 47762 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 17737 | /* 47765 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVSDto64Zrr), |
| 17738 | /* 47769 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17739 | /* 47774 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17740 | /* 47778 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17741 | /* 47780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQkr), |
| 17742 | /* 47783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17743 | /* 47785 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17744 | /* 47788 */ GIR_RootConstrainSelectedInstOperands, |
| 17745 | /* 47789 */ // GIR_Coverage, 19886, |
| 17746 | /* 47789 */ GIR_EraseRootFromParent_Done, |
| 17747 | /* 47790 */ // Label 1156: @47790 |
| 17748 | /* 47790 */ GIM_Reject, |
| 17749 | /* 47791 */ // Label 1150: @47791 |
| 17750 | /* 47791 */ GIM_Reject, |
| 17751 | /* 47792 */ // Label 1103: @47792 |
| 17752 | /* 47792 */ GIM_Reject, |
| 17753 | /* 47793 */ // Label 9: @47793 |
| 17754 | /* 47793 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 1169*/ GIMT_Encode4(50970), |
| 17755 | /* 47804 */ /*GILLT_s16*//*Label 1157*/ GIMT_Encode4(47888), |
| 17756 | /* 47808 */ /*GILLT_s32*//*Label 1158*/ GIMT_Encode4(47949), |
| 17757 | /* 47812 */ /*GILLT_s64*//*Label 1159*/ GIMT_Encode4(48573), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17758 | /* 47828 */ /*GILLT_v2s64*//*Label 1160*/ GIMT_Encode4(49197), GIMT_Encode4(0), |
| 17759 | /* 47836 */ /*GILLT_v4s32*//*Label 1161*/ GIMT_Encode4(49286), |
| 17760 | /* 47840 */ /*GILLT_v4s64*//*Label 1162*/ GIMT_Encode4(49732), GIMT_Encode4(0), |
| 17761 | /* 47848 */ /*GILLT_v8s16*//*Label 1163*/ GIMT_Encode4(49911), |
| 17762 | /* 47852 */ /*GILLT_v8s32*//*Label 1164*/ GIMT_Encode4(50000), |
| 17763 | /* 47856 */ /*GILLT_v8s64*//*Label 1165*/ GIMT_Encode4(50351), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17764 | /* 47868 */ /*GILLT_v16s16*//*Label 1166*/ GIMT_Encode4(50619), |
| 17765 | /* 47872 */ /*GILLT_v16s32*//*Label 1167*/ GIMT_Encode4(50708), GIMT_Encode4(0), GIMT_Encode4(0), |
| 17766 | /* 47884 */ /*GILLT_v32s16*//*Label 1168*/ GIMT_Encode4(50881), |
| 17767 | /* 47888 */ // Label 1157: @47888 |
| 17768 | /* 47888 */ GIM_Try, /*On fail goto*//*Label 1170*/ GIMT_Encode4(47948), // Rule ID 22230 // |
| 17769 | /* 47893 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 17770 | /* 47896 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17771 | /* 47899 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 17772 | /* 47903 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 17773 | /* 47907 */ // (lrint:{ *:[i16] } FR16:{ *:[f16] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (VCVTTSH2SIZrr:{ *:[i32] } FR16:{ *:[f16] }:$src), sub_16bit:{ *:[i32] }) |
| 17774 | /* 47907 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17775 | /* 47910 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrr), |
| 17776 | /* 47914 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17777 | /* 47919 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 17778 | /* 47923 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 17779 | /* 47925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17780 | /* 47928 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17781 | /* 47930 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 17782 | /* 47937 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 17783 | /* 47942 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 17784 | /* 47947 */ // GIR_Coverage, 22230, |
| 17785 | /* 47947 */ GIR_EraseRootFromParent_Done, |
| 17786 | /* 47948 */ // Label 1170: @47948 |
| 17787 | /* 47948 */ GIM_Reject, |
| 17788 | /* 47949 */ // Label 1158: @47949 |
| 17789 | /* 47949 */ GIM_Try, /*On fail goto*//*Label 1171*/ GIMT_Encode4(48008), // Rule ID 1756 // |
| 17790 | /* 47954 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17791 | /* 47957 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17792 | /* 47960 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17793 | /* 47964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17794 | /* 47968 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17795 | /* 47972 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17796 | /* 47975 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17797 | /* 47979 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17798 | /* 47983 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17799 | /* 47985 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17800 | /* 47992 */ // (lrint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 17801 | /* 47992 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SIrm), |
| 17802 | /* 47995 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17803 | /* 47997 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17804 | /* 48001 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17805 | /* 48006 */ GIR_RootConstrainSelectedInstOperands, |
| 17806 | /* 48007 */ // GIR_Coverage, 1756, |
| 17807 | /* 48007 */ GIR_EraseRootFromParent_Done, |
| 17808 | /* 48008 */ // Label 1171: @48008 |
| 17809 | /* 48008 */ GIM_Try, /*On fail goto*//*Label 1172*/ GIMT_Encode4(48067), // Rule ID 1760 // |
| 17810 | /* 48013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17811 | /* 48016 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17812 | /* 48019 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17813 | /* 48023 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17814 | /* 48027 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17815 | /* 48031 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17816 | /* 48034 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17817 | /* 48038 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17818 | /* 48042 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17819 | /* 48044 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17820 | /* 48051 */ // (lrint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 17821 | /* 48051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SIrm), |
| 17822 | /* 48054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17823 | /* 48056 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17824 | /* 48060 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17825 | /* 48065 */ GIR_RootConstrainSelectedInstOperands, |
| 17826 | /* 48066 */ // GIR_Coverage, 1760, |
| 17827 | /* 48066 */ GIR_EraseRootFromParent_Done, |
| 17828 | /* 48067 */ // Label 1172: @48067 |
| 17829 | /* 48067 */ GIM_Try, /*On fail goto*//*Label 1173*/ GIMT_Encode4(48126), // Rule ID 1780 // |
| 17830 | /* 48072 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 17831 | /* 48075 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17832 | /* 48078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17833 | /* 48082 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17834 | /* 48086 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17835 | /* 48090 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17836 | /* 48093 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17837 | /* 48097 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17838 | /* 48101 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17839 | /* 48103 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17840 | /* 48110 */ // (lrint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSS2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 17841 | /* 48110 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSS2SIrm), |
| 17842 | /* 48113 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17843 | /* 48115 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17844 | /* 48119 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17845 | /* 48124 */ GIR_RootConstrainSelectedInstOperands, |
| 17846 | /* 48125 */ // GIR_Coverage, 1780, |
| 17847 | /* 48125 */ GIR_EraseRootFromParent_Done, |
| 17848 | /* 48126 */ // Label 1173: @48126 |
| 17849 | /* 48126 */ GIM_Try, /*On fail goto*//*Label 1174*/ GIMT_Encode4(48185), // Rule ID 1784 // |
| 17850 | /* 48131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17851 | /* 48134 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17852 | /* 48137 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17853 | /* 48141 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17854 | /* 48145 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17855 | /* 48149 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17856 | /* 48152 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17857 | /* 48156 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17858 | /* 48160 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17859 | /* 48162 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17860 | /* 48169 */ // (lrint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSD2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 17861 | /* 48169 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSD2SIrm), |
| 17862 | /* 48172 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17863 | /* 48174 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17864 | /* 48178 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17865 | /* 48183 */ GIR_RootConstrainSelectedInstOperands, |
| 17866 | /* 48184 */ // GIR_Coverage, 1784, |
| 17867 | /* 48184 */ GIR_EraseRootFromParent_Done, |
| 17868 | /* 48185 */ // Label 1174: @48185 |
| 17869 | /* 48185 */ GIM_Try, /*On fail goto*//*Label 1175*/ GIMT_Encode4(48244), // Rule ID 10357 // |
| 17870 | /* 48190 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17871 | /* 48193 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17872 | /* 48196 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17873 | /* 48200 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17874 | /* 48204 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17875 | /* 48208 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17876 | /* 48211 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17877 | /* 48215 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17878 | /* 48219 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17879 | /* 48221 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17880 | /* 48228 */ // (lrint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 17881 | /* 48228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SIZrm), |
| 17882 | /* 48231 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17883 | /* 48233 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17884 | /* 48237 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17885 | /* 48242 */ GIR_RootConstrainSelectedInstOperands, |
| 17886 | /* 48243 */ // GIR_Coverage, 10357, |
| 17887 | /* 48243 */ GIR_EraseRootFromParent_Done, |
| 17888 | /* 48244 */ // Label 1175: @48244 |
| 17889 | /* 48244 */ GIM_Try, /*On fail goto*//*Label 1176*/ GIMT_Encode4(48303), // Rule ID 10361 // |
| 17890 | /* 48249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17891 | /* 48252 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17892 | /* 48255 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17893 | /* 48259 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17894 | /* 48263 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17895 | /* 48267 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17896 | /* 48270 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17897 | /* 48274 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17898 | /* 48278 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17899 | /* 48280 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17900 | /* 48287 */ // (lrint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 17901 | /* 48287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SIZrm), |
| 17902 | /* 48290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17903 | /* 48292 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17904 | /* 48296 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17905 | /* 48301 */ GIR_RootConstrainSelectedInstOperands, |
| 17906 | /* 48302 */ // GIR_Coverage, 10361, |
| 17907 | /* 48302 */ GIR_EraseRootFromParent_Done, |
| 17908 | /* 48303 */ // Label 1176: @48303 |
| 17909 | /* 48303 */ GIM_Try, /*On fail goto*//*Label 1177*/ GIMT_Encode4(48362), // Rule ID 22232 // |
| 17910 | /* 48308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 17911 | /* 48311 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 17912 | /* 48314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17913 | /* 48318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 17914 | /* 48322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 17915 | /* 48326 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 17916 | /* 48329 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 17917 | /* 48333 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 17918 | /* 48337 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17919 | /* 48339 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 17920 | /* 48346 */ // (lrint:{ *:[i32] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 17921 | /* 48346 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrm), |
| 17922 | /* 48349 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 17923 | /* 48351 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 17924 | /* 48355 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 17925 | /* 48360 */ GIR_RootConstrainSelectedInstOperands, |
| 17926 | /* 48361 */ // GIR_Coverage, 22232, |
| 17927 | /* 48361 */ GIR_EraseRootFromParent_Done, |
| 17928 | /* 48362 */ // Label 1177: @48362 |
| 17929 | /* 48362 */ GIM_Try, /*On fail goto*//*Label 1178*/ GIMT_Encode4(48392), // Rule ID 1755 // |
| 17930 | /* 48367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17931 | /* 48370 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17932 | /* 48373 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17933 | /* 48377 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17934 | /* 48381 */ // (lrint:{ *:[i32] } FR32:{ *:[f32] }:$src) => (VCVTSS2SIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 17935 | /* 48381 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SIrr), |
| 17936 | /* 48386 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 17937 | /* 48390 */ GIR_RootConstrainSelectedInstOperands, |
| 17938 | /* 48391 */ // GIR_Coverage, 1755, |
| 17939 | /* 48391 */ GIR_Done, |
| 17940 | /* 48392 */ // Label 1178: @48392 |
| 17941 | /* 48392 */ GIM_Try, /*On fail goto*//*Label 1179*/ GIMT_Encode4(48422), // Rule ID 1759 // |
| 17942 | /* 48397 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 17943 | /* 48400 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17944 | /* 48403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17945 | /* 48407 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17946 | /* 48411 */ // (lrint:{ *:[i32] } FR64:{ *:[f64] }:$src) => (VCVTSD2SIrr:{ *:[i32] } FR64:{ *:[f64] }:$src) |
| 17947 | /* 48411 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SIrr), |
| 17948 | /* 48416 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 17949 | /* 48420 */ GIR_RootConstrainSelectedInstOperands, |
| 17950 | /* 48421 */ // GIR_Coverage, 1759, |
| 17951 | /* 48421 */ GIR_Done, |
| 17952 | /* 48422 */ // Label 1179: @48422 |
| 17953 | /* 48422 */ GIM_Try, /*On fail goto*//*Label 1180*/ GIMT_Encode4(48452), // Rule ID 1779 // |
| 17954 | /* 48427 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 17955 | /* 48430 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17956 | /* 48433 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17957 | /* 48437 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 17958 | /* 48441 */ // (lrint:{ *:[i32] } FR32:{ *:[f32] }:$src) => (CVTSS2SIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 17959 | /* 48441 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSS2SIrr), |
| 17960 | /* 48446 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 17961 | /* 48450 */ GIR_RootConstrainSelectedInstOperands, |
| 17962 | /* 48451 */ // GIR_Coverage, 1779, |
| 17963 | /* 48451 */ GIR_Done, |
| 17964 | /* 48452 */ // Label 1180: @48452 |
| 17965 | /* 48452 */ GIM_Try, /*On fail goto*//*Label 1181*/ GIMT_Encode4(48482), // Rule ID 1783 // |
| 17966 | /* 48457 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 17967 | /* 48460 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17968 | /* 48463 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17969 | /* 48467 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 17970 | /* 48471 */ // (lrint:{ *:[i32] } FR64:{ *:[f64] }:$src) => (CVTSD2SIrr:{ *:[i32] } FR64:{ *:[f64] }:$src) |
| 17971 | /* 48471 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSD2SIrr), |
| 17972 | /* 48476 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 17973 | /* 48480 */ GIR_RootConstrainSelectedInstOperands, |
| 17974 | /* 48481 */ // GIR_Coverage, 1783, |
| 17975 | /* 48481 */ GIR_Done, |
| 17976 | /* 48482 */ // Label 1181: @48482 |
| 17977 | /* 48482 */ GIM_Try, /*On fail goto*//*Label 1182*/ GIMT_Encode4(48512), // Rule ID 10356 // |
| 17978 | /* 48487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17979 | /* 48490 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17980 | /* 48493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17981 | /* 48497 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 17982 | /* 48501 */ // (lrint:{ *:[i32] } FR32X:{ *:[f32] }:$src) => (VCVTSS2SIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src) |
| 17983 | /* 48501 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SIZrr), |
| 17984 | /* 48506 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 17985 | /* 48510 */ GIR_RootConstrainSelectedInstOperands, |
| 17986 | /* 48511 */ // GIR_Coverage, 10356, |
| 17987 | /* 48511 */ GIR_Done, |
| 17988 | /* 48512 */ // Label 1182: @48512 |
| 17989 | /* 48512 */ GIM_Try, /*On fail goto*//*Label 1183*/ GIMT_Encode4(48542), // Rule ID 10360 // |
| 17990 | /* 48517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 17991 | /* 48520 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17992 | /* 48523 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 17993 | /* 48527 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 17994 | /* 48531 */ // (lrint:{ *:[i32] } FR64X:{ *:[f64] }:$src) => (VCVTSD2SIZrr:{ *:[i32] } FR64X:{ *:[f64] }:$src) |
| 17995 | /* 48531 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SIZrr), |
| 17996 | /* 48536 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 17997 | /* 48540 */ GIR_RootConstrainSelectedInstOperands, |
| 17998 | /* 48541 */ // GIR_Coverage, 10360, |
| 17999 | /* 48541 */ GIR_Done, |
| 18000 | /* 48542 */ // Label 1183: @48542 |
| 18001 | /* 48542 */ GIM_Try, /*On fail goto*//*Label 1184*/ GIMT_Encode4(48572), // Rule ID 22231 // |
| 18002 | /* 48547 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18003 | /* 48550 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 18004 | /* 48553 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 18005 | /* 48557 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 18006 | /* 48561 */ // (lrint:{ *:[i32] } FR16:{ *:[f16] }:$src) => (VCVTTSH2SIZrr:{ *:[i32] } FR16:{ *:[f16] }:$src) |
| 18007 | /* 48561 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrr), |
| 18008 | /* 48566 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18009 | /* 48570 */ GIR_RootConstrainSelectedInstOperands, |
| 18010 | /* 48571 */ // GIR_Coverage, 22231, |
| 18011 | /* 48571 */ GIR_Done, |
| 18012 | /* 48572 */ // Label 1184: @48572 |
| 18013 | /* 48572 */ GIM_Reject, |
| 18014 | /* 48573 */ // Label 1159: @48573 |
| 18015 | /* 48573 */ GIM_Try, /*On fail goto*//*Label 1185*/ GIMT_Encode4(48632), // Rule ID 17980 // |
| 18016 | /* 48578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18017 | /* 48581 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18018 | /* 48584 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18019 | /* 48588 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18020 | /* 48592 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18021 | /* 48596 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18022 | /* 48599 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18023 | /* 48603 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18024 | /* 48607 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18025 | /* 48609 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18026 | /* 48616 */ // (lrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18027 | /* 48616 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64rm), |
| 18028 | /* 48619 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18029 | /* 48621 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18030 | /* 48625 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18031 | /* 48630 */ GIR_RootConstrainSelectedInstOperands, |
| 18032 | /* 48631 */ // GIR_Coverage, 17980, |
| 18033 | /* 48631 */ GIR_EraseRootFromParent_Done, |
| 18034 | /* 48632 */ // Label 1185: @48632 |
| 18035 | /* 48632 */ GIM_Try, /*On fail goto*//*Label 1186*/ GIMT_Encode4(48691), // Rule ID 17982 // |
| 18036 | /* 48637 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18037 | /* 48640 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18038 | /* 48643 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18039 | /* 48647 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18040 | /* 48651 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18041 | /* 48655 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18042 | /* 48658 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18043 | /* 48662 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18044 | /* 48666 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18045 | /* 48668 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18046 | /* 48675 */ // (lrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18047 | /* 48675 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64rm), |
| 18048 | /* 48678 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18049 | /* 48680 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18050 | /* 48684 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18051 | /* 48689 */ GIR_RootConstrainSelectedInstOperands, |
| 18052 | /* 48690 */ // GIR_Coverage, 17982, |
| 18053 | /* 48690 */ GIR_EraseRootFromParent_Done, |
| 18054 | /* 48691 */ // Label 1186: @48691 |
| 18055 | /* 48691 */ GIM_Try, /*On fail goto*//*Label 1187*/ GIMT_Encode4(48750), // Rule ID 17984 // |
| 18056 | /* 48696 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 18057 | /* 48699 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18058 | /* 48702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18059 | /* 48706 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18060 | /* 48710 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18061 | /* 48714 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18062 | /* 48717 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18063 | /* 48721 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18064 | /* 48725 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18065 | /* 48727 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18066 | /* 48734 */ // (lrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18067 | /* 48734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSS2SI64rm), |
| 18068 | /* 48737 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18069 | /* 48739 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18070 | /* 48743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18071 | /* 48748 */ GIR_RootConstrainSelectedInstOperands, |
| 18072 | /* 48749 */ // GIR_Coverage, 17984, |
| 18073 | /* 48749 */ GIR_EraseRootFromParent_Done, |
| 18074 | /* 48750 */ // Label 1187: @48750 |
| 18075 | /* 48750 */ GIM_Try, /*On fail goto*//*Label 1188*/ GIMT_Encode4(48809), // Rule ID 17986 // |
| 18076 | /* 48755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18077 | /* 48758 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18078 | /* 48761 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18079 | /* 48765 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18080 | /* 48769 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18081 | /* 48773 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18082 | /* 48776 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18083 | /* 48780 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18084 | /* 48784 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18085 | /* 48786 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18086 | /* 48793 */ // (lrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18087 | /* 48793 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSD2SI64rm), |
| 18088 | /* 48796 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18089 | /* 48798 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18090 | /* 48802 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18091 | /* 48807 */ GIR_RootConstrainSelectedInstOperands, |
| 18092 | /* 48808 */ // GIR_Coverage, 17986, |
| 18093 | /* 48808 */ GIR_EraseRootFromParent_Done, |
| 18094 | /* 48809 */ // Label 1188: @48809 |
| 18095 | /* 48809 */ GIM_Try, /*On fail goto*//*Label 1189*/ GIMT_Encode4(48868), // Rule ID 21171 // |
| 18096 | /* 48814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18097 | /* 48817 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18098 | /* 48820 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18099 | /* 48824 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18100 | /* 48828 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18101 | /* 48832 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18102 | /* 48835 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18103 | /* 48839 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18104 | /* 48843 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18105 | /* 48845 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18106 | /* 48852 */ // (lrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18107 | /* 48852 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64Zrm), |
| 18108 | /* 48855 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18109 | /* 48857 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18110 | /* 48861 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18111 | /* 48866 */ GIR_RootConstrainSelectedInstOperands, |
| 18112 | /* 48867 */ // GIR_Coverage, 21171, |
| 18113 | /* 48867 */ GIR_EraseRootFromParent_Done, |
| 18114 | /* 48868 */ // Label 1189: @48868 |
| 18115 | /* 48868 */ GIM_Try, /*On fail goto*//*Label 1190*/ GIMT_Encode4(48927), // Rule ID 21173 // |
| 18116 | /* 48873 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18117 | /* 48876 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18118 | /* 48879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18119 | /* 48883 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18120 | /* 48887 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18121 | /* 48891 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18122 | /* 48894 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18123 | /* 48898 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18124 | /* 48902 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18125 | /* 48904 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18126 | /* 48911 */ // (lrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18127 | /* 48911 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64Zrm), |
| 18128 | /* 48914 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18129 | /* 48916 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18130 | /* 48920 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18131 | /* 48925 */ GIR_RootConstrainSelectedInstOperands, |
| 18132 | /* 48926 */ // GIR_Coverage, 21173, |
| 18133 | /* 48926 */ GIR_EraseRootFromParent_Done, |
| 18134 | /* 48927 */ // Label 1190: @48927 |
| 18135 | /* 48927 */ GIM_Try, /*On fail goto*//*Label 1191*/ GIMT_Encode4(48986), // Rule ID 22234 // |
| 18136 | /* 48932 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_In64BitMode), |
| 18137 | /* 48935 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 18138 | /* 48938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18139 | /* 48942 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18140 | /* 48946 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18141 | /* 48950 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18142 | /* 48953 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18143 | /* 48957 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18144 | /* 48961 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18145 | /* 48963 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18146 | /* 48970 */ // (lrint:{ *:[i64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18147 | /* 48970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrm), |
| 18148 | /* 48973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18149 | /* 48975 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18150 | /* 48979 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18151 | /* 48984 */ GIR_RootConstrainSelectedInstOperands, |
| 18152 | /* 48985 */ // GIR_Coverage, 22234, |
| 18153 | /* 48985 */ GIR_EraseRootFromParent_Done, |
| 18154 | /* 48986 */ // Label 1191: @48986 |
| 18155 | /* 48986 */ GIM_Try, /*On fail goto*//*Label 1192*/ GIMT_Encode4(49016), // Rule ID 17979 // |
| 18156 | /* 48991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18157 | /* 48994 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18158 | /* 48997 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18159 | /* 49001 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 18160 | /* 49005 */ // (lrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (VCVTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 18161 | /* 49005 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64rr), |
| 18162 | /* 49010 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18163 | /* 49014 */ GIR_RootConstrainSelectedInstOperands, |
| 18164 | /* 49015 */ // GIR_Coverage, 17979, |
| 18165 | /* 49015 */ GIR_Done, |
| 18166 | /* 49016 */ // Label 1192: @49016 |
| 18167 | /* 49016 */ GIM_Try, /*On fail goto*//*Label 1193*/ GIMT_Encode4(49046), // Rule ID 17981 // |
| 18168 | /* 49021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18169 | /* 49024 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18170 | /* 49027 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18171 | /* 49031 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 18172 | /* 49035 */ // (lrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VCVTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 18173 | /* 49035 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64rr), |
| 18174 | /* 49040 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18175 | /* 49044 */ GIR_RootConstrainSelectedInstOperands, |
| 18176 | /* 49045 */ // GIR_Coverage, 17981, |
| 18177 | /* 49045 */ GIR_Done, |
| 18178 | /* 49046 */ // Label 1193: @49046 |
| 18179 | /* 49046 */ GIM_Try, /*On fail goto*//*Label 1194*/ GIMT_Encode4(49076), // Rule ID 17983 // |
| 18180 | /* 49051 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 18181 | /* 49054 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18182 | /* 49057 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18183 | /* 49061 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 18184 | /* 49065 */ // (lrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (CVTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 18185 | /* 49065 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSS2SI64rr), |
| 18186 | /* 49070 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18187 | /* 49074 */ GIR_RootConstrainSelectedInstOperands, |
| 18188 | /* 49075 */ // GIR_Coverage, 17983, |
| 18189 | /* 49075 */ GIR_Done, |
| 18190 | /* 49076 */ // Label 1194: @49076 |
| 18191 | /* 49076 */ GIM_Try, /*On fail goto*//*Label 1195*/ GIMT_Encode4(49106), // Rule ID 17985 // |
| 18192 | /* 49081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18193 | /* 49084 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18194 | /* 49087 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18195 | /* 49091 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 18196 | /* 49095 */ // (lrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (CVTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 18197 | /* 49095 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSD2SI64rr), |
| 18198 | /* 49100 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18199 | /* 49104 */ GIR_RootConstrainSelectedInstOperands, |
| 18200 | /* 49105 */ // GIR_Coverage, 17985, |
| 18201 | /* 49105 */ GIR_Done, |
| 18202 | /* 49106 */ // Label 1195: @49106 |
| 18203 | /* 49106 */ GIM_Try, /*On fail goto*//*Label 1196*/ GIMT_Encode4(49136), // Rule ID 21170 // |
| 18204 | /* 49111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18205 | /* 49114 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18206 | /* 49117 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18207 | /* 49121 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 18208 | /* 49125 */ // (lrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (VCVTSS2SI64Zrr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 18209 | /* 49125 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64Zrr), |
| 18210 | /* 49130 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18211 | /* 49134 */ GIR_RootConstrainSelectedInstOperands, |
| 18212 | /* 49135 */ // GIR_Coverage, 21170, |
| 18213 | /* 49135 */ GIR_Done, |
| 18214 | /* 49136 */ // Label 1196: @49136 |
| 18215 | /* 49136 */ GIM_Try, /*On fail goto*//*Label 1197*/ GIMT_Encode4(49166), // Rule ID 21172 // |
| 18216 | /* 49141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18217 | /* 49144 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18218 | /* 49147 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18219 | /* 49151 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 18220 | /* 49155 */ // (lrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VCVTSD2SI64Zrr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 18221 | /* 49155 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64Zrr), |
| 18222 | /* 49160 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18223 | /* 49164 */ GIR_RootConstrainSelectedInstOperands, |
| 18224 | /* 49165 */ // GIR_Coverage, 21172, |
| 18225 | /* 49165 */ GIR_Done, |
| 18226 | /* 49166 */ // Label 1197: @49166 |
| 18227 | /* 49166 */ GIM_Try, /*On fail goto*//*Label 1198*/ GIMT_Encode4(49196), // Rule ID 22233 // |
| 18228 | /* 49171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_In64BitMode), |
| 18229 | /* 49174 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 18230 | /* 49177 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18231 | /* 49181 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 18232 | /* 49185 */ // (lrint:{ *:[i64] } FR16:{ *:[f16] }:$src) => (VCVTTSH2SI64Zrr:{ *:[i64] } FR16:{ *:[f16] }:$src) |
| 18233 | /* 49185 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrr), |
| 18234 | /* 49190 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18235 | /* 49194 */ GIR_RootConstrainSelectedInstOperands, |
| 18236 | /* 49195 */ // GIR_Coverage, 22233, |
| 18237 | /* 49195 */ GIR_Done, |
| 18238 | /* 49196 */ // Label 1198: @49196 |
| 18239 | /* 49196 */ GIM_Reject, |
| 18240 | /* 49197 */ // Label 1160: @49197 |
| 18241 | /* 49197 */ GIM_Try, /*On fail goto*//*Label 1199*/ GIMT_Encode4(49285), |
| 18242 | /* 49202 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 18243 | /* 49205 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18244 | /* 49209 */ GIM_Try, /*On fail goto*//*Label 1200*/ GIMT_Encode4(49261), // Rule ID 21396 // |
| 18245 | /* 49214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18246 | /* 49217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18247 | /* 49221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18248 | /* 49225 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18249 | /* 49228 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18250 | /* 49232 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18251 | /* 49236 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18252 | /* 49238 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18253 | /* 49245 */ // (lrint:{ *:[v2i64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 18254 | /* 49245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ128rm), |
| 18255 | /* 49248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18256 | /* 49250 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18257 | /* 49254 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18258 | /* 49259 */ GIR_RootConstrainSelectedInstOperands, |
| 18259 | /* 49260 */ // GIR_Coverage, 21396, |
| 18260 | /* 49260 */ GIR_EraseRootFromParent_Done, |
| 18261 | /* 49261 */ // Label 1200: @49261 |
| 18262 | /* 49261 */ GIM_Try, /*On fail goto*//*Label 1201*/ GIMT_Encode4(49284), // Rule ID 21395 // |
| 18263 | /* 49266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18264 | /* 49269 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18265 | /* 49273 */ // (lrint:{ *:[v2i64] } VR128X:{ *:[v2f64] }:$src) => (VCVTPD2QQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2f64] }:$src) |
| 18266 | /* 49273 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ128rr), |
| 18267 | /* 49278 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18268 | /* 49282 */ GIR_RootConstrainSelectedInstOperands, |
| 18269 | /* 49283 */ // GIR_Coverage, 21395, |
| 18270 | /* 49283 */ GIR_Done, |
| 18271 | /* 49284 */ // Label 1201: @49284 |
| 18272 | /* 49284 */ GIM_Reject, |
| 18273 | /* 49285 */ // Label 1199: @49285 |
| 18274 | /* 49285 */ GIM_Reject, |
| 18275 | /* 49286 */ // Label 1161: @49286 |
| 18276 | /* 49286 */ GIM_Try, /*On fail goto*//*Label 1202*/ GIMT_Encode4(49345), // Rule ID 18034 // |
| 18277 | /* 49291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18278 | /* 49294 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18279 | /* 49297 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18280 | /* 49301 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18281 | /* 49305 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18282 | /* 49309 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18283 | /* 49312 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18284 | /* 49316 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18285 | /* 49320 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18286 | /* 49322 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18287 | /* 49329 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18288 | /* 49329 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQrm), |
| 18289 | /* 49332 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18290 | /* 49334 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18291 | /* 49338 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18292 | /* 49343 */ GIR_RootConstrainSelectedInstOperands, |
| 18293 | /* 49344 */ // GIR_Coverage, 18034, |
| 18294 | /* 49344 */ GIR_EraseRootFromParent_Done, |
| 18295 | /* 49345 */ // Label 1202: @49345 |
| 18296 | /* 49345 */ GIM_Try, /*On fail goto*//*Label 1203*/ GIMT_Encode4(49404), // Rule ID 18038 // |
| 18297 | /* 49350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18298 | /* 49353 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18299 | /* 49356 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18300 | /* 49360 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18301 | /* 49364 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18302 | /* 49368 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18303 | /* 49371 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18304 | /* 49375 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18305 | /* 49379 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18306 | /* 49381 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18307 | /* 49388 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2DQYrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18308 | /* 49388 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQYrm), |
| 18309 | /* 49391 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18310 | /* 49393 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18311 | /* 49397 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18312 | /* 49402 */ GIR_RootConstrainSelectedInstOperands, |
| 18313 | /* 49403 */ // GIR_Coverage, 18038, |
| 18314 | /* 49403 */ GIR_EraseRootFromParent_Done, |
| 18315 | /* 49404 */ // Label 1203: @49404 |
| 18316 | /* 49404 */ GIM_Try, /*On fail goto*//*Label 1204*/ GIMT_Encode4(49463), // Rule ID 18040 // |
| 18317 | /* 49409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18318 | /* 49412 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18319 | /* 49415 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18320 | /* 49419 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18321 | /* 49423 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18322 | /* 49427 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18323 | /* 49430 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18324 | /* 49434 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18325 | /* 49438 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18326 | /* 49440 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18327 | /* 49447 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTPS2DQrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18328 | /* 49447 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTPS2DQrm), |
| 18329 | /* 49450 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18330 | /* 49452 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18331 | /* 49456 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18332 | /* 49461 */ GIR_RootConstrainSelectedInstOperands, |
| 18333 | /* 49462 */ // GIR_Coverage, 18040, |
| 18334 | /* 49462 */ GIR_EraseRootFromParent_Done, |
| 18335 | /* 49463 */ // Label 1204: @49463 |
| 18336 | /* 49463 */ GIM_Try, /*On fail goto*//*Label 1205*/ GIMT_Encode4(49522), // Rule ID 21368 // |
| 18337 | /* 49468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18338 | /* 49471 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18339 | /* 49474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18340 | /* 49478 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18341 | /* 49482 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18342 | /* 49486 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18343 | /* 49489 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18344 | /* 49493 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18345 | /* 49497 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18346 | /* 49499 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18347 | /* 49506 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQZ128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18348 | /* 49506 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZ128rm), |
| 18349 | /* 49509 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18350 | /* 49511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18351 | /* 49515 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18352 | /* 49520 */ GIR_RootConstrainSelectedInstOperands, |
| 18353 | /* 49521 */ // GIR_Coverage, 21368, |
| 18354 | /* 49521 */ GIR_EraseRootFromParent_Done, |
| 18355 | /* 49522 */ // Label 1205: @49522 |
| 18356 | /* 49522 */ GIM_Try, /*On fail goto*//*Label 1206*/ GIMT_Encode4(49581), // Rule ID 21372 // |
| 18357 | /* 49527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18358 | /* 49530 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18359 | /* 49533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18360 | /* 49537 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18361 | /* 49541 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18362 | /* 49545 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18363 | /* 49548 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18364 | /* 49552 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18365 | /* 49556 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18366 | /* 49558 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18367 | /* 49565 */ // (lrint:{ *:[v4i32] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2DQZ256rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 18368 | /* 49565 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQZ256rm), |
| 18369 | /* 49568 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18370 | /* 49570 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18371 | /* 49574 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18372 | /* 49579 */ GIR_RootConstrainSelectedInstOperands, |
| 18373 | /* 49580 */ // GIR_Coverage, 21372, |
| 18374 | /* 49580 */ GIR_EraseRootFromParent_Done, |
| 18375 | /* 49581 */ // Label 1206: @49581 |
| 18376 | /* 49581 */ GIM_Try, /*On fail goto*//*Label 1207*/ GIMT_Encode4(49611), // Rule ID 18033 // |
| 18377 | /* 49586 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18378 | /* 49589 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18379 | /* 49592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18380 | /* 49596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18381 | /* 49600 */ // (lrint:{ *:[v4i32] } VR128:{ *:[v4f32] }:$src) => (VCVTPS2DQrr:{ *:[v4i32] } VR128:{ *:[v4f32] }:$src) |
| 18382 | /* 49600 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQrr), |
| 18383 | /* 49605 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18384 | /* 49609 */ GIR_RootConstrainSelectedInstOperands, |
| 18385 | /* 49610 */ // GIR_Coverage, 18033, |
| 18386 | /* 49610 */ GIR_Done, |
| 18387 | /* 49611 */ // Label 1207: @49611 |
| 18388 | /* 49611 */ GIM_Try, /*On fail goto*//*Label 1208*/ GIMT_Encode4(49641), // Rule ID 18037 // |
| 18389 | /* 49616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18390 | /* 49619 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18391 | /* 49622 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18392 | /* 49626 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 18393 | /* 49630 */ // (lrint:{ *:[v4i32] } VR256:{ *:[v4f64] }:$src) => (VCVTPD2DQYrr:{ *:[v4i32] } VR256:{ *:[v4f64] }:$src) |
| 18394 | /* 49630 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQYrr), |
| 18395 | /* 49635 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18396 | /* 49639 */ GIR_RootConstrainSelectedInstOperands, |
| 18397 | /* 49640 */ // GIR_Coverage, 18037, |
| 18398 | /* 49640 */ GIR_Done, |
| 18399 | /* 49641 */ // Label 1208: @49641 |
| 18400 | /* 49641 */ GIM_Try, /*On fail goto*//*Label 1209*/ GIMT_Encode4(49671), // Rule ID 18039 // |
| 18401 | /* 49646 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18402 | /* 49649 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18403 | /* 49652 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18404 | /* 49656 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 18405 | /* 49660 */ // (lrint:{ *:[v4i32] } VR128:{ *:[v4f32] }:$src) => (CVTPS2DQrr:{ *:[v4i32] } VR128:{ *:[v4f32] }:$src) |
| 18406 | /* 49660 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTPS2DQrr), |
| 18407 | /* 49665 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18408 | /* 49669 */ GIR_RootConstrainSelectedInstOperands, |
| 18409 | /* 49670 */ // GIR_Coverage, 18039, |
| 18410 | /* 49670 */ GIR_Done, |
| 18411 | /* 49671 */ // Label 1209: @49671 |
| 18412 | /* 49671 */ GIM_Try, /*On fail goto*//*Label 1210*/ GIMT_Encode4(49701), // Rule ID 21367 // |
| 18413 | /* 49676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18414 | /* 49679 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18415 | /* 49682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18416 | /* 49686 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18417 | /* 49690 */ // (lrint:{ *:[v4i32] } VR128X:{ *:[v4f32] }:$src) => (VCVTPS2DQZ128rr:{ *:[v4i32] } VR128X:{ *:[v4f32] }:$src) |
| 18418 | /* 49690 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZ128rr), |
| 18419 | /* 49695 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18420 | /* 49699 */ GIR_RootConstrainSelectedInstOperands, |
| 18421 | /* 49700 */ // GIR_Coverage, 21367, |
| 18422 | /* 49700 */ GIR_Done, |
| 18423 | /* 49701 */ // Label 1210: @49701 |
| 18424 | /* 49701 */ GIM_Try, /*On fail goto*//*Label 1211*/ GIMT_Encode4(49731), // Rule ID 21371 // |
| 18425 | /* 49706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18426 | /* 49709 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18427 | /* 49712 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18428 | /* 49716 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18429 | /* 49720 */ // (lrint:{ *:[v4i32] } VR256X:{ *:[v4f64] }:$src) => (VCVTPD2DQZ256rr:{ *:[v4i32] } VR256X:{ *:[v4f64] }:$src) |
| 18430 | /* 49720 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQZ256rr), |
| 18431 | /* 49725 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18432 | /* 49729 */ GIR_RootConstrainSelectedInstOperands, |
| 18433 | /* 49730 */ // GIR_Coverage, 21371, |
| 18434 | /* 49730 */ GIR_Done, |
| 18435 | /* 49731 */ // Label 1211: @49731 |
| 18436 | /* 49731 */ GIM_Reject, |
| 18437 | /* 49732 */ // Label 1162: @49732 |
| 18438 | /* 49732 */ GIM_Try, /*On fail goto*//*Label 1212*/ GIMT_Encode4(49791), // Rule ID 21392 // |
| 18439 | /* 49737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18440 | /* 49740 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18441 | /* 49743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18442 | /* 49747 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18443 | /* 49751 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18444 | /* 49755 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18445 | /* 49758 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18446 | /* 49762 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18447 | /* 49766 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18448 | /* 49768 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18449 | /* 49775 */ // (lrint:{ *:[v4i64] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2QQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 18450 | /* 49775 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZ256rm), |
| 18451 | /* 49778 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18452 | /* 49780 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18453 | /* 49784 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18454 | /* 49789 */ GIR_RootConstrainSelectedInstOperands, |
| 18455 | /* 49790 */ // GIR_Coverage, 21392, |
| 18456 | /* 49790 */ GIR_EraseRootFromParent_Done, |
| 18457 | /* 49791 */ // Label 1212: @49791 |
| 18458 | /* 49791 */ GIM_Try, /*On fail goto*//*Label 1213*/ GIMT_Encode4(49850), // Rule ID 21398 // |
| 18459 | /* 49796 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18460 | /* 49799 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18461 | /* 49802 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18462 | /* 49806 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18463 | /* 49810 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18464 | /* 49814 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18465 | /* 49817 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18466 | /* 49821 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18467 | /* 49825 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18468 | /* 49827 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18469 | /* 49834 */ // (lrint:{ *:[v4i64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 18470 | /* 49834 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ256rm), |
| 18471 | /* 49837 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18472 | /* 49839 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18473 | /* 49843 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18474 | /* 49848 */ GIR_RootConstrainSelectedInstOperands, |
| 18475 | /* 49849 */ // GIR_Coverage, 21398, |
| 18476 | /* 49849 */ GIR_EraseRootFromParent_Done, |
| 18477 | /* 49850 */ // Label 1213: @49850 |
| 18478 | /* 49850 */ GIM_Try, /*On fail goto*//*Label 1214*/ GIMT_Encode4(49880), // Rule ID 21391 // |
| 18479 | /* 49855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18480 | /* 49858 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 18481 | /* 49861 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18482 | /* 49865 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18483 | /* 49869 */ // (lrint:{ *:[v4i64] } VR128X:{ *:[v4f32] }:$src) => (VCVTPS2QQZ256rr:{ *:[v4i64] } VR128X:{ *:[v4f32] }:$src) |
| 18484 | /* 49869 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZ256rr), |
| 18485 | /* 49874 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18486 | /* 49878 */ GIR_RootConstrainSelectedInstOperands, |
| 18487 | /* 49879 */ // GIR_Coverage, 21391, |
| 18488 | /* 49879 */ GIR_Done, |
| 18489 | /* 49880 */ // Label 1214: @49880 |
| 18490 | /* 49880 */ GIM_Try, /*On fail goto*//*Label 1215*/ GIMT_Encode4(49910), // Rule ID 21397 // |
| 18491 | /* 49885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 18492 | /* 49888 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 18493 | /* 49891 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18494 | /* 49895 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18495 | /* 49899 */ // (lrint:{ *:[v4i64] } VR256X:{ *:[v4f64] }:$src) => (VCVTPD2QQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4f64] }:$src) |
| 18496 | /* 49899 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ256rr), |
| 18497 | /* 49904 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18498 | /* 49908 */ GIR_RootConstrainSelectedInstOperands, |
| 18499 | /* 49909 */ // GIR_Coverage, 21397, |
| 18500 | /* 49909 */ GIR_Done, |
| 18501 | /* 49910 */ // Label 1215: @49910 |
| 18502 | /* 49910 */ GIM_Reject, |
| 18503 | /* 49911 */ // Label 1163: @49911 |
| 18504 | /* 49911 */ GIM_Try, /*On fail goto*//*Label 1216*/ GIMT_Encode4(49999), |
| 18505 | /* 49916 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18506 | /* 49919 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18507 | /* 49923 */ GIM_Try, /*On fail goto*//*Label 1217*/ GIMT_Encode4(49975), // Rule ID 22217 // |
| 18508 | /* 49928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18509 | /* 49931 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18510 | /* 49935 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18511 | /* 49939 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18512 | /* 49942 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18513 | /* 49946 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18514 | /* 49950 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18515 | /* 49952 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18516 | /* 49959 */ // (lrint:{ *:[v8i16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2WZ128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 18517 | /* 49959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZ128rm), |
| 18518 | /* 49962 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18519 | /* 49964 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18520 | /* 49968 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18521 | /* 49973 */ GIR_RootConstrainSelectedInstOperands, |
| 18522 | /* 49974 */ // GIR_Coverage, 22217, |
| 18523 | /* 49974 */ GIR_EraseRootFromParent_Done, |
| 18524 | /* 49975 */ // Label 1217: @49975 |
| 18525 | /* 49975 */ GIM_Try, /*On fail goto*//*Label 1218*/ GIMT_Encode4(49998), // Rule ID 22216 // |
| 18526 | /* 49980 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18527 | /* 49983 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18528 | /* 49987 */ // (lrint:{ *:[v8i16] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2WZ128rr:{ *:[v8i16] } VR128X:{ *:[v8f16] }:$src) |
| 18529 | /* 49987 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZ128rr), |
| 18530 | /* 49992 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18531 | /* 49996 */ GIR_RootConstrainSelectedInstOperands, |
| 18532 | /* 49997 */ // GIR_Coverage, 22216, |
| 18533 | /* 49997 */ GIR_Done, |
| 18534 | /* 49998 */ // Label 1218: @49998 |
| 18535 | /* 49998 */ GIM_Reject, |
| 18536 | /* 49999 */ // Label 1216: @49999 |
| 18537 | /* 49999 */ GIM_Reject, |
| 18538 | /* 50000 */ // Label 1164: @50000 |
| 18539 | /* 50000 */ GIM_Try, /*On fail goto*//*Label 1219*/ GIMT_Encode4(50059), // Rule ID 18036 // |
| 18540 | /* 50005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18541 | /* 50008 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18542 | /* 50011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 18543 | /* 50015 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18544 | /* 50019 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18545 | /* 50023 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18546 | /* 50026 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18547 | /* 50030 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18548 | /* 50034 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18549 | /* 50036 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18550 | /* 50043 */ // (lrint:{ *:[v8i32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 18551 | /* 50043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQYrm), |
| 18552 | /* 50046 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18553 | /* 50048 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18554 | /* 50052 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18555 | /* 50057 */ GIR_RootConstrainSelectedInstOperands, |
| 18556 | /* 50058 */ // GIR_Coverage, 18036, |
| 18557 | /* 50058 */ GIR_EraseRootFromParent_Done, |
| 18558 | /* 50059 */ // Label 1219: @50059 |
| 18559 | /* 50059 */ GIM_Try, /*On fail goto*//*Label 1220*/ GIMT_Encode4(50118), // Rule ID 21370 // |
| 18560 | /* 50064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18561 | /* 50067 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18562 | /* 50070 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18563 | /* 50074 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18564 | /* 50078 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18565 | /* 50082 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18566 | /* 50085 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18567 | /* 50089 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18568 | /* 50093 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18569 | /* 50095 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18570 | /* 50102 */ // (lrint:{ *:[v8i32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 18571 | /* 50102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZ256rm), |
| 18572 | /* 50105 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18573 | /* 50107 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18574 | /* 50111 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18575 | /* 50116 */ GIR_RootConstrainSelectedInstOperands, |
| 18576 | /* 50117 */ // GIR_Coverage, 21370, |
| 18577 | /* 50117 */ GIR_EraseRootFromParent_Done, |
| 18578 | /* 50118 */ // Label 1220: @50118 |
| 18579 | /* 50118 */ GIM_Try, /*On fail goto*//*Label 1221*/ GIMT_Encode4(50174), // Rule ID 21376 // |
| 18580 | /* 50123 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 18581 | /* 50126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18582 | /* 50130 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18583 | /* 50134 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18584 | /* 50138 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18585 | /* 50141 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18586 | /* 50145 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18587 | /* 50149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18588 | /* 50151 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18589 | /* 50158 */ // (lrint:{ *:[v8i32] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2DQZrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 18590 | /* 50158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQZrm), |
| 18591 | /* 50161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18592 | /* 50163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18593 | /* 50167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18594 | /* 50172 */ GIR_RootConstrainSelectedInstOperands, |
| 18595 | /* 50173 */ // GIR_Coverage, 21376, |
| 18596 | /* 50173 */ GIR_EraseRootFromParent_Done, |
| 18597 | /* 50174 */ // Label 1221: @50174 |
| 18598 | /* 50174 */ GIM_Try, /*On fail goto*//*Label 1222*/ GIMT_Encode4(50233), // Rule ID 22221 // |
| 18599 | /* 50179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18600 | /* 50182 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18601 | /* 50185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18602 | /* 50189 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18603 | /* 50193 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18604 | /* 50197 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18605 | /* 50200 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18606 | /* 50204 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18607 | /* 50208 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18608 | /* 50210 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18609 | /* 50217 */ // (lrint:{ *:[v8i32] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2DQZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 18610 | /* 50217 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2DQZ256rm), |
| 18611 | /* 50220 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18612 | /* 50222 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18613 | /* 50226 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18614 | /* 50231 */ GIR_RootConstrainSelectedInstOperands, |
| 18615 | /* 50232 */ // GIR_Coverage, 22221, |
| 18616 | /* 50232 */ GIR_EraseRootFromParent_Done, |
| 18617 | /* 50233 */ // Label 1222: @50233 |
| 18618 | /* 50233 */ GIM_Try, /*On fail goto*//*Label 1223*/ GIMT_Encode4(50263), // Rule ID 18035 // |
| 18619 | /* 50238 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 18620 | /* 50241 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18621 | /* 50244 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 18622 | /* 50248 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 18623 | /* 50252 */ // (lrint:{ *:[v8i32] } VR256:{ *:[v8f32] }:$src) => (VCVTPS2DQYrr:{ *:[v8i32] } VR256:{ *:[v8f32] }:$src) |
| 18624 | /* 50252 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQYrr), |
| 18625 | /* 50257 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18626 | /* 50261 */ GIR_RootConstrainSelectedInstOperands, |
| 18627 | /* 50262 */ // GIR_Coverage, 18035, |
| 18628 | /* 50262 */ GIR_Done, |
| 18629 | /* 50263 */ // Label 1223: @50263 |
| 18630 | /* 50263 */ GIM_Try, /*On fail goto*//*Label 1224*/ GIMT_Encode4(50293), // Rule ID 21369 // |
| 18631 | /* 50268 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 18632 | /* 50271 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18633 | /* 50274 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18634 | /* 50278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18635 | /* 50282 */ // (lrint:{ *:[v8i32] } VR256X:{ *:[v8f32] }:$src) => (VCVTPS2DQZ256rr:{ *:[v8i32] } VR256X:{ *:[v8f32] }:$src) |
| 18636 | /* 50282 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZ256rr), |
| 18637 | /* 50287 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18638 | /* 50291 */ GIR_RootConstrainSelectedInstOperands, |
| 18639 | /* 50292 */ // GIR_Coverage, 21369, |
| 18640 | /* 50292 */ GIR_Done, |
| 18641 | /* 50293 */ // Label 1224: @50293 |
| 18642 | /* 50293 */ GIM_Try, /*On fail goto*//*Label 1225*/ GIMT_Encode4(50320), // Rule ID 21375 // |
| 18643 | /* 50298 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 18644 | /* 50301 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18645 | /* 50305 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18646 | /* 50309 */ // (lrint:{ *:[v8i32] } VR512:{ *:[v8f64] }:$src) => (VCVTPD2DQZrr:{ *:[v8i32] } VR512:{ *:[v8f64] }:$src) |
| 18647 | /* 50309 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2DQZrr), |
| 18648 | /* 50314 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18649 | /* 50318 */ GIR_RootConstrainSelectedInstOperands, |
| 18650 | /* 50319 */ // GIR_Coverage, 21375, |
| 18651 | /* 50319 */ GIR_Done, |
| 18652 | /* 50320 */ // Label 1225: @50320 |
| 18653 | /* 50320 */ GIM_Try, /*On fail goto*//*Label 1226*/ GIMT_Encode4(50350), // Rule ID 22220 // |
| 18654 | /* 50325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18655 | /* 50328 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18656 | /* 50331 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18657 | /* 50335 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18658 | /* 50339 */ // (lrint:{ *:[v8i32] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2DQZ256rr:{ *:[v8i32] } VR128X:{ *:[v8f16] }:$src) |
| 18659 | /* 50339 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2DQZ256rr), |
| 18660 | /* 50344 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18661 | /* 50348 */ GIR_RootConstrainSelectedInstOperands, |
| 18662 | /* 50349 */ // GIR_Coverage, 22220, |
| 18663 | /* 50349 */ GIR_Done, |
| 18664 | /* 50350 */ // Label 1226: @50350 |
| 18665 | /* 50350 */ GIM_Reject, |
| 18666 | /* 50351 */ // Label 1165: @50351 |
| 18667 | /* 50351 */ GIM_Try, /*On fail goto*//*Label 1227*/ GIMT_Encode4(50410), // Rule ID 21404 // |
| 18668 | /* 50356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 18669 | /* 50359 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18670 | /* 50362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18671 | /* 50366 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18672 | /* 50370 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18673 | /* 50374 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18674 | /* 50377 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18675 | /* 50381 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18676 | /* 50385 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18677 | /* 50387 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18678 | /* 50394 */ // (lrint:{ *:[v8i64] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 18679 | /* 50394 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZrm), |
| 18680 | /* 50397 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18681 | /* 50399 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18682 | /* 50403 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18683 | /* 50408 */ GIR_RootConstrainSelectedInstOperands, |
| 18684 | /* 50409 */ // GIR_Coverage, 21404, |
| 18685 | /* 50409 */ GIR_EraseRootFromParent_Done, |
| 18686 | /* 50410 */ // Label 1227: @50410 |
| 18687 | /* 50410 */ GIM_Try, /*On fail goto*//*Label 1228*/ GIMT_Encode4(50469), // Rule ID 21408 // |
| 18688 | /* 50415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 18689 | /* 50418 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 18690 | /* 50421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18691 | /* 50425 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18692 | /* 50429 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18693 | /* 50433 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18694 | /* 50436 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18695 | /* 50440 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18696 | /* 50444 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18697 | /* 50446 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18698 | /* 50453 */ // (lrint:{ *:[v8i64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 18699 | /* 50453 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZrm), |
| 18700 | /* 50456 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18701 | /* 50458 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18702 | /* 50462 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18703 | /* 50467 */ GIR_RootConstrainSelectedInstOperands, |
| 18704 | /* 50468 */ // GIR_Coverage, 21408, |
| 18705 | /* 50468 */ GIR_EraseRootFromParent_Done, |
| 18706 | /* 50469 */ // Label 1228: @50469 |
| 18707 | /* 50469 */ GIM_Try, /*On fail goto*//*Label 1229*/ GIMT_Encode4(50528), // Rule ID 22227 // |
| 18708 | /* 50474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18709 | /* 50477 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18710 | /* 50480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18711 | /* 50484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18712 | /* 50488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18713 | /* 50492 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18714 | /* 50495 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18715 | /* 50499 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18716 | /* 50503 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18717 | /* 50505 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18718 | /* 50512 */ // (lrint:{ *:[v8i64] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 18719 | /* 50512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2QQZrm), |
| 18720 | /* 50515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18721 | /* 50517 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18722 | /* 50521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18723 | /* 50526 */ GIR_RootConstrainSelectedInstOperands, |
| 18724 | /* 50527 */ // GIR_Coverage, 22227, |
| 18725 | /* 50527 */ GIR_EraseRootFromParent_Done, |
| 18726 | /* 50528 */ // Label 1229: @50528 |
| 18727 | /* 50528 */ GIM_Try, /*On fail goto*//*Label 1230*/ GIMT_Encode4(50558), // Rule ID 21403 // |
| 18728 | /* 50533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 18729 | /* 50536 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 18730 | /* 50539 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18731 | /* 50543 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18732 | /* 50547 */ // (lrint:{ *:[v8i64] } VR256X:{ *:[v8f32] }:$src) => (VCVTPS2QQZrr:{ *:[v8i64] } VR256X:{ *:[v8f32] }:$src) |
| 18733 | /* 50547 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZrr), |
| 18734 | /* 50552 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18735 | /* 50556 */ GIR_RootConstrainSelectedInstOperands, |
| 18736 | /* 50557 */ // GIR_Coverage, 21403, |
| 18737 | /* 50557 */ GIR_Done, |
| 18738 | /* 50558 */ // Label 1230: @50558 |
| 18739 | /* 50558 */ GIM_Try, /*On fail goto*//*Label 1231*/ GIMT_Encode4(50588), // Rule ID 21407 // |
| 18740 | /* 50563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 18741 | /* 50566 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 18742 | /* 50569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18743 | /* 50573 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18744 | /* 50577 */ // (lrint:{ *:[v8i64] } VR512:{ *:[v8f64] }:$src) => (VCVTPD2QQZrr:{ *:[v8i64] } VR512:{ *:[v8f64] }:$src) |
| 18745 | /* 50577 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZrr), |
| 18746 | /* 50582 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18747 | /* 50586 */ GIR_RootConstrainSelectedInstOperands, |
| 18748 | /* 50587 */ // GIR_Coverage, 21407, |
| 18749 | /* 50587 */ GIR_Done, |
| 18750 | /* 50588 */ // Label 1231: @50588 |
| 18751 | /* 50588 */ GIM_Try, /*On fail goto*//*Label 1232*/ GIMT_Encode4(50618), // Rule ID 22226 // |
| 18752 | /* 50593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18753 | /* 50596 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18754 | /* 50599 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18755 | /* 50603 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 18756 | /* 50607 */ // (lrint:{ *:[v8i64] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2QQZrr:{ *:[v8i64] } VR128X:{ *:[v8f16] }:$src) |
| 18757 | /* 50607 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2QQZrr), |
| 18758 | /* 50612 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18759 | /* 50616 */ GIR_RootConstrainSelectedInstOperands, |
| 18760 | /* 50617 */ // GIR_Coverage, 22226, |
| 18761 | /* 50617 */ GIR_Done, |
| 18762 | /* 50618 */ // Label 1232: @50618 |
| 18763 | /* 50618 */ GIM_Reject, |
| 18764 | /* 50619 */ // Label 1166: @50619 |
| 18765 | /* 50619 */ GIM_Try, /*On fail goto*//*Label 1233*/ GIMT_Encode4(50707), |
| 18766 | /* 50624 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 18767 | /* 50627 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18768 | /* 50631 */ GIM_Try, /*On fail goto*//*Label 1234*/ GIMT_Encode4(50683), // Rule ID 22219 // |
| 18769 | /* 50636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18770 | /* 50639 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18771 | /* 50643 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18772 | /* 50647 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18773 | /* 50650 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18774 | /* 50654 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18775 | /* 50658 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18776 | /* 50660 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18777 | /* 50667 */ // (lrint:{ *:[v16i16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2WZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 18778 | /* 50667 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZ256rm), |
| 18779 | /* 50670 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18780 | /* 50672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18781 | /* 50676 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18782 | /* 50681 */ GIR_RootConstrainSelectedInstOperands, |
| 18783 | /* 50682 */ // GIR_Coverage, 22219, |
| 18784 | /* 50682 */ GIR_EraseRootFromParent_Done, |
| 18785 | /* 50683 */ // Label 1234: @50683 |
| 18786 | /* 50683 */ GIM_Try, /*On fail goto*//*Label 1235*/ GIMT_Encode4(50706), // Rule ID 22218 // |
| 18787 | /* 50688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 18788 | /* 50691 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18789 | /* 50695 */ // (lrint:{ *:[v16i16] } VR256X:{ *:[v16f16] }:$src) => (VCVTPH2WZ256rr:{ *:[v16i16] } VR256X:{ *:[v16f16] }:$src) |
| 18790 | /* 50695 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZ256rr), |
| 18791 | /* 50700 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18792 | /* 50704 */ GIR_RootConstrainSelectedInstOperands, |
| 18793 | /* 50705 */ // GIR_Coverage, 22218, |
| 18794 | /* 50705 */ GIR_Done, |
| 18795 | /* 50706 */ // Label 1235: @50706 |
| 18796 | /* 50706 */ GIM_Reject, |
| 18797 | /* 50707 */ // Label 1233: @50707 |
| 18798 | /* 50707 */ GIM_Reject, |
| 18799 | /* 50708 */ // Label 1167: @50708 |
| 18800 | /* 50708 */ GIM_Try, /*On fail goto*//*Label 1236*/ GIMT_Encode4(50764), // Rule ID 21374 // |
| 18801 | /* 50713 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 18802 | /* 50716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18803 | /* 50720 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18804 | /* 50724 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18805 | /* 50728 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18806 | /* 50731 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18807 | /* 50735 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18808 | /* 50739 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18809 | /* 50741 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18810 | /* 50748 */ // (lrint:{ *:[v16i32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2DQZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 18811 | /* 50748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZrm), |
| 18812 | /* 50751 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18813 | /* 50753 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18814 | /* 50757 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18815 | /* 50762 */ GIR_RootConstrainSelectedInstOperands, |
| 18816 | /* 50763 */ // GIR_Coverage, 21374, |
| 18817 | /* 50763 */ GIR_EraseRootFromParent_Done, |
| 18818 | /* 50764 */ // Label 1236: @50764 |
| 18819 | /* 50764 */ GIM_Try, /*On fail goto*//*Label 1237*/ GIMT_Encode4(50823), // Rule ID 22225 // |
| 18820 | /* 50769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18821 | /* 50772 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 18822 | /* 50775 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18823 | /* 50779 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18824 | /* 50783 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18825 | /* 50787 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18826 | /* 50790 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18827 | /* 50794 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18828 | /* 50798 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18829 | /* 50800 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18830 | /* 50807 */ // (lrint:{ *:[v16i32] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2DQZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 18831 | /* 50807 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2DQZrm), |
| 18832 | /* 50810 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18833 | /* 50812 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18834 | /* 50816 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18835 | /* 50821 */ GIR_RootConstrainSelectedInstOperands, |
| 18836 | /* 50822 */ // GIR_Coverage, 22225, |
| 18837 | /* 50822 */ GIR_EraseRootFromParent_Done, |
| 18838 | /* 50823 */ // Label 1237: @50823 |
| 18839 | /* 50823 */ GIM_Try, /*On fail goto*//*Label 1238*/ GIMT_Encode4(50850), // Rule ID 21373 // |
| 18840 | /* 50828 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 18841 | /* 50831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18842 | /* 50835 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18843 | /* 50839 */ // (lrint:{ *:[v16i32] } VR512:{ *:[v16f32] }:$src) => (VCVTPS2DQZrr:{ *:[v16i32] } VR512:{ *:[v16f32] }:$src) |
| 18844 | /* 50839 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2DQZrr), |
| 18845 | /* 50844 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18846 | /* 50848 */ GIR_RootConstrainSelectedInstOperands, |
| 18847 | /* 50849 */ // GIR_Coverage, 21373, |
| 18848 | /* 50849 */ GIR_Done, |
| 18849 | /* 50850 */ // Label 1238: @50850 |
| 18850 | /* 50850 */ GIM_Try, /*On fail goto*//*Label 1239*/ GIMT_Encode4(50880), // Rule ID 22224 // |
| 18851 | /* 50855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18852 | /* 50858 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 18853 | /* 50861 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18854 | /* 50865 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 18855 | /* 50869 */ // (lrint:{ *:[v16i32] } VR256X:{ *:[v16f16] }:$src) => (VCVTPH2DQZrr:{ *:[v16i32] } VR256X:{ *:[v16f16] }:$src) |
| 18856 | /* 50869 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2DQZrr), |
| 18857 | /* 50874 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18858 | /* 50878 */ GIR_RootConstrainSelectedInstOperands, |
| 18859 | /* 50879 */ // GIR_Coverage, 22224, |
| 18860 | /* 50879 */ GIR_Done, |
| 18861 | /* 50880 */ // Label 1239: @50880 |
| 18862 | /* 50880 */ GIM_Reject, |
| 18863 | /* 50881 */ // Label 1168: @50881 |
| 18864 | /* 50881 */ GIM_Try, /*On fail goto*//*Label 1240*/ GIMT_Encode4(50969), |
| 18865 | /* 50886 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 18866 | /* 50889 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18867 | /* 50893 */ GIM_Try, /*On fail goto*//*Label 1241*/ GIMT_Encode4(50945), // Rule ID 22223 // |
| 18868 | /* 50898 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18869 | /* 50901 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18870 | /* 50905 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18871 | /* 50909 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18872 | /* 50912 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18873 | /* 50916 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18874 | /* 50920 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18875 | /* 50922 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18876 | /* 50929 */ // (lrint:{ *:[v32i16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2WZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 18877 | /* 50929 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZrm), |
| 18878 | /* 50932 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18879 | /* 50934 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18880 | /* 50938 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18881 | /* 50943 */ GIR_RootConstrainSelectedInstOperands, |
| 18882 | /* 50944 */ // GIR_Coverage, 22223, |
| 18883 | /* 50944 */ GIR_EraseRootFromParent_Done, |
| 18884 | /* 50945 */ // Label 1241: @50945 |
| 18885 | /* 50945 */ GIM_Try, /*On fail goto*//*Label 1242*/ GIMT_Encode4(50968), // Rule ID 22222 // |
| 18886 | /* 50950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 18887 | /* 50953 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 18888 | /* 50957 */ // (lrint:{ *:[v32i16] } VR512:{ *:[v32f16] }:$src) => (VCVTPH2WZrr:{ *:[v32i16] } VR512:{ *:[v32f16] }:$src) |
| 18889 | /* 50957 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2WZrr), |
| 18890 | /* 50962 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 18891 | /* 50966 */ GIR_RootConstrainSelectedInstOperands, |
| 18892 | /* 50967 */ // GIR_Coverage, 22222, |
| 18893 | /* 50967 */ GIR_Done, |
| 18894 | /* 50968 */ // Label 1242: @50968 |
| 18895 | /* 50968 */ GIM_Reject, |
| 18896 | /* 50969 */ // Label 1240: @50969 |
| 18897 | /* 50969 */ GIM_Reject, |
| 18898 | /* 50970 */ // Label 1169: @50970 |
| 18899 | /* 50970 */ GIM_Reject, |
| 18900 | /* 50971 */ // Label 10: @50971 |
| 18901 | /* 50971 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(16), /*)*//*default:*//*Label 1247*/ GIMT_Encode4(52190), |
| 18902 | /* 50982 */ /*GILLT_s64*//*Label 1243*/ GIMT_Encode4(51030), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 18903 | /* 50998 */ /*GILLT_v2s64*//*Label 1244*/ GIMT_Encode4(51654), GIMT_Encode4(0), GIMT_Encode4(0), |
| 18904 | /* 51010 */ /*GILLT_v4s64*//*Label 1245*/ GIMT_Encode4(51743), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 18905 | /* 51026 */ /*GILLT_v8s64*//*Label 1246*/ GIMT_Encode4(51922), |
| 18906 | /* 51030 */ // Label 1243: @51030 |
| 18907 | /* 51030 */ GIM_Try, /*On fail goto*//*Label 1248*/ GIMT_Encode4(51089), // Rule ID 1758 // |
| 18908 | /* 51035 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18909 | /* 51038 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18910 | /* 51041 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18911 | /* 51045 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18912 | /* 51049 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18913 | /* 51053 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18914 | /* 51056 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18915 | /* 51060 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18916 | /* 51064 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18917 | /* 51066 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18918 | /* 51073 */ // (llrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18919 | /* 51073 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64rm), |
| 18920 | /* 51076 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18921 | /* 51078 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18922 | /* 51082 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18923 | /* 51087 */ GIR_RootConstrainSelectedInstOperands, |
| 18924 | /* 51088 */ // GIR_Coverage, 1758, |
| 18925 | /* 51088 */ GIR_EraseRootFromParent_Done, |
| 18926 | /* 51089 */ // Label 1248: @51089 |
| 18927 | /* 51089 */ GIM_Try, /*On fail goto*//*Label 1249*/ GIMT_Encode4(51148), // Rule ID 1762 // |
| 18928 | /* 51094 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 18929 | /* 51097 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18930 | /* 51100 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18931 | /* 51104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18932 | /* 51108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18933 | /* 51112 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18934 | /* 51115 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18935 | /* 51119 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18936 | /* 51123 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18937 | /* 51125 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18938 | /* 51132 */ // (llrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18939 | /* 51132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64rm), |
| 18940 | /* 51135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18941 | /* 51137 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18942 | /* 51141 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18943 | /* 51146 */ GIR_RootConstrainSelectedInstOperands, |
| 18944 | /* 51147 */ // GIR_Coverage, 1762, |
| 18945 | /* 51147 */ GIR_EraseRootFromParent_Done, |
| 18946 | /* 51148 */ // Label 1249: @51148 |
| 18947 | /* 51148 */ GIM_Try, /*On fail goto*//*Label 1250*/ GIMT_Encode4(51207), // Rule ID 1782 // |
| 18948 | /* 51153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 18949 | /* 51156 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18950 | /* 51159 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18951 | /* 51163 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18952 | /* 51167 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18953 | /* 51171 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18954 | /* 51174 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18955 | /* 51178 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18956 | /* 51182 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18957 | /* 51184 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18958 | /* 51191 */ // (llrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18959 | /* 51191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSS2SI64rm), |
| 18960 | /* 51194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18961 | /* 51196 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18962 | /* 51200 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18963 | /* 51205 */ GIR_RootConstrainSelectedInstOperands, |
| 18964 | /* 51206 */ // GIR_Coverage, 1782, |
| 18965 | /* 51206 */ GIR_EraseRootFromParent_Done, |
| 18966 | /* 51207 */ // Label 1250: @51207 |
| 18967 | /* 51207 */ GIM_Try, /*On fail goto*//*Label 1251*/ GIMT_Encode4(51266), // Rule ID 1786 // |
| 18968 | /* 51212 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 18969 | /* 51215 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18970 | /* 51218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18971 | /* 51222 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18972 | /* 51226 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18973 | /* 51230 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18974 | /* 51233 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18975 | /* 51237 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18976 | /* 51241 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18977 | /* 51243 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18978 | /* 51250 */ // (llrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18979 | /* 51250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSD2SI64rm), |
| 18980 | /* 51253 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 18981 | /* 51255 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 18982 | /* 51259 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 18983 | /* 51264 */ GIR_RootConstrainSelectedInstOperands, |
| 18984 | /* 51265 */ // GIR_Coverage, 1786, |
| 18985 | /* 51265 */ GIR_EraseRootFromParent_Done, |
| 18986 | /* 51266 */ // Label 1251: @51266 |
| 18987 | /* 51266 */ GIM_Try, /*On fail goto*//*Label 1252*/ GIMT_Encode4(51325), // Rule ID 10359 // |
| 18988 | /* 51271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 18989 | /* 51274 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18990 | /* 51277 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 18991 | /* 51281 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 18992 | /* 51285 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 18993 | /* 51289 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 18994 | /* 51292 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 18995 | /* 51296 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 18996 | /* 51300 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18997 | /* 51302 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 18998 | /* 51309 */ // (llrint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 18999 | /* 51309 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64Zrm), |
| 19000 | /* 51312 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19001 | /* 51314 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19002 | /* 51318 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19003 | /* 51323 */ GIR_RootConstrainSelectedInstOperands, |
| 19004 | /* 51324 */ // GIR_Coverage, 10359, |
| 19005 | /* 51324 */ GIR_EraseRootFromParent_Done, |
| 19006 | /* 51325 */ // Label 1252: @51325 |
| 19007 | /* 51325 */ GIM_Try, /*On fail goto*//*Label 1253*/ GIMT_Encode4(51384), // Rule ID 10363 // |
| 19008 | /* 51330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19009 | /* 51333 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19010 | /* 51336 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19011 | /* 51340 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19012 | /* 51344 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19013 | /* 51348 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19014 | /* 51351 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19015 | /* 51355 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19016 | /* 51359 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19017 | /* 51361 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19018 | /* 51368 */ // (llrint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSD2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19019 | /* 51368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64Zrm), |
| 19020 | /* 51371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19021 | /* 51373 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19022 | /* 51377 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19023 | /* 51382 */ GIR_RootConstrainSelectedInstOperands, |
| 19024 | /* 51383 */ // GIR_Coverage, 10363, |
| 19025 | /* 51383 */ GIR_EraseRootFromParent_Done, |
| 19026 | /* 51384 */ // Label 1253: @51384 |
| 19027 | /* 51384 */ GIM_Try, /*On fail goto*//*Label 1254*/ GIMT_Encode4(51443), // Rule ID 22236 // |
| 19028 | /* 51389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_In64BitMode), |
| 19029 | /* 51392 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 19030 | /* 51395 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19031 | /* 51399 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19032 | /* 51403 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19033 | /* 51407 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19034 | /* 51410 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19035 | /* 51414 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19036 | /* 51418 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19037 | /* 51420 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19038 | /* 51427 */ // (llrint:{ *:[i64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19039 | /* 51427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrm), |
| 19040 | /* 51430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19041 | /* 51432 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19042 | /* 51436 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19043 | /* 51441 */ GIR_RootConstrainSelectedInstOperands, |
| 19044 | /* 51442 */ // GIR_Coverage, 22236, |
| 19045 | /* 51442 */ GIR_EraseRootFromParent_Done, |
| 19046 | /* 51443 */ // Label 1254: @51443 |
| 19047 | /* 51443 */ GIM_Try, /*On fail goto*//*Label 1255*/ GIMT_Encode4(51473), // Rule ID 1757 // |
| 19048 | /* 51448 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19049 | /* 51451 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19050 | /* 51454 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19051 | /* 51458 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 19052 | /* 51462 */ // (llrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (VCVTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 19053 | /* 51462 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64rr), |
| 19054 | /* 51467 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19055 | /* 51471 */ GIR_RootConstrainSelectedInstOperands, |
| 19056 | /* 51472 */ // GIR_Coverage, 1757, |
| 19057 | /* 51472 */ GIR_Done, |
| 19058 | /* 51473 */ // Label 1255: @51473 |
| 19059 | /* 51473 */ GIM_Try, /*On fail goto*//*Label 1256*/ GIMT_Encode4(51503), // Rule ID 1761 // |
| 19060 | /* 51478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19061 | /* 51481 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19062 | /* 51484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19063 | /* 51488 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 19064 | /* 51492 */ // (llrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VCVTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 19065 | /* 51492 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64rr), |
| 19066 | /* 51497 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19067 | /* 51501 */ GIR_RootConstrainSelectedInstOperands, |
| 19068 | /* 51502 */ // GIR_Coverage, 1761, |
| 19069 | /* 51502 */ GIR_Done, |
| 19070 | /* 51503 */ // Label 1256: @51503 |
| 19071 | /* 51503 */ GIM_Try, /*On fail goto*//*Label 1257*/ GIMT_Encode4(51533), // Rule ID 1781 // |
| 19072 | /* 51508 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 19073 | /* 51511 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19074 | /* 51514 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19075 | /* 51518 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 19076 | /* 51522 */ // (llrint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (CVTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 19077 | /* 51522 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSS2SI64rr), |
| 19078 | /* 51527 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19079 | /* 51531 */ GIR_RootConstrainSelectedInstOperands, |
| 19080 | /* 51532 */ // GIR_Coverage, 1781, |
| 19081 | /* 51532 */ GIR_Done, |
| 19082 | /* 51533 */ // Label 1257: @51533 |
| 19083 | /* 51533 */ GIM_Try, /*On fail goto*//*Label 1258*/ GIMT_Encode4(51563), // Rule ID 1785 // |
| 19084 | /* 51538 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 19085 | /* 51541 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19086 | /* 51544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19087 | /* 51548 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 19088 | /* 51552 */ // (llrint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (CVTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 19089 | /* 51552 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSD2SI64rr), |
| 19090 | /* 51557 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19091 | /* 51561 */ GIR_RootConstrainSelectedInstOperands, |
| 19092 | /* 51562 */ // GIR_Coverage, 1785, |
| 19093 | /* 51562 */ GIR_Done, |
| 19094 | /* 51563 */ // Label 1258: @51563 |
| 19095 | /* 51563 */ GIM_Try, /*On fail goto*//*Label 1259*/ GIMT_Encode4(51593), // Rule ID 10358 // |
| 19096 | /* 51568 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19097 | /* 51571 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 19098 | /* 51574 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19099 | /* 51578 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 19100 | /* 51582 */ // (llrint:{ *:[i64] } FR32X:{ *:[f32] }:$src) => (VCVTSS2SI64Zrr:{ *:[i64] } FR32X:{ *:[f32] }:$src) |
| 19101 | /* 51582 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SI64Zrr), |
| 19102 | /* 51587 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19103 | /* 51591 */ GIR_RootConstrainSelectedInstOperands, |
| 19104 | /* 51592 */ // GIR_Coverage, 10358, |
| 19105 | /* 51592 */ GIR_Done, |
| 19106 | /* 51593 */ // Label 1259: @51593 |
| 19107 | /* 51593 */ GIM_Try, /*On fail goto*//*Label 1260*/ GIMT_Encode4(51623), // Rule ID 10362 // |
| 19108 | /* 51598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19109 | /* 51601 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 19110 | /* 51604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19111 | /* 51608 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 19112 | /* 51612 */ // (llrint:{ *:[i64] } FR64X:{ *:[f64] }:$src) => (VCVTSD2SI64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src) |
| 19113 | /* 51612 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SI64Zrr), |
| 19114 | /* 51617 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19115 | /* 51621 */ GIR_RootConstrainSelectedInstOperands, |
| 19116 | /* 51622 */ // GIR_Coverage, 10362, |
| 19117 | /* 51622 */ GIR_Done, |
| 19118 | /* 51623 */ // Label 1260: @51623 |
| 19119 | /* 51623 */ GIM_Try, /*On fail goto*//*Label 1261*/ GIMT_Encode4(51653), // Rule ID 22235 // |
| 19120 | /* 51628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_In64BitMode), |
| 19121 | /* 51631 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 19122 | /* 51634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19123 | /* 51638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 19124 | /* 51642 */ // (llrint:{ *:[i64] } FR16:{ *:[f16] }:$src) => (VCVTTSH2SI64Zrr:{ *:[i64] } FR16:{ *:[f16] }:$src) |
| 19125 | /* 51642 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrr), |
| 19126 | /* 51647 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19127 | /* 51651 */ GIR_RootConstrainSelectedInstOperands, |
| 19128 | /* 51652 */ // GIR_Coverage, 22235, |
| 19129 | /* 51652 */ GIR_Done, |
| 19130 | /* 51653 */ // Label 1261: @51653 |
| 19131 | /* 51653 */ GIM_Reject, |
| 19132 | /* 51654 */ // Label 1244: @51654 |
| 19133 | /* 51654 */ GIM_Try, /*On fail goto*//*Label 1262*/ GIMT_Encode4(51742), |
| 19134 | /* 51659 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 19135 | /* 51662 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19136 | /* 51666 */ GIM_Try, /*On fail goto*//*Label 1263*/ GIMT_Encode4(51718), // Rule ID 21400 // |
| 19137 | /* 51671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19138 | /* 51674 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19139 | /* 51678 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19140 | /* 51682 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19141 | /* 51685 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19142 | /* 51689 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19143 | /* 51693 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19144 | /* 51695 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19145 | /* 51702 */ // (llrint:{ *:[v2i64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 19146 | /* 51702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ128rm), |
| 19147 | /* 51705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19148 | /* 51707 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19149 | /* 51711 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19150 | /* 51716 */ GIR_RootConstrainSelectedInstOperands, |
| 19151 | /* 51717 */ // GIR_Coverage, 21400, |
| 19152 | /* 51717 */ GIR_EraseRootFromParent_Done, |
| 19153 | /* 51718 */ // Label 1263: @51718 |
| 19154 | /* 51718 */ GIM_Try, /*On fail goto*//*Label 1264*/ GIMT_Encode4(51741), // Rule ID 21399 // |
| 19155 | /* 51723 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19156 | /* 51726 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19157 | /* 51730 */ // (llrint:{ *:[v2i64] } VR128X:{ *:[v2f64] }:$src) => (VCVTPD2QQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2f64] }:$src) |
| 19158 | /* 51730 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ128rr), |
| 19159 | /* 51735 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19160 | /* 51739 */ GIR_RootConstrainSelectedInstOperands, |
| 19161 | /* 51740 */ // GIR_Coverage, 21399, |
| 19162 | /* 51740 */ GIR_Done, |
| 19163 | /* 51741 */ // Label 1264: @51741 |
| 19164 | /* 51741 */ GIM_Reject, |
| 19165 | /* 51742 */ // Label 1262: @51742 |
| 19166 | /* 51742 */ GIM_Reject, |
| 19167 | /* 51743 */ // Label 1245: @51743 |
| 19168 | /* 51743 */ GIM_Try, /*On fail goto*//*Label 1265*/ GIMT_Encode4(51802), // Rule ID 21394 // |
| 19169 | /* 51748 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19170 | /* 51751 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 19171 | /* 51754 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19172 | /* 51758 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19173 | /* 51762 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19174 | /* 51766 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19175 | /* 51769 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19176 | /* 51773 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19177 | /* 51777 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19178 | /* 51779 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19179 | /* 51786 */ // (llrint:{ *:[v4i64] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2QQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 19180 | /* 51786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZ256rm), |
| 19181 | /* 51789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19182 | /* 51791 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19183 | /* 51795 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19184 | /* 51800 */ GIR_RootConstrainSelectedInstOperands, |
| 19185 | /* 51801 */ // GIR_Coverage, 21394, |
| 19186 | /* 51801 */ GIR_EraseRootFromParent_Done, |
| 19187 | /* 51802 */ // Label 1265: @51802 |
| 19188 | /* 51802 */ GIM_Try, /*On fail goto*//*Label 1266*/ GIMT_Encode4(51861), // Rule ID 21402 // |
| 19189 | /* 51807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19190 | /* 51810 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 19191 | /* 51813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19192 | /* 51817 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19193 | /* 51821 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19194 | /* 51825 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19195 | /* 51828 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19196 | /* 51832 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19197 | /* 51836 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19198 | /* 51838 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19199 | /* 51845 */ // (llrint:{ *:[v4i64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 19200 | /* 51845 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ256rm), |
| 19201 | /* 51848 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19202 | /* 51850 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19203 | /* 51854 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19204 | /* 51859 */ GIR_RootConstrainSelectedInstOperands, |
| 19205 | /* 51860 */ // GIR_Coverage, 21402, |
| 19206 | /* 51860 */ GIR_EraseRootFromParent_Done, |
| 19207 | /* 51861 */ // Label 1266: @51861 |
| 19208 | /* 51861 */ GIM_Try, /*On fail goto*//*Label 1267*/ GIMT_Encode4(51891), // Rule ID 21393 // |
| 19209 | /* 51866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19210 | /* 51869 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 19211 | /* 51872 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19212 | /* 51876 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19213 | /* 51880 */ // (llrint:{ *:[v4i64] } VR128X:{ *:[v4f32] }:$src) => (VCVTPS2QQZ256rr:{ *:[v4i64] } VR128X:{ *:[v4f32] }:$src) |
| 19214 | /* 51880 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZ256rr), |
| 19215 | /* 51885 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19216 | /* 51889 */ GIR_RootConstrainSelectedInstOperands, |
| 19217 | /* 51890 */ // GIR_Coverage, 21393, |
| 19218 | /* 51890 */ GIR_Done, |
| 19219 | /* 51891 */ // Label 1267: @51891 |
| 19220 | /* 51891 */ GIM_Try, /*On fail goto*//*Label 1268*/ GIMT_Encode4(51921), // Rule ID 21401 // |
| 19221 | /* 51896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 19222 | /* 51899 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 19223 | /* 51902 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19224 | /* 51906 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19225 | /* 51910 */ // (llrint:{ *:[v4i64] } VR256X:{ *:[v4f64] }:$src) => (VCVTPD2QQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4f64] }:$src) |
| 19226 | /* 51910 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZ256rr), |
| 19227 | /* 51915 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19228 | /* 51919 */ GIR_RootConstrainSelectedInstOperands, |
| 19229 | /* 51920 */ // GIR_Coverage, 21401, |
| 19230 | /* 51920 */ GIR_Done, |
| 19231 | /* 51921 */ // Label 1268: @51921 |
| 19232 | /* 51921 */ GIM_Reject, |
| 19233 | /* 51922 */ // Label 1246: @51922 |
| 19234 | /* 51922 */ GIM_Try, /*On fail goto*//*Label 1269*/ GIMT_Encode4(51981), // Rule ID 21406 // |
| 19235 | /* 51927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19236 | /* 51930 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 19237 | /* 51933 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19238 | /* 51937 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19239 | /* 51941 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19240 | /* 51945 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19241 | /* 51948 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19242 | /* 51952 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19243 | /* 51956 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19244 | /* 51958 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19245 | /* 51965 */ // (llrint:{ *:[v8i64] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPS2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 19246 | /* 51965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZrm), |
| 19247 | /* 51968 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19248 | /* 51970 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19249 | /* 51974 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19250 | /* 51979 */ GIR_RootConstrainSelectedInstOperands, |
| 19251 | /* 51980 */ // GIR_Coverage, 21406, |
| 19252 | /* 51980 */ GIR_EraseRootFromParent_Done, |
| 19253 | /* 51981 */ // Label 1269: @51981 |
| 19254 | /* 51981 */ GIM_Try, /*On fail goto*//*Label 1270*/ GIMT_Encode4(52040), // Rule ID 21410 // |
| 19255 | /* 51986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19256 | /* 51989 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 19257 | /* 51992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19258 | /* 51996 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19259 | /* 52000 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19260 | /* 52004 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19261 | /* 52007 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19262 | /* 52011 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19263 | /* 52015 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19264 | /* 52017 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19265 | /* 52024 */ // (llrint:{ *:[v8i64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPD2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 19266 | /* 52024 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZrm), |
| 19267 | /* 52027 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19268 | /* 52029 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19269 | /* 52033 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19270 | /* 52038 */ GIR_RootConstrainSelectedInstOperands, |
| 19271 | /* 52039 */ // GIR_Coverage, 21410, |
| 19272 | /* 52039 */ GIR_EraseRootFromParent_Done, |
| 19273 | /* 52040 */ // Label 1270: @52040 |
| 19274 | /* 52040 */ GIM_Try, /*On fail goto*//*Label 1271*/ GIMT_Encode4(52099), // Rule ID 22229 // |
| 19275 | /* 52045 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19276 | /* 52048 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 19277 | /* 52051 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19278 | /* 52055 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 19279 | /* 52059 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 19280 | /* 52063 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19281 | /* 52066 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 19282 | /* 52070 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 19283 | /* 52074 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 19284 | /* 52076 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19285 | /* 52083 */ // (llrint:{ *:[v8i64] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTPH2QQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 19286 | /* 52083 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTPH2QQZrm), |
| 19287 | /* 52086 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19288 | /* 52088 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19289 | /* 52092 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 19290 | /* 52097 */ GIR_RootConstrainSelectedInstOperands, |
| 19291 | /* 52098 */ // GIR_Coverage, 22229, |
| 19292 | /* 52098 */ GIR_EraseRootFromParent_Done, |
| 19293 | /* 52099 */ // Label 1271: @52099 |
| 19294 | /* 52099 */ GIM_Try, /*On fail goto*//*Label 1272*/ GIMT_Encode4(52129), // Rule ID 21405 // |
| 19295 | /* 52104 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19296 | /* 52107 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 19297 | /* 52110 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19298 | /* 52114 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 19299 | /* 52118 */ // (llrint:{ *:[v8i64] } VR256X:{ *:[v8f32] }:$src) => (VCVTPS2QQZrr:{ *:[v8i64] } VR256X:{ *:[v8f32] }:$src) |
| 19300 | /* 52118 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2QQZrr), |
| 19301 | /* 52123 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19302 | /* 52127 */ GIR_RootConstrainSelectedInstOperands, |
| 19303 | /* 52128 */ // GIR_Coverage, 21405, |
| 19304 | /* 52128 */ GIR_Done, |
| 19305 | /* 52129 */ // Label 1272: @52129 |
| 19306 | /* 52129 */ GIM_Try, /*On fail goto*//*Label 1273*/ GIMT_Encode4(52159), // Rule ID 21409 // |
| 19307 | /* 52134 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19308 | /* 52137 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 19309 | /* 52140 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19310 | /* 52144 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19311 | /* 52148 */ // (llrint:{ *:[v8i64] } VR512:{ *:[v8f64] }:$src) => (VCVTPD2QQZrr:{ *:[v8i64] } VR512:{ *:[v8f64] }:$src) |
| 19312 | /* 52148 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPD2QQZrr), |
| 19313 | /* 52153 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19314 | /* 52157 */ GIR_RootConstrainSelectedInstOperands, |
| 19315 | /* 52158 */ // GIR_Coverage, 21409, |
| 19316 | /* 52158 */ GIR_Done, |
| 19317 | /* 52159 */ // Label 1273: @52159 |
| 19318 | /* 52159 */ GIM_Try, /*On fail goto*//*Label 1274*/ GIMT_Encode4(52189), // Rule ID 22228 // |
| 19319 | /* 52164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19320 | /* 52167 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 19321 | /* 52170 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 19322 | /* 52174 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 19323 | /* 52178 */ // (llrint:{ *:[v8i64] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2QQZrr:{ *:[v8i64] } VR128X:{ *:[v8f16] }:$src) |
| 19324 | /* 52178 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2QQZrr), |
| 19325 | /* 52183 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 19326 | /* 52187 */ GIR_RootConstrainSelectedInstOperands, |
| 19327 | /* 52188 */ // GIR_Coverage, 22228, |
| 19328 | /* 52188 */ GIR_Done, |
| 19329 | /* 52189 */ // Label 1274: @52189 |
| 19330 | /* 52189 */ GIM_Reject, |
| 19331 | /* 52190 */ // Label 1247: @52190 |
| 19332 | /* 52190 */ GIM_Reject, |
| 19333 | /* 52191 */ // Label 11: @52191 |
| 19334 | /* 52191 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(25), /*)*//*default:*//*Label 1300*/ GIMT_Encode4(58406), |
| 19335 | /* 52202 */ /*GILLT_s1*//*Label 1275*/ GIMT_Encode4(52302), |
| 19336 | /* 52206 */ /*GILLT_s8*//*Label 1276*/ GIMT_Encode4(52369), |
| 19337 | /* 52210 */ /*GILLT_s16*//*Label 1277*/ GIMT_Encode4(52510), |
| 19338 | /* 52214 */ /*GILLT_s32*//*Label 1278*/ GIMT_Encode4(53063), |
| 19339 | /* 52218 */ /*GILLT_s64*//*Label 1279*/ GIMT_Encode4(53485), |
| 19340 | /* 52222 */ /*GILLT_s80*//*Label 1280*/ GIMT_Encode4(54049), |
| 19341 | /* 52226 */ /*GILLT_s128*//*Label 1281*/ GIMT_Encode4(54208), |
| 19342 | /* 52230 */ /*GILLT_v2s1*//*Label 1282*/ GIMT_Encode4(54336), |
| 19343 | /* 52234 */ /*GILLT_v2s64*//*Label 1283*/ GIMT_Encode4(54403), |
| 19344 | /* 52238 */ /*GILLT_v4s1*//*Label 1284*/ GIMT_Encode4(54897), |
| 19345 | /* 52242 */ /*GILLT_v4s32*//*Label 1285*/ GIMT_Encode4(54964), |
| 19346 | /* 52246 */ /*GILLT_v4s64*//*Label 1286*/ GIMT_Encode4(55458), |
| 19347 | /* 52250 */ /*GILLT_v8s1*//*Label 1287*/ GIMT_Encode4(55792), |
| 19348 | /* 52254 */ /*GILLT_v8s16*//*Label 1288*/ GIMT_Encode4(55874), |
| 19349 | /* 52258 */ /*GILLT_v8s32*//*Label 1289*/ GIMT_Encode4(56448), |
| 19350 | /* 52262 */ /*GILLT_v8s64*//*Label 1290*/ GIMT_Encode4(56782), |
| 19351 | /* 52266 */ /*GILLT_v16s1*//*Label 1291*/ GIMT_Encode4(56956), |
| 19352 | /* 52270 */ /*GILLT_v16s8*//*Label 1292*/ GIMT_Encode4(57038), |
| 19353 | /* 52274 */ /*GILLT_v16s16*//*Label 1293*/ GIMT_Encode4(57292), |
| 19354 | /* 52278 */ /*GILLT_v16s32*//*Label 1294*/ GIMT_Encode4(57626), |
| 19355 | /* 52282 */ /*GILLT_v32s1*//*Label 1295*/ GIMT_Encode4(57800), |
| 19356 | /* 52286 */ /*GILLT_v32s8*//*Label 1296*/ GIMT_Encode4(57882), |
| 19357 | /* 52290 */ /*GILLT_v32s16*//*Label 1297*/ GIMT_Encode4(58056), |
| 19358 | /* 52294 */ /*GILLT_v64s1*//*Label 1298*/ GIMT_Encode4(58230), |
| 19359 | /* 52298 */ /*GILLT_v64s8*//*Label 1299*/ GIMT_Encode4(58312), |
| 19360 | /* 52302 */ // Label 1275: @52302 |
| 19361 | /* 52302 */ GIM_Try, /*On fail goto*//*Label 1301*/ GIMT_Encode4(52368), // Rule ID 19443 // |
| 19362 | /* 52307 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 19363 | /* 52310 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19364 | /* 52313 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19365 | /* 52317 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 19366 | /* 52321 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19367 | /* 52325 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19368 | /* 52332 */ // (ld:{ *:[v1i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[v1i1] } (KMOVBkm:{ *:[v8i1] } addr:{ *:[iPTR] }:$src), VK1:{ *:[i32] }) |
| 19369 | /* 52332 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 19370 | /* 52335 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVBkm), |
| 19371 | /* 52339 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19372 | /* 52344 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19373 | /* 52348 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19374 | /* 52352 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19375 | /* 52354 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19376 | /* 52357 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19377 | /* 52359 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19378 | /* 52362 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 19379 | /* 52367 */ // GIR_Coverage, 19443, |
| 19380 | /* 52367 */ GIR_EraseRootFromParent_Done, |
| 19381 | /* 52368 */ // Label 1301: @52368 |
| 19382 | /* 52368 */ GIM_Reject, |
| 19383 | /* 52369 */ // Label 1276: @52369 |
| 19384 | /* 52369 */ GIM_Try, /*On fail goto*//*Label 1302*/ GIMT_Encode4(52418), // Rule ID 22576 // |
| 19385 | /* 52374 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 19386 | /* 52377 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19387 | /* 52381 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19388 | /* 52388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 19389 | /* 52392 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19390 | /* 52396 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19391 | /* 52403 */ // (atomic_load:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_8>> => (MOV8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 19392 | /* 52403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8rm), |
| 19393 | /* 52406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19394 | /* 52408 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19395 | /* 52412 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19396 | /* 52416 */ GIR_RootConstrainSelectedInstOperands, |
| 19397 | /* 52417 */ // GIR_Coverage, 22576, |
| 19398 | /* 52417 */ GIR_EraseRootFromParent_Done, |
| 19399 | /* 52418 */ // Label 1302: @52418 |
| 19400 | /* 52418 */ GIM_Try, /*On fail goto*//*Label 1303*/ GIMT_Encode4(52467), // Rule ID 22662 // |
| 19401 | /* 52423 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19402 | /* 52426 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19403 | /* 52430 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19404 | /* 52437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 19405 | /* 52441 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19406 | /* 52445 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19407 | /* 52452 */ // (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi1>> => (MOV8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 19408 | /* 52452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8rm), |
| 19409 | /* 52455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19410 | /* 52457 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19411 | /* 52461 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19412 | /* 52465 */ GIR_RootConstrainSelectedInstOperands, |
| 19413 | /* 52466 */ // GIR_Coverage, 22662, |
| 19414 | /* 52466 */ GIR_EraseRootFromParent_Done, |
| 19415 | /* 52467 */ // Label 1303: @52467 |
| 19416 | /* 52467 */ GIM_Try, /*On fail goto*//*Label 1304*/ GIMT_Encode4(52509), // Rule ID 28 // |
| 19417 | /* 52472 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19418 | /* 52475 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 19419 | /* 52479 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19420 | /* 52483 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 19421 | /* 52487 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19422 | /* 52494 */ // (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi8>> => (MOV8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 19423 | /* 52494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8rm), |
| 19424 | /* 52497 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19425 | /* 52499 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19426 | /* 52503 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19427 | /* 52507 */ GIR_RootConstrainSelectedInstOperands, |
| 19428 | /* 52508 */ // GIR_Coverage, 28, |
| 19429 | /* 52508 */ GIR_EraseRootFromParent_Done, |
| 19430 | /* 52509 */ // Label 1304: @52509 |
| 19431 | /* 52509 */ GIM_Reject, |
| 19432 | /* 52510 */ // Label 1277: @52510 |
| 19433 | /* 52510 */ GIM_Try, /*On fail goto*//*Label 1305*/ GIMT_Encode4(52559), // Rule ID 22577 // |
| 19434 | /* 52515 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 19435 | /* 52518 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19436 | /* 52522 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 19437 | /* 52529 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 19438 | /* 52533 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19439 | /* 52537 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19440 | /* 52544 */ // (atomic_load:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_16>> => (MOV16rm:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19441 | /* 52544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16rm), |
| 19442 | /* 52547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19443 | /* 52549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19444 | /* 52553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19445 | /* 52557 */ GIR_RootConstrainSelectedInstOperands, |
| 19446 | /* 52558 */ // GIR_Coverage, 22577, |
| 19447 | /* 52558 */ GIR_EraseRootFromParent_Done, |
| 19448 | /* 52559 */ // Label 1305: @52559 |
| 19449 | /* 52559 */ GIM_Try, /*On fail goto*//*Label 1306*/ GIMT_Encode4(52638), // Rule ID 22663 // |
| 19450 | /* 52564 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19451 | /* 52567 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19452 | /* 52571 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19453 | /* 52578 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 19454 | /* 52582 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19455 | /* 52586 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19456 | /* 52593 */ // (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] }) |
| 19457 | /* 52593 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19458 | /* 52596 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19459 | /* 52600 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19460 | /* 52605 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19461 | /* 52609 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19462 | /* 52613 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19463 | /* 52615 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19464 | /* 52618 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19465 | /* 52620 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 19466 | /* 52627 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 19467 | /* 52632 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 19468 | /* 52637 */ // GIR_Coverage, 22663, |
| 19469 | /* 52637 */ GIR_EraseRootFromParent_Done, |
| 19470 | /* 52638 */ // Label 1306: @52638 |
| 19471 | /* 52638 */ GIM_Try, /*On fail goto*//*Label 1307*/ GIMT_Encode4(52717), // Rule ID 22665 // |
| 19472 | /* 52643 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19473 | /* 52646 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19474 | /* 52650 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19475 | /* 52657 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 19476 | /* 52661 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19477 | /* 52665 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19478 | /* 52672 */ // (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] }) |
| 19479 | /* 52672 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19480 | /* 52675 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19481 | /* 52679 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19482 | /* 52684 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19483 | /* 52688 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19484 | /* 52692 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19485 | /* 52694 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19486 | /* 52697 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19487 | /* 52699 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 19488 | /* 52706 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 19489 | /* 52711 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 19490 | /* 52716 */ // GIR_Coverage, 22665, |
| 19491 | /* 52716 */ GIR_EraseRootFromParent_Done, |
| 19492 | /* 52717 */ // Label 1307: @52717 |
| 19493 | /* 52717 */ GIM_Try, /*On fail goto*//*Label 1308*/ GIMT_Encode4(52762), // Rule ID 4625 // |
| 19494 | /* 52722 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 19495 | /* 52725 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19496 | /* 52728 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19497 | /* 52732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 19498 | /* 52736 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19499 | /* 52740 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19500 | /* 52747 */ // (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSHZrm_alt:{ *:[f16] } addr:{ *:[iPTR] }:$src) |
| 19501 | /* 52747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSHZrm_alt), |
| 19502 | /* 52750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19503 | /* 52752 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19504 | /* 52756 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19505 | /* 52760 */ GIR_RootConstrainSelectedInstOperands, |
| 19506 | /* 52761 */ // GIR_Coverage, 4625, |
| 19507 | /* 52761 */ GIR_EraseRootFromParent_Done, |
| 19508 | /* 52762 */ // Label 1308: @52762 |
| 19509 | /* 52762 */ GIM_Try, /*On fail goto*//*Label 1309*/ GIMT_Encode4(52848), // Rule ID 18329 // |
| 19510 | /* 52767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoBWI), |
| 19511 | /* 52770 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19512 | /* 52773 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19513 | /* 52777 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 19514 | /* 52781 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19515 | /* 52785 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19516 | /* 52792 */ // (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] }) |
| 19517 | /* 52792 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 19518 | /* 52795 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 19519 | /* 52799 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19520 | /* 52804 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19521 | /* 52806 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 19522 | /* 52809 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPINSRWrmi), |
| 19523 | /* 52813 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19524 | /* 52818 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 19525 | /* 52821 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19526 | /* 52825 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 19527 | /* 52828 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19528 | /* 52832 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19529 | /* 52834 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19530 | /* 52837 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19531 | /* 52839 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19532 | /* 52842 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 19533 | /* 52847 */ // GIR_Coverage, 18329, |
| 19534 | /* 52847 */ GIR_EraseRootFromParent_Done, |
| 19535 | /* 52848 */ // Label 1309: @52848 |
| 19536 | /* 52848 */ GIM_Try, /*On fail goto*//*Label 1310*/ GIMT_Encode4(52890), // Rule ID 29 // |
| 19537 | /* 52853 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19538 | /* 52856 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 19539 | /* 52860 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19540 | /* 52864 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 19541 | /* 52868 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19542 | /* 52875 */ // (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>> => (MOV16rm:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19543 | /* 52875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16rm), |
| 19544 | /* 52878 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19545 | /* 52880 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19546 | /* 52884 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19547 | /* 52888 */ GIR_RootConstrainSelectedInstOperands, |
| 19548 | /* 52889 */ // GIR_Coverage, 29, |
| 19549 | /* 52889 */ GIR_EraseRootFromParent_Done, |
| 19550 | /* 52890 */ // Label 1310: @52890 |
| 19551 | /* 52890 */ GIM_Try, /*On fail goto*//*Label 1311*/ GIMT_Encode4(52976), // Rule ID 18325 // |
| 19552 | /* 52895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 19553 | /* 52898 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19554 | /* 52901 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19555 | /* 52905 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 19556 | /* 52909 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19557 | /* 52913 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19558 | /* 52920 */ // (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] }) |
| 19559 | /* 52920 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 19560 | /* 52923 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 19561 | /* 52927 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19562 | /* 52932 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19563 | /* 52934 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 19564 | /* 52937 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::PINSRWrmi), |
| 19565 | /* 52941 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19566 | /* 52946 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 19567 | /* 52949 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19568 | /* 52953 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 19569 | /* 52956 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19570 | /* 52960 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19571 | /* 52962 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19572 | /* 52965 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19573 | /* 52967 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19574 | /* 52970 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 19575 | /* 52975 */ // GIR_Coverage, 18325, |
| 19576 | /* 52975 */ GIR_EraseRootFromParent_Done, |
| 19577 | /* 52976 */ // Label 1311: @52976 |
| 19578 | /* 52976 */ GIM_Try, /*On fail goto*//*Label 1312*/ GIMT_Encode4(53062), // Rule ID 21850 // |
| 19579 | /* 52981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 19580 | /* 52984 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19581 | /* 52987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19582 | /* 52991 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 19583 | /* 52995 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19584 | /* 52999 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19585 | /* 53006 */ // (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] }) |
| 19586 | /* 53006 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 19587 | /* 53009 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 19588 | /* 53013 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19589 | /* 53018 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19590 | /* 53020 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s128, |
| 19591 | /* 53023 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPINSRWZrmi), |
| 19592 | /* 53027 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19593 | /* 53032 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 19594 | /* 53035 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19595 | /* 53039 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 19596 | /* 53042 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19597 | /* 53046 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19598 | /* 53048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 19599 | /* 53051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19600 | /* 53053 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19601 | /* 53056 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 19602 | /* 53061 */ // GIR_Coverage, 21850, |
| 19603 | /* 53061 */ GIR_EraseRootFromParent_Done, |
| 19604 | /* 53062 */ // Label 1312: @53062 |
| 19605 | /* 53062 */ GIM_Reject, |
| 19606 | /* 53063 */ // Label 1278: @53063 |
| 19607 | /* 53063 */ GIM_Try, /*On fail goto*//*Label 1313*/ GIMT_Encode4(53111), // Rule ID 1080 // |
| 19608 | /* 53068 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 19609 | /* 53071 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19610 | /* 53074 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19611 | /* 53078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 19612 | /* 53082 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19613 | /* 53086 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19614 | /* 53093 */ // (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (LD_Fp32m:{ *:[f32] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19615 | /* 53093 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp32m), |
| 19616 | /* 53096 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19617 | /* 53098 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19618 | /* 53102 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 19619 | /* 53105 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19620 | /* 53109 */ GIR_RootConstrainSelectedInstOperands, |
| 19621 | /* 53110 */ // GIR_Coverage, 1080, |
| 19622 | /* 53110 */ GIR_EraseRootFromParent_Done, |
| 19623 | /* 53111 */ // Label 1313: @53111 |
| 19624 | /* 53111 */ GIM_Try, /*On fail goto*//*Label 1314*/ GIMT_Encode4(53156), // Rule ID 1697 // |
| 19625 | /* 53116 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19626 | /* 53119 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19627 | /* 53122 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19628 | /* 53126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 19629 | /* 53130 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19630 | /* 53134 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19631 | /* 53141 */ // (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSSrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 19632 | /* 53141 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSrm_alt), |
| 19633 | /* 53144 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19634 | /* 53146 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19635 | /* 53150 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19636 | /* 53154 */ GIR_RootConstrainSelectedInstOperands, |
| 19637 | /* 53155 */ // GIR_Coverage, 1697, |
| 19638 | /* 53155 */ GIR_EraseRootFromParent_Done, |
| 19639 | /* 53156 */ // Label 1314: @53156 |
| 19640 | /* 53156 */ GIM_Try, /*On fail goto*//*Label 1315*/ GIMT_Encode4(53201), // Rule ID 1698 // |
| 19641 | /* 53161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 19642 | /* 53164 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19643 | /* 53167 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19644 | /* 53171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 19645 | /* 53175 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19646 | /* 53179 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19647 | /* 53186 */ // (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVSSrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 19648 | /* 53186 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSSrm_alt), |
| 19649 | /* 53189 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19650 | /* 53191 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19651 | /* 53195 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19652 | /* 53199 */ GIR_RootConstrainSelectedInstOperands, |
| 19653 | /* 53200 */ // GIR_Coverage, 1698, |
| 19654 | /* 53200 */ GIR_EraseRootFromParent_Done, |
| 19655 | /* 53201 */ // Label 1315: @53201 |
| 19656 | /* 53201 */ GIM_Try, /*On fail goto*//*Label 1316*/ GIMT_Encode4(53250), // Rule ID 22578 // |
| 19657 | /* 53206 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 19658 | /* 53209 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19659 | /* 53213 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 19660 | /* 53220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 19661 | /* 53224 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19662 | /* 53228 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19663 | /* 53235 */ // (atomic_load:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_32>> => (MOV32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 19664 | /* 53235 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32rm), |
| 19665 | /* 53238 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19666 | /* 53240 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19667 | /* 53244 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19668 | /* 53248 */ GIR_RootConstrainSelectedInstOperands, |
| 19669 | /* 53249 */ // GIR_Coverage, 22578, |
| 19670 | /* 53249 */ GIR_EraseRootFromParent_Done, |
| 19671 | /* 53250 */ // Label 1316: @53250 |
| 19672 | /* 53250 */ GIM_Try, /*On fail goto*//*Label 1317*/ GIMT_Encode4(53299), // Rule ID 22664 // |
| 19673 | /* 53255 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19674 | /* 53258 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19675 | /* 53262 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19676 | /* 53269 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 19677 | /* 53273 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19678 | /* 53277 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19679 | /* 53284 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi1>> => (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 19680 | /* 53284 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19681 | /* 53287 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19682 | /* 53289 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19683 | /* 53293 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19684 | /* 53297 */ GIR_RootConstrainSelectedInstOperands, |
| 19685 | /* 53298 */ // GIR_Coverage, 22664, |
| 19686 | /* 53298 */ GIR_EraseRootFromParent_Done, |
| 19687 | /* 53299 */ // Label 1317: @53299 |
| 19688 | /* 53299 */ GIM_Try, /*On fail goto*//*Label 1318*/ GIMT_Encode4(53348), // Rule ID 22666 // |
| 19689 | /* 53304 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19690 | /* 53307 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19691 | /* 53311 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19692 | /* 53318 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 19693 | /* 53322 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19694 | /* 53326 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19695 | /* 53333 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> => (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 19696 | /* 53333 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19697 | /* 53336 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19698 | /* 53338 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19699 | /* 53342 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19700 | /* 53346 */ GIR_RootConstrainSelectedInstOperands, |
| 19701 | /* 53347 */ // GIR_Coverage, 22666, |
| 19702 | /* 53347 */ GIR_EraseRootFromParent_Done, |
| 19703 | /* 53348 */ // Label 1318: @53348 |
| 19704 | /* 53348 */ GIM_Try, /*On fail goto*//*Label 1319*/ GIMT_Encode4(53397), // Rule ID 22667 // |
| 19705 | /* 53353 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19706 | /* 53356 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19707 | /* 53360 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 19708 | /* 53367 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 19709 | /* 53371 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19710 | /* 53375 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19711 | /* 53382 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> => (MOVZX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 19712 | /* 53382 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm16), |
| 19713 | /* 53385 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19714 | /* 53387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19715 | /* 53391 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19716 | /* 53395 */ GIR_RootConstrainSelectedInstOperands, |
| 19717 | /* 53396 */ // GIR_Coverage, 22667, |
| 19718 | /* 53396 */ GIR_EraseRootFromParent_Done, |
| 19719 | /* 53397 */ // Label 1319: @53397 |
| 19720 | /* 53397 */ GIM_Try, /*On fail goto*//*Label 1320*/ GIMT_Encode4(53442), // Rule ID 4613 // |
| 19721 | /* 53402 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19722 | /* 53405 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19723 | /* 53408 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19724 | /* 53412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 19725 | /* 53416 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19726 | /* 53420 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19727 | /* 53427 */ // (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSSZrm_alt:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 19728 | /* 53427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSZrm_alt), |
| 19729 | /* 53430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19730 | /* 53432 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19731 | /* 53436 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19732 | /* 53440 */ GIR_RootConstrainSelectedInstOperands, |
| 19733 | /* 53441 */ // GIR_Coverage, 4613, |
| 19734 | /* 53441 */ GIR_EraseRootFromParent_Done, |
| 19735 | /* 53442 */ // Label 1320: @53442 |
| 19736 | /* 53442 */ GIM_Try, /*On fail goto*//*Label 1321*/ GIMT_Encode4(53484), // Rule ID 30 // |
| 19737 | /* 53447 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19738 | /* 53450 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 19739 | /* 53454 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19740 | /* 53458 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 19741 | /* 53462 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19742 | /* 53469 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>> => (MOV32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 19743 | /* 53469 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32rm), |
| 19744 | /* 53472 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19745 | /* 53474 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19746 | /* 53478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19747 | /* 53482 */ GIR_RootConstrainSelectedInstOperands, |
| 19748 | /* 53483 */ // GIR_Coverage, 30, |
| 19749 | /* 53483 */ GIR_EraseRootFromParent_Done, |
| 19750 | /* 53484 */ // Label 1321: @53484 |
| 19751 | /* 53484 */ GIM_Reject, |
| 19752 | /* 53485 */ // Label 1279: @53485 |
| 19753 | /* 53485 */ GIM_Try, /*On fail goto*//*Label 1322*/ GIMT_Encode4(53527), // Rule ID 31 // |
| 19754 | /* 53490 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19755 | /* 53493 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19756 | /* 53497 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19757 | /* 53501 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19758 | /* 53505 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19759 | /* 53512 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOV64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19760 | /* 53512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64rm), |
| 19761 | /* 53515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19762 | /* 53517 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19763 | /* 53521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19764 | /* 53525 */ GIR_RootConstrainSelectedInstOperands, |
| 19765 | /* 53526 */ // GIR_Coverage, 31, |
| 19766 | /* 53526 */ GIR_EraseRootFromParent_Done, |
| 19767 | /* 53527 */ // Label 1322: @53527 |
| 19768 | /* 53527 */ GIM_Try, /*On fail goto*//*Label 1323*/ GIMT_Encode4(53575), // Rule ID 1081 // |
| 19769 | /* 53532 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 19770 | /* 53535 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19771 | /* 53538 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19772 | /* 53542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 19773 | /* 53546 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19774 | /* 53550 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19775 | /* 53557 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (LD_Fp64m:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19776 | /* 53557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp64m), |
| 19777 | /* 53560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19778 | /* 53562 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19779 | /* 53566 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 19780 | /* 53569 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19781 | /* 53573 */ GIR_RootConstrainSelectedInstOperands, |
| 19782 | /* 53574 */ // GIR_Coverage, 1081, |
| 19783 | /* 53574 */ GIR_EraseRootFromParent_Done, |
| 19784 | /* 53575 */ // Label 1323: @53575 |
| 19785 | /* 53575 */ GIM_Try, /*On fail goto*//*Label 1324*/ GIMT_Encode4(53630), // Rule ID 1083 // |
| 19786 | /* 53580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 19787 | /* 53583 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19788 | /* 53586 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19789 | /* 53590 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 19790 | /* 53597 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 19791 | /* 53601 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19792 | /* 53605 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19793 | /* 53612 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>> => (LD_Fp32m64:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19794 | /* 53612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp32m64), |
| 19795 | /* 53615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19796 | /* 53617 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19797 | /* 53621 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 19798 | /* 53624 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19799 | /* 53628 */ GIR_RootConstrainSelectedInstOperands, |
| 19800 | /* 53629 */ // GIR_Coverage, 1083, |
| 19801 | /* 53629 */ GIR_EraseRootFromParent_Done, |
| 19802 | /* 53630 */ // Label 1324: @53630 |
| 19803 | /* 53630 */ GIM_Try, /*On fail goto*//*Label 1325*/ GIMT_Encode4(53675), // Rule ID 1701 // |
| 19804 | /* 53635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 19805 | /* 53638 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19806 | /* 53641 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19807 | /* 53645 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 19808 | /* 53649 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19809 | /* 53653 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19810 | /* 53660 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSDrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 19811 | /* 53660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDrm_alt), |
| 19812 | /* 53663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19813 | /* 53665 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19814 | /* 53669 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19815 | /* 53673 */ GIR_RootConstrainSelectedInstOperands, |
| 19816 | /* 53674 */ // GIR_Coverage, 1701, |
| 19817 | /* 53674 */ GIR_EraseRootFromParent_Done, |
| 19818 | /* 53675 */ // Label 1325: @53675 |
| 19819 | /* 53675 */ GIM_Try, /*On fail goto*//*Label 1326*/ GIMT_Encode4(53720), // Rule ID 1702 // |
| 19820 | /* 53680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 19821 | /* 53683 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19822 | /* 53686 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19823 | /* 53690 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 19824 | /* 53694 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19825 | /* 53698 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19826 | /* 53705 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVSDrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 19827 | /* 53705 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSDrm_alt), |
| 19828 | /* 53708 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19829 | /* 53710 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19830 | /* 53714 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19831 | /* 53718 */ GIR_RootConstrainSelectedInstOperands, |
| 19832 | /* 53719 */ // GIR_Coverage, 1702, |
| 19833 | /* 53719 */ GIR_EraseRootFromParent_Done, |
| 19834 | /* 53720 */ // Label 1326: @53720 |
| 19835 | /* 53720 */ GIM_Try, /*On fail goto*//*Label 1327*/ GIMT_Encode4(53769), // Rule ID 22579 // |
| 19836 | /* 53725 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 19837 | /* 53728 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19838 | /* 53732 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 19839 | /* 53739 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19840 | /* 53743 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19841 | /* 53747 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19842 | /* 53754 */ // (atomic_load:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_atomic_load_nonext>><<P:Predicate_atomic_load_nonext_64>> => (MOV64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 19843 | /* 53754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64rm), |
| 19844 | /* 53757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19845 | /* 53759 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19846 | /* 53763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19847 | /* 53767 */ GIR_RootConstrainSelectedInstOperands, |
| 19848 | /* 53768 */ // GIR_Coverage, 22579, |
| 19849 | /* 53768 */ GIR_EraseRootFromParent_Done, |
| 19850 | /* 53769 */ // Label 1327: @53769 |
| 19851 | /* 53769 */ GIM_Try, /*On fail goto*//*Label 1328*/ GIMT_Encode4(53847), // Rule ID 22669 // |
| 19852 | /* 53774 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19853 | /* 53777 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19854 | /* 53781 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19855 | /* 53788 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19856 | /* 53792 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19857 | /* 53796 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19858 | /* 53803 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi1>> => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 19859 | /* 53803 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19860 | /* 53806 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19861 | /* 53810 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19862 | /* 53815 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19863 | /* 53819 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19864 | /* 53823 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19865 | /* 53825 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 19866 | /* 53828 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19867 | /* 53830 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19868 | /* 53833 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 19869 | /* 53836 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 19870 | /* 53841 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 19871 | /* 53846 */ // GIR_Coverage, 22669, |
| 19872 | /* 53846 */ GIR_EraseRootFromParent_Done, |
| 19873 | /* 53847 */ // Label 1328: @53847 |
| 19874 | /* 53847 */ GIM_Try, /*On fail goto*//*Label 1329*/ GIMT_Encode4(53925), // Rule ID 22670 // |
| 19875 | /* 53852 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19876 | /* 53855 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19877 | /* 53859 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 19878 | /* 53866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19879 | /* 53870 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19880 | /* 53874 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19881 | /* 53881 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 19882 | /* 53881 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19883 | /* 53884 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 19884 | /* 53888 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19885 | /* 53893 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19886 | /* 53897 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19887 | /* 53901 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19888 | /* 53903 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 19889 | /* 53906 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19890 | /* 53908 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19891 | /* 53911 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 19892 | /* 53914 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 19893 | /* 53919 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 19894 | /* 53924 */ // GIR_Coverage, 22670, |
| 19895 | /* 53924 */ GIR_EraseRootFromParent_Done, |
| 19896 | /* 53925 */ // Label 1329: @53925 |
| 19897 | /* 53925 */ GIM_Try, /*On fail goto*//*Label 1330*/ GIMT_Encode4(54003), // Rule ID 22671 // |
| 19898 | /* 53930 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19899 | /* 53933 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19900 | /* 53937 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 19901 | /* 53944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 19902 | /* 53948 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19903 | /* 53952 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19904 | /* 53959 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 19905 | /* 53959 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19906 | /* 53962 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm16), |
| 19907 | /* 53966 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19908 | /* 53971 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 19909 | /* 53975 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19910 | /* 53979 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19911 | /* 53981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 19912 | /* 53984 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19913 | /* 53986 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19914 | /* 53989 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 19915 | /* 53992 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 19916 | /* 53997 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 19917 | /* 54002 */ // GIR_Coverage, 22671, |
| 19918 | /* 54002 */ GIR_EraseRootFromParent_Done, |
| 19919 | /* 54003 */ // Label 1330: @54003 |
| 19920 | /* 54003 */ GIM_Try, /*On fail goto*//*Label 1331*/ GIMT_Encode4(54048), // Rule ID 4619 // |
| 19921 | /* 54008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 19922 | /* 54011 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19923 | /* 54014 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19924 | /* 54018 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 19925 | /* 54022 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19926 | /* 54026 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19927 | /* 54033 */ // (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVSDZrm_alt:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 19928 | /* 54033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDZrm_alt), |
| 19929 | /* 54036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19930 | /* 54038 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19931 | /* 54042 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19932 | /* 54046 */ GIR_RootConstrainSelectedInstOperands, |
| 19933 | /* 54047 */ // GIR_Coverage, 4619, |
| 19934 | /* 54047 */ GIR_EraseRootFromParent_Done, |
| 19935 | /* 54048 */ // Label 1331: @54048 |
| 19936 | /* 54048 */ GIM_Reject, |
| 19937 | /* 54049 */ // Label 1280: @54049 |
| 19938 | /* 54049 */ GIM_Try, /*On fail goto*//*Label 1332*/ GIMT_Encode4(54207), |
| 19939 | /* 54054 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19940 | /* 54057 */ GIM_Try, /*On fail goto*//*Label 1333*/ GIMT_Encode4(54102), // Rule ID 1082 // |
| 19941 | /* 54062 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 19942 | /* 54065 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19943 | /* 54069 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 19944 | /* 54073 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19945 | /* 54077 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19946 | /* 54084 */ // (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (LD_Fp80m:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19947 | /* 54084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp80m), |
| 19948 | /* 54087 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19949 | /* 54089 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19950 | /* 54093 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 19951 | /* 54096 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19952 | /* 54100 */ GIR_RootConstrainSelectedInstOperands, |
| 19953 | /* 54101 */ // GIR_Coverage, 1082, |
| 19954 | /* 54101 */ GIR_EraseRootFromParent_Done, |
| 19955 | /* 54102 */ // Label 1333: @54102 |
| 19956 | /* 54102 */ GIM_Try, /*On fail goto*//*Label 1334*/ GIMT_Encode4(54154), // Rule ID 1084 // |
| 19957 | /* 54107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 19958 | /* 54110 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19959 | /* 54114 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 19960 | /* 54121 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 19961 | /* 54125 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19962 | /* 54129 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19963 | /* 54136 */ // (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf64>> => (LD_Fp64m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19964 | /* 54136 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp64m80), |
| 19965 | /* 54139 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19966 | /* 54141 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19967 | /* 54145 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 19968 | /* 54148 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19969 | /* 54152 */ GIR_RootConstrainSelectedInstOperands, |
| 19970 | /* 54153 */ // GIR_Coverage, 1084, |
| 19971 | /* 54153 */ GIR_EraseRootFromParent_Done, |
| 19972 | /* 54154 */ // Label 1334: @54154 |
| 19973 | /* 54154 */ GIM_Try, /*On fail goto*//*Label 1335*/ GIMT_Encode4(54206), // Rule ID 1085 // |
| 19974 | /* 54159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 19975 | /* 54162 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19976 | /* 54166 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 19977 | /* 54173 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 19978 | /* 54177 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 19979 | /* 54181 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 19980 | /* 54188 */ // (ld:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadf32>> => (LD_Fp32m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 19981 | /* 54188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp32m80), |
| 19982 | /* 54191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 19983 | /* 54193 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 19984 | /* 54197 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 19985 | /* 54200 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 19986 | /* 54204 */ GIR_RootConstrainSelectedInstOperands, |
| 19987 | /* 54205 */ // GIR_Coverage, 1085, |
| 19988 | /* 54205 */ GIR_EraseRootFromParent_Done, |
| 19989 | /* 54206 */ // Label 1335: @54206 |
| 19990 | /* 54206 */ GIM_Reject, |
| 19991 | /* 54207 */ // Label 1332: @54207 |
| 19992 | /* 54207 */ GIM_Reject, |
| 19993 | /* 54208 */ // Label 1281: @54208 |
| 19994 | /* 54208 */ GIM_Try, /*On fail goto*//*Label 1336*/ GIMT_Encode4(54335), |
| 19995 | /* 54213 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 19996 | /* 54216 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 19997 | /* 54220 */ GIM_Try, /*On fail goto*//*Label 1337*/ GIMT_Encode4(54258), // Rule ID 23227 // |
| 19998 | /* 54225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoAVX), |
| 19999 | /* 54228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20000 | /* 54232 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20001 | /* 54236 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20002 | /* 54243 */ // (ld:{ *:[f128] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[f128] } addr:{ *:[iPTR] }:$src) |
| 20003 | /* 54243 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20004 | /* 54246 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20005 | /* 54248 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20006 | /* 54252 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20007 | /* 54256 */ GIR_RootConstrainSelectedInstOperands, |
| 20008 | /* 54257 */ // GIR_Coverage, 23227, |
| 20009 | /* 54257 */ GIR_EraseRootFromParent_Done, |
| 20010 | /* 54258 */ // Label 1337: @54258 |
| 20011 | /* 54258 */ GIM_Try, /*On fail goto*//*Label 1338*/ GIMT_Encode4(54296), // Rule ID 23231 // |
| 20012 | /* 54263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20013 | /* 54266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20014 | /* 54270 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20015 | /* 54274 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20016 | /* 54281 */ // (ld:{ *:[f128] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSrm:{ *:[f128] } addr:{ *:[iPTR] }:$src) |
| 20017 | /* 54281 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSrm), |
| 20018 | /* 54284 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20019 | /* 54286 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20020 | /* 54290 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20021 | /* 54294 */ GIR_RootConstrainSelectedInstOperands, |
| 20022 | /* 54295 */ // GIR_Coverage, 23231, |
| 20023 | /* 54295 */ GIR_EraseRootFromParent_Done, |
| 20024 | /* 54296 */ // Label 1338: @54296 |
| 20025 | /* 54296 */ GIM_Try, /*On fail goto*//*Label 1339*/ GIMT_Encode4(54334), // Rule ID 23235 // |
| 20026 | /* 54301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20027 | /* 54304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20028 | /* 54308 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20029 | /* 54312 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20030 | /* 54319 */ // (ld:{ *:[f128] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ128rm:{ *:[f128] } addr:{ *:[iPTR] }:$src) |
| 20031 | /* 54319 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128rm), |
| 20032 | /* 54322 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20033 | /* 54324 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20034 | /* 54328 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20035 | /* 54332 */ GIR_RootConstrainSelectedInstOperands, |
| 20036 | /* 54333 */ // GIR_Coverage, 23235, |
| 20037 | /* 54333 */ GIR_EraseRootFromParent_Done, |
| 20038 | /* 54334 */ // Label 1339: @54334 |
| 20039 | /* 54334 */ GIM_Reject, |
| 20040 | /* 54335 */ // Label 1336: @54335 |
| 20041 | /* 54335 */ GIM_Reject, |
| 20042 | /* 54336 */ // Label 1282: @54336 |
| 20043 | /* 54336 */ GIM_Try, /*On fail goto*//*Label 1340*/ GIMT_Encode4(54402), // Rule ID 19444 // |
| 20044 | /* 54341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 20045 | /* 54344 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20046 | /* 54347 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20047 | /* 54351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 20048 | /* 54355 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20049 | /* 54359 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20050 | /* 54366 */ // (ld:{ *:[v2i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[v2i1] } (KMOVBkm:{ *:[v8i1] } addr:{ *:[iPTR] }:$src), VK2:{ *:[i32] }) |
| 20051 | /* 54366 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 20052 | /* 54369 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVBkm), |
| 20053 | /* 54373 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20054 | /* 54378 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 20055 | /* 54382 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20056 | /* 54386 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20057 | /* 54388 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 20058 | /* 54391 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20059 | /* 54393 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20060 | /* 54396 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 20061 | /* 54401 */ // GIR_Coverage, 19444, |
| 20062 | /* 54401 */ GIR_EraseRootFromParent_Done, |
| 20063 | /* 54402 */ // Label 1340: @54402 |
| 20064 | /* 54402 */ GIM_Reject, |
| 20065 | /* 54403 */ // Label 1283: @54403 |
| 20066 | /* 54403 */ GIM_Try, /*On fail goto*//*Label 1341*/ GIMT_Encode4(54896), |
| 20067 | /* 54408 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20068 | /* 54411 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20069 | /* 54415 */ GIM_Try, /*On fail goto*//*Label 1342*/ GIMT_Encode4(54457), // Rule ID 1704 // |
| 20070 | /* 54420 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20071 | /* 54423 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20072 | /* 54427 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20073 | /* 54431 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20074 | /* 54435 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20075 | /* 54442 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20076 | /* 54442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDrm), |
| 20077 | /* 54445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20078 | /* 54447 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20079 | /* 54451 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20080 | /* 54455 */ GIR_RootConstrainSelectedInstOperands, |
| 20081 | /* 54456 */ // GIR_Coverage, 1704, |
| 20082 | /* 54456 */ GIR_EraseRootFromParent_Done, |
| 20083 | /* 54457 */ // Label 1342: @54457 |
| 20084 | /* 54457 */ GIM_Try, /*On fail goto*//*Label 1343*/ GIMT_Encode4(54495), // Rule ID 1706 // |
| 20085 | /* 54462 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20086 | /* 54465 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20087 | /* 54469 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20088 | /* 54473 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20089 | /* 54480 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20090 | /* 54480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDrm), |
| 20091 | /* 54483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20092 | /* 54485 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20093 | /* 54489 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20094 | /* 54493 */ GIR_RootConstrainSelectedInstOperands, |
| 20095 | /* 54494 */ // GIR_Coverage, 1706, |
| 20096 | /* 54494 */ GIR_EraseRootFromParent_Done, |
| 20097 | /* 54495 */ // Label 1343: @54495 |
| 20098 | /* 54495 */ GIM_Try, /*On fail goto*//*Label 1344*/ GIMT_Encode4(54537), // Rule ID 1713 // |
| 20099 | /* 54500 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 20100 | /* 54503 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20101 | /* 54507 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20102 | /* 54511 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20103 | /* 54515 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20104 | /* 54522 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20105 | /* 54522 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPDrm), |
| 20106 | /* 54525 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20107 | /* 54527 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20108 | /* 54531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20109 | /* 54535 */ GIR_RootConstrainSelectedInstOperands, |
| 20110 | /* 54536 */ // GIR_Coverage, 1713, |
| 20111 | /* 54536 */ GIR_EraseRootFromParent_Done, |
| 20112 | /* 54537 */ // Label 1344: @54537 |
| 20113 | /* 54537 */ GIM_Try, /*On fail goto*//*Label 1345*/ GIMT_Encode4(54575), // Rule ID 1714 // |
| 20114 | /* 54542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 20115 | /* 54545 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20116 | /* 54549 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20117 | /* 54553 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20118 | /* 54560 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20119 | /* 54560 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPDrm), |
| 20120 | /* 54563 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20121 | /* 54565 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20122 | /* 54569 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20123 | /* 54573 */ GIR_RootConstrainSelectedInstOperands, |
| 20124 | /* 54574 */ // GIR_Coverage, 1714, |
| 20125 | /* 54574 */ GIR_EraseRootFromParent_Done, |
| 20126 | /* 54575 */ // Label 1345: @54575 |
| 20127 | /* 54575 */ GIM_Try, /*On fail goto*//*Label 1346*/ GIMT_Encode4(54617), // Rule ID 2518 // |
| 20128 | /* 54580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20129 | /* 54583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20130 | /* 54587 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20131 | /* 54591 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20132 | /* 54595 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20133 | /* 54602 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20134 | /* 54602 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 20135 | /* 54605 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20136 | /* 54607 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20137 | /* 54611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20138 | /* 54615 */ GIR_RootConstrainSelectedInstOperands, |
| 20139 | /* 54616 */ // GIR_Coverage, 2518, |
| 20140 | /* 54616 */ GIR_EraseRootFromParent_Done, |
| 20141 | /* 54617 */ // Label 1346: @54617 |
| 20142 | /* 54617 */ GIM_Try, /*On fail goto*//*Label 1347*/ GIMT_Encode4(54655), // Rule ID 2519 // |
| 20143 | /* 54622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20144 | /* 54625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20145 | /* 54629 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20146 | /* 54633 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20147 | /* 54640 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20148 | /* 54640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 20149 | /* 54643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20150 | /* 54645 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20151 | /* 54649 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20152 | /* 54653 */ GIR_RootConstrainSelectedInstOperands, |
| 20153 | /* 54654 */ // GIR_Coverage, 2519, |
| 20154 | /* 54654 */ GIR_EraseRootFromParent_Done, |
| 20155 | /* 54655 */ // Label 1347: @54655 |
| 20156 | /* 54655 */ GIM_Try, /*On fail goto*//*Label 1348*/ GIMT_Encode4(54697), // Rule ID 4494 // |
| 20157 | /* 54660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20158 | /* 54663 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20159 | /* 54667 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20160 | /* 54671 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20161 | /* 54675 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20162 | /* 54682 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDZ128rm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20163 | /* 54682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ128rm), |
| 20164 | /* 54685 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20165 | /* 54687 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20166 | /* 54691 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20167 | /* 54695 */ GIR_RootConstrainSelectedInstOperands, |
| 20168 | /* 54696 */ // GIR_Coverage, 4494, |
| 20169 | /* 54696 */ GIR_EraseRootFromParent_Done, |
| 20170 | /* 54697 */ // Label 1348: @54697 |
| 20171 | /* 54697 */ GIM_Try, /*On fail goto*//*Label 1349*/ GIMT_Encode4(54735), // Rule ID 4519 // |
| 20172 | /* 54702 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20173 | /* 54705 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20174 | /* 54709 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20175 | /* 54713 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20176 | /* 54720 */ // (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDZ128rm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 20177 | /* 54720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZ128rm), |
| 20178 | /* 54723 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20179 | /* 54725 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20180 | /* 54729 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20181 | /* 54733 */ GIR_RootConstrainSelectedInstOperands, |
| 20182 | /* 54734 */ // GIR_Coverage, 4519, |
| 20183 | /* 54734 */ GIR_EraseRootFromParent_Done, |
| 20184 | /* 54735 */ // Label 1349: @54735 |
| 20185 | /* 54735 */ GIM_Try, /*On fail goto*//*Label 1350*/ GIMT_Encode4(54777), // Rule ID 4548 // |
| 20186 | /* 54740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20187 | /* 54743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20188 | /* 54747 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20189 | /* 54751 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20190 | /* 54755 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20191 | /* 54762 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20192 | /* 54762 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rm), |
| 20193 | /* 54765 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20194 | /* 54767 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20195 | /* 54771 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20196 | /* 54775 */ GIR_RootConstrainSelectedInstOperands, |
| 20197 | /* 54776 */ // GIR_Coverage, 4548, |
| 20198 | /* 54776 */ GIR_EraseRootFromParent_Done, |
| 20199 | /* 54777 */ // Label 1350: @54777 |
| 20200 | /* 54777 */ GIM_Try, /*On fail goto*//*Label 1351*/ GIMT_Encode4(54815), // Rule ID 4591 // |
| 20201 | /* 54782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20202 | /* 54785 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20203 | /* 54789 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20204 | /* 54793 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20205 | /* 54800 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20206 | /* 54800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128rm), |
| 20207 | /* 54803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20208 | /* 54805 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20209 | /* 54809 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20210 | /* 54813 */ GIR_RootConstrainSelectedInstOperands, |
| 20211 | /* 54814 */ // GIR_Coverage, 4591, |
| 20212 | /* 54814 */ GIR_EraseRootFromParent_Done, |
| 20213 | /* 54815 */ // Label 1351: @54815 |
| 20214 | /* 54815 */ GIM_Try, /*On fail goto*//*Label 1352*/ GIMT_Encode4(54857), // Rule ID 17929 // |
| 20215 | /* 54820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20216 | /* 54823 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20217 | /* 54827 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20218 | /* 54831 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20219 | /* 54835 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20220 | /* 54842 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20221 | /* 54842 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20222 | /* 54845 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20223 | /* 54847 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20224 | /* 54851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20225 | /* 54855 */ GIR_RootConstrainSelectedInstOperands, |
| 20226 | /* 54856 */ // GIR_Coverage, 17929, |
| 20227 | /* 54856 */ GIR_EraseRootFromParent_Done, |
| 20228 | /* 54857 */ // Label 1352: @54857 |
| 20229 | /* 54857 */ GIM_Try, /*On fail goto*//*Label 1353*/ GIMT_Encode4(54895), // Rule ID 17933 // |
| 20230 | /* 54862 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20231 | /* 54865 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20232 | /* 54869 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20233 | /* 54873 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20234 | /* 54880 */ // (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 20235 | /* 54880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20236 | /* 54883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20237 | /* 54885 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20238 | /* 54889 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20239 | /* 54893 */ GIR_RootConstrainSelectedInstOperands, |
| 20240 | /* 54894 */ // GIR_Coverage, 17933, |
| 20241 | /* 54894 */ GIR_EraseRootFromParent_Done, |
| 20242 | /* 54895 */ // Label 1353: @54895 |
| 20243 | /* 54895 */ GIM_Reject, |
| 20244 | /* 54896 */ // Label 1341: @54896 |
| 20245 | /* 54896 */ GIM_Reject, |
| 20246 | /* 54897 */ // Label 1284: @54897 |
| 20247 | /* 54897 */ GIM_Try, /*On fail goto*//*Label 1354*/ GIMT_Encode4(54963), // Rule ID 19445 // |
| 20248 | /* 54902 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 20249 | /* 54905 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20250 | /* 54908 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20251 | /* 54912 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 20252 | /* 54916 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20253 | /* 54920 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20254 | /* 54927 */ // (ld:{ *:[v4i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (COPY_TO_REGCLASS:{ *:[v4i1] } (KMOVBkm:{ *:[v8i1] } addr:{ *:[iPTR] }:$src), VK4:{ *:[i32] }) |
| 20255 | /* 54927 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 20256 | /* 54930 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVBkm), |
| 20257 | /* 54934 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20258 | /* 54939 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 20259 | /* 54943 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20260 | /* 54947 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20261 | /* 54949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 20262 | /* 54952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20263 | /* 54954 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20264 | /* 54957 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 20265 | /* 54962 */ // GIR_Coverage, 19445, |
| 20266 | /* 54962 */ GIR_EraseRootFromParent_Done, |
| 20267 | /* 54963 */ // Label 1354: @54963 |
| 20268 | /* 54963 */ GIM_Reject, |
| 20269 | /* 54964 */ // Label 1285: @54964 |
| 20270 | /* 54964 */ GIM_Try, /*On fail goto*//*Label 1355*/ GIMT_Encode4(55457), |
| 20271 | /* 54969 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20272 | /* 54972 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20273 | /* 54976 */ GIM_Try, /*On fail goto*//*Label 1356*/ GIMT_Encode4(55018), // Rule ID 1703 // |
| 20274 | /* 54981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20275 | /* 54984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20276 | /* 54988 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20277 | /* 54992 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20278 | /* 54996 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20279 | /* 55003 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20280 | /* 55003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSrm), |
| 20281 | /* 55006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20282 | /* 55008 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20283 | /* 55012 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20284 | /* 55016 */ GIR_RootConstrainSelectedInstOperands, |
| 20285 | /* 55017 */ // GIR_Coverage, 1703, |
| 20286 | /* 55017 */ GIR_EraseRootFromParent_Done, |
| 20287 | /* 55018 */ // Label 1356: @55018 |
| 20288 | /* 55018 */ GIM_Try, /*On fail goto*//*Label 1357*/ GIMT_Encode4(55056), // Rule ID 1705 // |
| 20289 | /* 55023 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20290 | /* 55026 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20291 | /* 55030 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20292 | /* 55034 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20293 | /* 55041 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20294 | /* 55041 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSrm), |
| 20295 | /* 55044 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20296 | /* 55046 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20297 | /* 55050 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20298 | /* 55054 */ GIR_RootConstrainSelectedInstOperands, |
| 20299 | /* 55055 */ // GIR_Coverage, 1705, |
| 20300 | /* 55055 */ GIR_EraseRootFromParent_Done, |
| 20301 | /* 55056 */ // Label 1357: @55056 |
| 20302 | /* 55056 */ GIM_Try, /*On fail goto*//*Label 1358*/ GIMT_Encode4(55098), // Rule ID 1711 // |
| 20303 | /* 55061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20304 | /* 55064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20305 | /* 55068 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20306 | /* 55072 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20307 | /* 55076 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20308 | /* 55083 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20309 | /* 55083 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20310 | /* 55086 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20311 | /* 55088 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20312 | /* 55092 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20313 | /* 55096 */ GIR_RootConstrainSelectedInstOperands, |
| 20314 | /* 55097 */ // GIR_Coverage, 1711, |
| 20315 | /* 55097 */ GIR_EraseRootFromParent_Done, |
| 20316 | /* 55098 */ // Label 1358: @55098 |
| 20317 | /* 55098 */ GIM_Try, /*On fail goto*//*Label 1359*/ GIMT_Encode4(55136), // Rule ID 1712 // |
| 20318 | /* 55103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20319 | /* 55106 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20320 | /* 55110 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20321 | /* 55114 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20322 | /* 55121 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20323 | /* 55121 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20324 | /* 55124 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20325 | /* 55126 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20326 | /* 55130 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20327 | /* 55134 */ GIR_RootConstrainSelectedInstOperands, |
| 20328 | /* 55135 */ // GIR_Coverage, 1712, |
| 20329 | /* 55135 */ GIR_EraseRootFromParent_Done, |
| 20330 | /* 55136 */ // Label 1359: @55136 |
| 20331 | /* 55136 */ GIM_Try, /*On fail goto*//*Label 1360*/ GIMT_Encode4(55178), // Rule ID 4476 // |
| 20332 | /* 55141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20333 | /* 55144 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20334 | /* 55148 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20335 | /* 55152 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20336 | /* 55156 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20337 | /* 55163 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZ128rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20338 | /* 55163 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128rm), |
| 20339 | /* 55166 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20340 | /* 55168 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20341 | /* 55172 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20342 | /* 55176 */ GIR_RootConstrainSelectedInstOperands, |
| 20343 | /* 55177 */ // GIR_Coverage, 4476, |
| 20344 | /* 55177 */ GIR_EraseRootFromParent_Done, |
| 20345 | /* 55178 */ // Label 1360: @55178 |
| 20346 | /* 55178 */ GIM_Try, /*On fail goto*//*Label 1361*/ GIMT_Encode4(55216), // Rule ID 4507 // |
| 20347 | /* 55183 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20348 | /* 55186 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20349 | /* 55190 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20350 | /* 55194 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20351 | /* 55201 */ // (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ128rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 20352 | /* 55201 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128rm), |
| 20353 | /* 55204 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20354 | /* 55206 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20355 | /* 55210 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20356 | /* 55214 */ GIR_RootConstrainSelectedInstOperands, |
| 20357 | /* 55215 */ // GIR_Coverage, 4507, |
| 20358 | /* 55215 */ GIR_EraseRootFromParent_Done, |
| 20359 | /* 55216 */ // Label 1361: @55216 |
| 20360 | /* 55216 */ GIM_Try, /*On fail goto*//*Label 1362*/ GIMT_Encode4(55258), // Rule ID 17930 // |
| 20361 | /* 55221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20362 | /* 55224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20363 | /* 55228 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20364 | /* 55232 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20365 | /* 55236 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20366 | /* 55243 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20367 | /* 55243 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20368 | /* 55246 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20369 | /* 55248 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20370 | /* 55252 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20371 | /* 55256 */ GIR_RootConstrainSelectedInstOperands, |
| 20372 | /* 55257 */ // GIR_Coverage, 17930, |
| 20373 | /* 55257 */ GIR_EraseRootFromParent_Done, |
| 20374 | /* 55258 */ // Label 1362: @55258 |
| 20375 | /* 55258 */ GIM_Try, /*On fail goto*//*Label 1363*/ GIMT_Encode4(55296), // Rule ID 17934 // |
| 20376 | /* 55263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20377 | /* 55266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20378 | /* 55270 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20379 | /* 55274 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20380 | /* 55281 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20381 | /* 55281 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20382 | /* 55284 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20383 | /* 55286 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20384 | /* 55290 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20385 | /* 55294 */ GIR_RootConstrainSelectedInstOperands, |
| 20386 | /* 55295 */ // GIR_Coverage, 17934, |
| 20387 | /* 55295 */ GIR_EraseRootFromParent_Done, |
| 20388 | /* 55296 */ // Label 1363: @55296 |
| 20389 | /* 55296 */ GIM_Try, /*On fail goto*//*Label 1364*/ GIMT_Encode4(55338), // Rule ID 18309 // |
| 20390 | /* 55301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20391 | /* 55304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20392 | /* 55308 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20393 | /* 55312 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20394 | /* 55316 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20395 | /* 55323 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20396 | /* 55323 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 20397 | /* 55326 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20398 | /* 55328 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20399 | /* 55332 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20400 | /* 55336 */ GIR_RootConstrainSelectedInstOperands, |
| 20401 | /* 55337 */ // GIR_Coverage, 18309, |
| 20402 | /* 55337 */ GIR_EraseRootFromParent_Done, |
| 20403 | /* 55338 */ // Label 1364: @55338 |
| 20404 | /* 55338 */ GIM_Try, /*On fail goto*//*Label 1365*/ GIMT_Encode4(55376), // Rule ID 18313 // |
| 20405 | /* 55343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20406 | /* 55346 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20407 | /* 55350 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20408 | /* 55354 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20409 | /* 55361 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20410 | /* 55361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 20411 | /* 55364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20412 | /* 55366 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20413 | /* 55370 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20414 | /* 55374 */ GIR_RootConstrainSelectedInstOperands, |
| 20415 | /* 55375 */ // GIR_Coverage, 18313, |
| 20416 | /* 55375 */ GIR_EraseRootFromParent_Done, |
| 20417 | /* 55376 */ // Label 1365: @55376 |
| 20418 | /* 55376 */ GIM_Try, /*On fail goto*//*Label 1366*/ GIMT_Encode4(55418), // Rule ID 19821 // |
| 20419 | /* 55381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20420 | /* 55384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20421 | /* 55388 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20422 | /* 55392 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20423 | /* 55396 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20424 | /* 55403 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20425 | /* 55403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rm), |
| 20426 | /* 55406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20427 | /* 55408 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20428 | /* 55412 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20429 | /* 55416 */ GIR_RootConstrainSelectedInstOperands, |
| 20430 | /* 55417 */ // GIR_Coverage, 19821, |
| 20431 | /* 55417 */ GIR_EraseRootFromParent_Done, |
| 20432 | /* 55418 */ // Label 1366: @55418 |
| 20433 | /* 55418 */ GIM_Try, /*On fail goto*//*Label 1367*/ GIMT_Encode4(55456), // Rule ID 19825 // |
| 20434 | /* 55423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20435 | /* 55426 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20436 | /* 55430 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20437 | /* 55434 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20438 | /* 55441 */ // (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 20439 | /* 55441 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128rm), |
| 20440 | /* 55444 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20441 | /* 55446 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20442 | /* 55450 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20443 | /* 55454 */ GIR_RootConstrainSelectedInstOperands, |
| 20444 | /* 55455 */ // GIR_Coverage, 19825, |
| 20445 | /* 55455 */ GIR_EraseRootFromParent_Done, |
| 20446 | /* 55456 */ // Label 1367: @55456 |
| 20447 | /* 55456 */ GIM_Reject, |
| 20448 | /* 55457 */ // Label 1355: @55457 |
| 20449 | /* 55457 */ GIM_Reject, |
| 20450 | /* 55458 */ // Label 1286: @55458 |
| 20451 | /* 55458 */ GIM_Try, /*On fail goto*//*Label 1368*/ GIMT_Encode4(55791), |
| 20452 | /* 55463 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20453 | /* 55466 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20454 | /* 55470 */ GIM_Try, /*On fail goto*//*Label 1369*/ GIMT_Encode4(55512), // Rule ID 1708 // |
| 20455 | /* 55475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20456 | /* 55478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20457 | /* 55482 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20458 | /* 55486 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20459 | /* 55490 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20460 | /* 55497 */ // (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDYrm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 20461 | /* 55497 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDYrm), |
| 20462 | /* 55500 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20463 | /* 55502 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20464 | /* 55506 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20465 | /* 55510 */ GIR_RootConstrainSelectedInstOperands, |
| 20466 | /* 55511 */ // GIR_Coverage, 1708, |
| 20467 | /* 55511 */ GIR_EraseRootFromParent_Done, |
| 20468 | /* 55512 */ // Label 1369: @55512 |
| 20469 | /* 55512 */ GIM_Try, /*On fail goto*//*Label 1370*/ GIMT_Encode4(55550), // Rule ID 1710 // |
| 20470 | /* 55517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20471 | /* 55520 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20472 | /* 55524 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20473 | /* 55528 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20474 | /* 55535 */ // (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDYrm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 20475 | /* 55535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDYrm), |
| 20476 | /* 55538 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20477 | /* 55540 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20478 | /* 55544 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20479 | /* 55548 */ GIR_RootConstrainSelectedInstOperands, |
| 20480 | /* 55549 */ // GIR_Coverage, 1710, |
| 20481 | /* 55549 */ GIR_EraseRootFromParent_Done, |
| 20482 | /* 55550 */ // Label 1370: @55550 |
| 20483 | /* 55550 */ GIM_Try, /*On fail goto*//*Label 1371*/ GIMT_Encode4(55592), // Rule ID 4489 // |
| 20484 | /* 55555 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20485 | /* 55558 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20486 | /* 55562 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20487 | /* 55566 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20488 | /* 55570 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20489 | /* 55577 */ // (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 20490 | /* 55577 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ256rm), |
| 20491 | /* 55580 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20492 | /* 55582 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20493 | /* 55586 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20494 | /* 55590 */ GIR_RootConstrainSelectedInstOperands, |
| 20495 | /* 55591 */ // GIR_Coverage, 4489, |
| 20496 | /* 55591 */ GIR_EraseRootFromParent_Done, |
| 20497 | /* 55592 */ // Label 1371: @55592 |
| 20498 | /* 55592 */ GIM_Try, /*On fail goto*//*Label 1372*/ GIMT_Encode4(55630), // Rule ID 4516 // |
| 20499 | /* 55597 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20500 | /* 55600 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20501 | /* 55604 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20502 | /* 55608 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20503 | /* 55615 */ // (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 20504 | /* 55615 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZ256rm), |
| 20505 | /* 55618 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20506 | /* 55620 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20507 | /* 55624 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20508 | /* 55628 */ GIR_RootConstrainSelectedInstOperands, |
| 20509 | /* 55629 */ // GIR_Coverage, 4516, |
| 20510 | /* 55629 */ GIR_EraseRootFromParent_Done, |
| 20511 | /* 55630 */ // Label 1372: @55630 |
| 20512 | /* 55630 */ GIM_Try, /*On fail goto*//*Label 1373*/ GIMT_Encode4(55672), // Rule ID 4543 // |
| 20513 | /* 55635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20514 | /* 55638 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20515 | /* 55642 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20516 | /* 55646 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20517 | /* 55650 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20518 | /* 55657 */ // (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 20519 | /* 55657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rm), |
| 20520 | /* 55660 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20521 | /* 55662 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20522 | /* 55666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20523 | /* 55670 */ GIR_RootConstrainSelectedInstOperands, |
| 20524 | /* 55671 */ // GIR_Coverage, 4543, |
| 20525 | /* 55671 */ GIR_EraseRootFromParent_Done, |
| 20526 | /* 55672 */ // Label 1373: @55672 |
| 20527 | /* 55672 */ GIM_Try, /*On fail goto*//*Label 1374*/ GIMT_Encode4(55710), // Rule ID 4588 // |
| 20528 | /* 55677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20529 | /* 55680 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20530 | /* 55684 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20531 | /* 55688 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20532 | /* 55695 */ // (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 20533 | /* 55695 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256rm), |
| 20534 | /* 55698 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20535 | /* 55700 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20536 | /* 55704 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20537 | /* 55708 */ GIR_RootConstrainSelectedInstOperands, |
| 20538 | /* 55709 */ // GIR_Coverage, 4588, |
| 20539 | /* 55709 */ GIR_EraseRootFromParent_Done, |
| 20540 | /* 55710 */ // Label 1374: @55710 |
| 20541 | /* 55710 */ GIM_Try, /*On fail goto*//*Label 1375*/ GIMT_Encode4(55752), // Rule ID 17905 // |
| 20542 | /* 55715 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20543 | /* 55718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20544 | /* 55722 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20545 | /* 55726 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20546 | /* 55730 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20547 | /* 55737 */ // (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 20548 | /* 55737 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 20549 | /* 55740 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20550 | /* 55742 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20551 | /* 55746 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20552 | /* 55750 */ GIR_RootConstrainSelectedInstOperands, |
| 20553 | /* 55751 */ // GIR_Coverage, 17905, |
| 20554 | /* 55751 */ GIR_EraseRootFromParent_Done, |
| 20555 | /* 55752 */ // Label 1375: @55752 |
| 20556 | /* 55752 */ GIM_Try, /*On fail goto*//*Label 1376*/ GIMT_Encode4(55790), // Rule ID 17909 // |
| 20557 | /* 55757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20558 | /* 55760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20559 | /* 55764 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20560 | /* 55768 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20561 | /* 55775 */ // (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 20562 | /* 55775 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 20563 | /* 55778 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20564 | /* 55780 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20565 | /* 55784 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20566 | /* 55788 */ GIR_RootConstrainSelectedInstOperands, |
| 20567 | /* 55789 */ // GIR_Coverage, 17909, |
| 20568 | /* 55789 */ GIR_EraseRootFromParent_Done, |
| 20569 | /* 55790 */ // Label 1376: @55790 |
| 20570 | /* 55790 */ GIM_Reject, |
| 20571 | /* 55791 */ // Label 1368: @55791 |
| 20572 | /* 55791 */ GIM_Reject, |
| 20573 | /* 55792 */ // Label 1287: @55792 |
| 20574 | /* 55792 */ GIM_Try, /*On fail goto*//*Label 1377*/ GIMT_Encode4(55873), |
| 20575 | /* 55797 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20576 | /* 55800 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20577 | /* 55804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 20578 | /* 55808 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20579 | /* 55812 */ GIM_Try, /*On fail goto*//*Label 1378*/ GIMT_Encode4(55842), // Rule ID 4397 // |
| 20580 | /* 55817 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoEGPR), |
| 20581 | /* 55820 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20582 | /* 55827 */ // (ld:{ *:[v8i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVBkm:{ *:[v8i1] } addr:{ *:[iPTR] }:$src) |
| 20583 | /* 55827 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBkm), |
| 20584 | /* 55830 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20585 | /* 55832 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20586 | /* 55836 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20587 | /* 55840 */ GIR_RootConstrainSelectedInstOperands, |
| 20588 | /* 55841 */ // GIR_Coverage, 4397, |
| 20589 | /* 55841 */ GIR_EraseRootFromParent_Done, |
| 20590 | /* 55842 */ // Label 1378: @55842 |
| 20591 | /* 55842 */ GIM_Try, /*On fail goto*//*Label 1379*/ GIMT_Encode4(55872), // Rule ID 4399 // |
| 20592 | /* 55847 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEGPR_In64BitMode), |
| 20593 | /* 55850 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20594 | /* 55857 */ // (ld:{ *:[v8i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVBkm_EVEX:{ *:[v8i1] } addr:{ *:[iPTR] }:$src) |
| 20595 | /* 55857 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBkm_EVEX), |
| 20596 | /* 55860 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20597 | /* 55862 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20598 | /* 55866 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20599 | /* 55870 */ GIR_RootConstrainSelectedInstOperands, |
| 20600 | /* 55871 */ // GIR_Coverage, 4399, |
| 20601 | /* 55871 */ GIR_EraseRootFromParent_Done, |
| 20602 | /* 55872 */ // Label 1379: @55872 |
| 20603 | /* 55872 */ GIM_Reject, |
| 20604 | /* 55873 */ // Label 1377: @55873 |
| 20605 | /* 55873 */ GIM_Reject, |
| 20606 | /* 55874 */ // Label 1288: @55874 |
| 20607 | /* 55874 */ GIM_Try, /*On fail goto*//*Label 1380*/ GIMT_Encode4(56447), |
| 20608 | /* 55879 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20609 | /* 55882 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20610 | /* 55886 */ GIM_Try, /*On fail goto*//*Label 1381*/ GIMT_Encode4(55928), // Rule ID 17921 // |
| 20611 | /* 55891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20612 | /* 55894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20613 | /* 55898 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20614 | /* 55902 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20615 | /* 55906 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20616 | /* 55913 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20617 | /* 55913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSrm), |
| 20618 | /* 55916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20619 | /* 55918 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20620 | /* 55922 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20621 | /* 55926 */ GIR_RootConstrainSelectedInstOperands, |
| 20622 | /* 55927 */ // GIR_Coverage, 17921, |
| 20623 | /* 55927 */ GIR_EraseRootFromParent_Done, |
| 20624 | /* 55928 */ // Label 1381: @55928 |
| 20625 | /* 55928 */ GIM_Try, /*On fail goto*//*Label 1382*/ GIMT_Encode4(55966), // Rule ID 17922 // |
| 20626 | /* 55933 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20627 | /* 55936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20628 | /* 55940 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20629 | /* 55944 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20630 | /* 55951 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20631 | /* 55951 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSrm), |
| 20632 | /* 55954 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20633 | /* 55956 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20634 | /* 55960 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20635 | /* 55964 */ GIR_RootConstrainSelectedInstOperands, |
| 20636 | /* 55965 */ // GIR_Coverage, 17922, |
| 20637 | /* 55965 */ GIR_EraseRootFromParent_Done, |
| 20638 | /* 55966 */ // Label 1382: @55966 |
| 20639 | /* 55966 */ GIM_Try, /*On fail goto*//*Label 1383*/ GIMT_Encode4(56008), // Rule ID 17931 // |
| 20640 | /* 55971 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20641 | /* 55974 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20642 | /* 55978 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20643 | /* 55982 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20644 | /* 55986 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20645 | /* 55993 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 20646 | /* 55993 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20647 | /* 55996 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20648 | /* 55998 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20649 | /* 56002 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20650 | /* 56006 */ GIR_RootConstrainSelectedInstOperands, |
| 20651 | /* 56007 */ // GIR_Coverage, 17931, |
| 20652 | /* 56007 */ GIR_EraseRootFromParent_Done, |
| 20653 | /* 56008 */ // Label 1383: @56008 |
| 20654 | /* 56008 */ GIM_Try, /*On fail goto*//*Label 1384*/ GIMT_Encode4(56046), // Rule ID 17935 // |
| 20655 | /* 56013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 20656 | /* 56016 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20657 | /* 56020 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20658 | /* 56024 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20659 | /* 56031 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 20660 | /* 56031 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20661 | /* 56034 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20662 | /* 56036 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20663 | /* 56040 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20664 | /* 56044 */ GIR_RootConstrainSelectedInstOperands, |
| 20665 | /* 56045 */ // GIR_Coverage, 17935, |
| 20666 | /* 56045 */ GIR_EraseRootFromParent_Done, |
| 20667 | /* 56046 */ // Label 1384: @56046 |
| 20668 | /* 56046 */ GIM_Try, /*On fail goto*//*Label 1385*/ GIMT_Encode4(56088), // Rule ID 17945 // |
| 20669 | /* 56051 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 20670 | /* 56054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20671 | /* 56058 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20672 | /* 56062 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20673 | /* 56066 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20674 | /* 56073 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20675 | /* 56073 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 20676 | /* 56076 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20677 | /* 56078 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20678 | /* 56082 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20679 | /* 56086 */ GIR_RootConstrainSelectedInstOperands, |
| 20680 | /* 56087 */ // GIR_Coverage, 17945, |
| 20681 | /* 56087 */ GIR_EraseRootFromParent_Done, |
| 20682 | /* 56088 */ // Label 1385: @56088 |
| 20683 | /* 56088 */ GIM_Try, /*On fail goto*//*Label 1386*/ GIMT_Encode4(56126), // Rule ID 17946 // |
| 20684 | /* 56093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 20685 | /* 56096 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20686 | /* 56100 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20687 | /* 56104 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20688 | /* 56111 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20689 | /* 56111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 20690 | /* 56114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20691 | /* 56116 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20692 | /* 56120 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20693 | /* 56124 */ GIR_RootConstrainSelectedInstOperands, |
| 20694 | /* 56125 */ // GIR_Coverage, 17946, |
| 20695 | /* 56125 */ GIR_EraseRootFromParent_Done, |
| 20696 | /* 56126 */ // Label 1386: @56126 |
| 20697 | /* 56126 */ GIM_Try, /*On fail goto*//*Label 1387*/ GIMT_Encode4(56168), // Rule ID 18310 // |
| 20698 | /* 56131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20699 | /* 56134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20700 | /* 56138 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20701 | /* 56142 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20702 | /* 56146 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20703 | /* 56153 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 20704 | /* 56153 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 20705 | /* 56156 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20706 | /* 56158 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20707 | /* 56162 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20708 | /* 56166 */ GIR_RootConstrainSelectedInstOperands, |
| 20709 | /* 56167 */ // GIR_Coverage, 18310, |
| 20710 | /* 56167 */ GIR_EraseRootFromParent_Done, |
| 20711 | /* 56168 */ // Label 1387: @56168 |
| 20712 | /* 56168 */ GIM_Try, /*On fail goto*//*Label 1388*/ GIMT_Encode4(56210), // Rule ID 18311 // |
| 20713 | /* 56173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20714 | /* 56176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20715 | /* 56180 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20716 | /* 56184 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20717 | /* 56188 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20718 | /* 56195 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20719 | /* 56195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 20720 | /* 56198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20721 | /* 56200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20722 | /* 56204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20723 | /* 56208 */ GIR_RootConstrainSelectedInstOperands, |
| 20724 | /* 56209 */ // GIR_Coverage, 18311, |
| 20725 | /* 56209 */ GIR_EraseRootFromParent_Done, |
| 20726 | /* 56210 */ // Label 1388: @56210 |
| 20727 | /* 56210 */ GIM_Try, /*On fail goto*//*Label 1389*/ GIMT_Encode4(56248), // Rule ID 18314 // |
| 20728 | /* 56215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20729 | /* 56218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20730 | /* 56222 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20731 | /* 56226 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20732 | /* 56233 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 20733 | /* 56233 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 20734 | /* 56236 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20735 | /* 56238 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20736 | /* 56242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20737 | /* 56246 */ GIR_RootConstrainSelectedInstOperands, |
| 20738 | /* 56247 */ // GIR_Coverage, 18314, |
| 20739 | /* 56247 */ GIR_EraseRootFromParent_Done, |
| 20740 | /* 56248 */ // Label 1389: @56248 |
| 20741 | /* 56248 */ GIM_Try, /*On fail goto*//*Label 1390*/ GIMT_Encode4(56286), // Rule ID 18315 // |
| 20742 | /* 56253 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20743 | /* 56256 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 20744 | /* 56260 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20745 | /* 56264 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20746 | /* 56271 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20747 | /* 56271 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 20748 | /* 56274 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20749 | /* 56276 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20750 | /* 56280 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20751 | /* 56284 */ GIR_RootConstrainSelectedInstOperands, |
| 20752 | /* 56285 */ // GIR_Coverage, 18315, |
| 20753 | /* 56285 */ GIR_EraseRootFromParent_Done, |
| 20754 | /* 56286 */ // Label 1390: @56286 |
| 20755 | /* 56286 */ GIM_Try, /*On fail goto*//*Label 1391*/ GIMT_Encode4(56328), // Rule ID 19822 // |
| 20756 | /* 56291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20757 | /* 56294 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20758 | /* 56298 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20759 | /* 56302 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20760 | /* 56306 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20761 | /* 56313 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 20762 | /* 56313 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rm), |
| 20763 | /* 56316 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20764 | /* 56318 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20765 | /* 56322 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20766 | /* 56326 */ GIR_RootConstrainSelectedInstOperands, |
| 20767 | /* 56327 */ // GIR_Coverage, 19822, |
| 20768 | /* 56327 */ GIR_EraseRootFromParent_Done, |
| 20769 | /* 56328 */ // Label 1391: @56328 |
| 20770 | /* 56328 */ GIM_Try, /*On fail goto*//*Label 1392*/ GIMT_Encode4(56370), // Rule ID 19823 // |
| 20771 | /* 56333 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20772 | /* 56336 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20773 | /* 56340 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20774 | /* 56344 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20775 | /* 56348 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20776 | /* 56355 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZ128rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20777 | /* 56355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128rm), |
| 20778 | /* 56358 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20779 | /* 56360 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20780 | /* 56364 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20781 | /* 56368 */ GIR_RootConstrainSelectedInstOperands, |
| 20782 | /* 56369 */ // GIR_Coverage, 19823, |
| 20783 | /* 56369 */ GIR_EraseRootFromParent_Done, |
| 20784 | /* 56370 */ // Label 1392: @56370 |
| 20785 | /* 56370 */ GIM_Try, /*On fail goto*//*Label 1393*/ GIMT_Encode4(56408), // Rule ID 19826 // |
| 20786 | /* 56375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20787 | /* 56378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20788 | /* 56382 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20789 | /* 56386 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20790 | /* 56393 */ // (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 20791 | /* 56393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128rm), |
| 20792 | /* 56396 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20793 | /* 56398 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20794 | /* 56402 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20795 | /* 56406 */ GIR_RootConstrainSelectedInstOperands, |
| 20796 | /* 56407 */ // GIR_Coverage, 19826, |
| 20797 | /* 56407 */ GIR_EraseRootFromParent_Done, |
| 20798 | /* 56408 */ // Label 1393: @56408 |
| 20799 | /* 56408 */ GIM_Try, /*On fail goto*//*Label 1394*/ GIMT_Encode4(56446), // Rule ID 19827 // |
| 20800 | /* 56413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20801 | /* 56416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 20802 | /* 56420 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20803 | /* 56424 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20804 | /* 56431 */ // (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ128rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 20805 | /* 56431 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128rm), |
| 20806 | /* 56434 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20807 | /* 56436 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20808 | /* 56440 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20809 | /* 56444 */ GIR_RootConstrainSelectedInstOperands, |
| 20810 | /* 56445 */ // GIR_Coverage, 19827, |
| 20811 | /* 56445 */ GIR_EraseRootFromParent_Done, |
| 20812 | /* 56446 */ // Label 1394: @56446 |
| 20813 | /* 56446 */ GIM_Reject, |
| 20814 | /* 56447 */ // Label 1380: @56447 |
| 20815 | /* 56447 */ GIM_Reject, |
| 20816 | /* 56448 */ // Label 1289: @56448 |
| 20817 | /* 56448 */ GIM_Try, /*On fail goto*//*Label 1395*/ GIMT_Encode4(56781), |
| 20818 | /* 56453 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20819 | /* 56456 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20820 | /* 56460 */ GIM_Try, /*On fail goto*//*Label 1396*/ GIMT_Encode4(56502), // Rule ID 1707 // |
| 20821 | /* 56465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20822 | /* 56468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20823 | /* 56472 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20824 | /* 56476 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20825 | /* 56480 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20826 | /* 56487 */ // (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 20827 | /* 56487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 20828 | /* 56490 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20829 | /* 56492 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20830 | /* 56496 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20831 | /* 56500 */ GIR_RootConstrainSelectedInstOperands, |
| 20832 | /* 56501 */ // GIR_Coverage, 1707, |
| 20833 | /* 56501 */ GIR_EraseRootFromParent_Done, |
| 20834 | /* 56502 */ // Label 1396: @56502 |
| 20835 | /* 56502 */ GIM_Try, /*On fail goto*//*Label 1397*/ GIMT_Encode4(56540), // Rule ID 1709 // |
| 20836 | /* 56507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20837 | /* 56510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20838 | /* 56514 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20839 | /* 56518 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20840 | /* 56525 */ // (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 20841 | /* 56525 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 20842 | /* 56528 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20843 | /* 56530 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20844 | /* 56534 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20845 | /* 56538 */ GIR_RootConstrainSelectedInstOperands, |
| 20846 | /* 56539 */ // GIR_Coverage, 1709, |
| 20847 | /* 56539 */ GIR_EraseRootFromParent_Done, |
| 20848 | /* 56540 */ // Label 1397: @56540 |
| 20849 | /* 56540 */ GIM_Try, /*On fail goto*//*Label 1398*/ GIMT_Encode4(56582), // Rule ID 4471 // |
| 20850 | /* 56545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20851 | /* 56548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20852 | /* 56552 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20853 | /* 56556 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20854 | /* 56560 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20855 | /* 56567 */ // (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZ256rm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 20856 | /* 56567 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256rm), |
| 20857 | /* 56570 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20858 | /* 56572 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20859 | /* 56576 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20860 | /* 56580 */ GIR_RootConstrainSelectedInstOperands, |
| 20861 | /* 56581 */ // GIR_Coverage, 4471, |
| 20862 | /* 56581 */ GIR_EraseRootFromParent_Done, |
| 20863 | /* 56582 */ // Label 1398: @56582 |
| 20864 | /* 56582 */ GIM_Try, /*On fail goto*//*Label 1399*/ GIMT_Encode4(56620), // Rule ID 4504 // |
| 20865 | /* 56587 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 20866 | /* 56590 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20867 | /* 56594 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20868 | /* 56598 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20869 | /* 56605 */ // (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ256rm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 20870 | /* 56605 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ256rm), |
| 20871 | /* 56608 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20872 | /* 56610 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20873 | /* 56614 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20874 | /* 56618 */ GIR_RootConstrainSelectedInstOperands, |
| 20875 | /* 56619 */ // GIR_Coverage, 4504, |
| 20876 | /* 56619 */ GIR_EraseRootFromParent_Done, |
| 20877 | /* 56620 */ // Label 1399: @56620 |
| 20878 | /* 56620 */ GIM_Try, /*On fail goto*//*Label 1400*/ GIMT_Encode4(56662), // Rule ID 17906 // |
| 20879 | /* 56625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20880 | /* 56628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20881 | /* 56632 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20882 | /* 56636 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20883 | /* 56640 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20884 | /* 56647 */ // (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 20885 | /* 56647 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 20886 | /* 56650 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20887 | /* 56652 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20888 | /* 56656 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20889 | /* 56660 */ GIR_RootConstrainSelectedInstOperands, |
| 20890 | /* 56661 */ // GIR_Coverage, 17906, |
| 20891 | /* 56661 */ GIR_EraseRootFromParent_Done, |
| 20892 | /* 56662 */ // Label 1400: @56662 |
| 20893 | /* 56662 */ GIM_Try, /*On fail goto*//*Label 1401*/ GIMT_Encode4(56700), // Rule ID 17910 // |
| 20894 | /* 56667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 20895 | /* 56670 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 20896 | /* 56674 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20897 | /* 56678 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20898 | /* 56685 */ // (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 20899 | /* 56685 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 20900 | /* 56688 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20901 | /* 56690 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20902 | /* 56694 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20903 | /* 56698 */ GIR_RootConstrainSelectedInstOperands, |
| 20904 | /* 56699 */ // GIR_Coverage, 17910, |
| 20905 | /* 56699 */ GIR_EraseRootFromParent_Done, |
| 20906 | /* 56700 */ // Label 1401: @56700 |
| 20907 | /* 56700 */ GIM_Try, /*On fail goto*//*Label 1402*/ GIMT_Encode4(56742), // Rule ID 19837 // |
| 20908 | /* 56705 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20909 | /* 56708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20910 | /* 56712 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20911 | /* 56716 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20912 | /* 56720 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20913 | /* 56727 */ // (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 20914 | /* 56727 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rm), |
| 20915 | /* 56730 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20916 | /* 56732 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20917 | /* 56736 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20918 | /* 56740 */ GIR_RootConstrainSelectedInstOperands, |
| 20919 | /* 56741 */ // GIR_Coverage, 19837, |
| 20920 | /* 56741 */ GIR_EraseRootFromParent_Done, |
| 20921 | /* 56742 */ // Label 1402: @56742 |
| 20922 | /* 56742 */ GIM_Try, /*On fail goto*//*Label 1403*/ GIMT_Encode4(56780), // Rule ID 19841 // |
| 20923 | /* 56747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 20924 | /* 56750 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 20925 | /* 56754 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20926 | /* 56758 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20927 | /* 56765 */ // (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 20928 | /* 56765 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256rm), |
| 20929 | /* 56768 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20930 | /* 56770 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20931 | /* 56774 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20932 | /* 56778 */ GIR_RootConstrainSelectedInstOperands, |
| 20933 | /* 56779 */ // GIR_Coverage, 19841, |
| 20934 | /* 56779 */ GIR_EraseRootFromParent_Done, |
| 20935 | /* 56780 */ // Label 1403: @56780 |
| 20936 | /* 56780 */ GIM_Reject, |
| 20937 | /* 56781 */ // Label 1395: @56781 |
| 20938 | /* 56781 */ GIM_Reject, |
| 20939 | /* 56782 */ // Label 1290: @56782 |
| 20940 | /* 56782 */ GIM_Try, /*On fail goto*//*Label 1404*/ GIMT_Encode4(56955), |
| 20941 | /* 56787 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 20942 | /* 56790 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 20943 | /* 56794 */ GIM_Try, /*On fail goto*//*Label 1405*/ GIMT_Encode4(56836), // Rule ID 4484 // |
| 20944 | /* 56799 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 20945 | /* 56802 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 20946 | /* 56806 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20947 | /* 56810 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20948 | /* 56814 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20949 | /* 56821 */ // (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 20950 | /* 56821 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrm), |
| 20951 | /* 56824 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20952 | /* 56826 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20953 | /* 56830 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20954 | /* 56834 */ GIR_RootConstrainSelectedInstOperands, |
| 20955 | /* 56835 */ // GIR_Coverage, 4484, |
| 20956 | /* 56835 */ GIR_EraseRootFromParent_Done, |
| 20957 | /* 56836 */ // Label 1405: @56836 |
| 20958 | /* 56836 */ GIM_Try, /*On fail goto*//*Label 1406*/ GIMT_Encode4(56874), // Rule ID 4513 // |
| 20959 | /* 56841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 20960 | /* 56844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 20961 | /* 56848 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20962 | /* 56852 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20963 | /* 56859 */ // (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 20964 | /* 56859 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZrm), |
| 20965 | /* 56862 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20966 | /* 56864 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20967 | /* 56868 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20968 | /* 56872 */ GIR_RootConstrainSelectedInstOperands, |
| 20969 | /* 56873 */ // GIR_Coverage, 4513, |
| 20970 | /* 56873 */ GIR_EraseRootFromParent_Done, |
| 20971 | /* 56874 */ // Label 1406: @56874 |
| 20972 | /* 56874 */ GIM_Try, /*On fail goto*//*Label 1407*/ GIMT_Encode4(56916), // Rule ID 4538 // |
| 20973 | /* 56879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 20974 | /* 56882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 20975 | /* 56886 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20976 | /* 56890 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 20977 | /* 56894 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20978 | /* 56901 */ // (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Zrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 20979 | /* 56901 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrm), |
| 20980 | /* 56904 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20981 | /* 56906 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20982 | /* 56910 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20983 | /* 56914 */ GIR_RootConstrainSelectedInstOperands, |
| 20984 | /* 56915 */ // GIR_Coverage, 4538, |
| 20985 | /* 56915 */ GIR_EraseRootFromParent_Done, |
| 20986 | /* 56916 */ // Label 1407: @56916 |
| 20987 | /* 56916 */ GIM_Try, /*On fail goto*//*Label 1408*/ GIMT_Encode4(56954), // Rule ID 4585 // |
| 20988 | /* 56921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 20989 | /* 56924 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 20990 | /* 56928 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 20991 | /* 56932 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 20992 | /* 56939 */ // (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Zrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 20993 | /* 56939 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zrm), |
| 20994 | /* 56942 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 20995 | /* 56944 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 20996 | /* 56948 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 20997 | /* 56952 */ GIR_RootConstrainSelectedInstOperands, |
| 20998 | /* 56953 */ // GIR_Coverage, 4585, |
| 20999 | /* 56953 */ GIR_EraseRootFromParent_Done, |
| 21000 | /* 56954 */ // Label 1408: @56954 |
| 21001 | /* 56954 */ GIM_Reject, |
| 21002 | /* 56955 */ // Label 1404: @56955 |
| 21003 | /* 56955 */ GIM_Reject, |
| 21004 | /* 56956 */ // Label 1291: @56956 |
| 21005 | /* 56956 */ GIM_Try, /*On fail goto*//*Label 1409*/ GIMT_Encode4(57037), |
| 21006 | /* 56961 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21007 | /* 56964 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21008 | /* 56968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 21009 | /* 56972 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21010 | /* 56976 */ GIM_Try, /*On fail goto*//*Label 1410*/ GIMT_Encode4(57006), // Rule ID 4401 // |
| 21011 | /* 56981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoEGPR), |
| 21012 | /* 56984 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21013 | /* 56991 */ // (ld:{ *:[v16i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVWkm:{ *:[v16i1] } addr:{ *:[iPTR] }:$src) |
| 21014 | /* 56991 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWkm), |
| 21015 | /* 56994 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21016 | /* 56996 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21017 | /* 57000 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21018 | /* 57004 */ GIR_RootConstrainSelectedInstOperands, |
| 21019 | /* 57005 */ // GIR_Coverage, 4401, |
| 21020 | /* 57005 */ GIR_EraseRootFromParent_Done, |
| 21021 | /* 57006 */ // Label 1410: @57006 |
| 21022 | /* 57006 */ GIM_Try, /*On fail goto*//*Label 1411*/ GIMT_Encode4(57036), // Rule ID 4403 // |
| 21023 | /* 57011 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEGPR_In64BitMode), |
| 21024 | /* 57014 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21025 | /* 57021 */ // (ld:{ *:[v16i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVWkm_EVEX:{ *:[v16i1] } addr:{ *:[iPTR] }:$src) |
| 21026 | /* 57021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWkm_EVEX), |
| 21027 | /* 57024 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21028 | /* 57026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21029 | /* 57030 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21030 | /* 57034 */ GIR_RootConstrainSelectedInstOperands, |
| 21031 | /* 57035 */ // GIR_Coverage, 4403, |
| 21032 | /* 57035 */ GIR_EraseRootFromParent_Done, |
| 21033 | /* 57036 */ // Label 1411: @57036 |
| 21034 | /* 57036 */ GIM_Reject, |
| 21035 | /* 57037 */ // Label 1409: @57037 |
| 21036 | /* 57037 */ GIM_Reject, |
| 21037 | /* 57038 */ // Label 1292: @57038 |
| 21038 | /* 57038 */ GIM_Try, /*On fail goto*//*Label 1412*/ GIMT_Encode4(57291), |
| 21039 | /* 57043 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21040 | /* 57046 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21041 | /* 57050 */ GIM_Try, /*On fail goto*//*Label 1413*/ GIMT_Encode4(57092), // Rule ID 17932 // |
| 21042 | /* 57055 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 21043 | /* 57058 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21044 | /* 57062 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21045 | /* 57066 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21046 | /* 57070 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21047 | /* 57077 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (MOVAPSrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21048 | /* 57077 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSrm), |
| 21049 | /* 57080 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21050 | /* 57082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21051 | /* 57086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21052 | /* 57090 */ GIR_RootConstrainSelectedInstOperands, |
| 21053 | /* 57091 */ // GIR_Coverage, 17932, |
| 21054 | /* 57091 */ GIR_EraseRootFromParent_Done, |
| 21055 | /* 57092 */ // Label 1413: @57092 |
| 21056 | /* 57092 */ GIM_Try, /*On fail goto*//*Label 1414*/ GIMT_Encode4(57130), // Rule ID 17936 // |
| 21057 | /* 57097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 21058 | /* 57100 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21059 | /* 57104 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21060 | /* 57108 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21061 | /* 57115 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (MOVUPSrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21062 | /* 57115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSrm), |
| 21063 | /* 57118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21064 | /* 57120 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21065 | /* 57124 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21066 | /* 57128 */ GIR_RootConstrainSelectedInstOperands, |
| 21067 | /* 57129 */ // GIR_Coverage, 17936, |
| 21068 | /* 57129 */ GIR_EraseRootFromParent_Done, |
| 21069 | /* 57130 */ // Label 1414: @57130 |
| 21070 | /* 57130 */ GIM_Try, /*On fail goto*//*Label 1415*/ GIMT_Encode4(57172), // Rule ID 18312 // |
| 21071 | /* 57135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21072 | /* 57138 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21073 | /* 57142 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21074 | /* 57146 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21075 | /* 57150 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21076 | /* 57157 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQArm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21077 | /* 57157 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQArm), |
| 21078 | /* 57160 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21079 | /* 57162 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21080 | /* 57166 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21081 | /* 57170 */ GIR_RootConstrainSelectedInstOperands, |
| 21082 | /* 57171 */ // GIR_Coverage, 18312, |
| 21083 | /* 57171 */ GIR_EraseRootFromParent_Done, |
| 21084 | /* 57172 */ // Label 1415: @57172 |
| 21085 | /* 57172 */ GIM_Try, /*On fail goto*//*Label 1416*/ GIMT_Encode4(57210), // Rule ID 18316 // |
| 21086 | /* 57177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21087 | /* 57180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 21088 | /* 57184 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21089 | /* 57188 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21090 | /* 57195 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQUrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21091 | /* 57195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUrm), |
| 21092 | /* 57198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21093 | /* 57200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21094 | /* 57204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21095 | /* 57208 */ GIR_RootConstrainSelectedInstOperands, |
| 21096 | /* 57209 */ // GIR_Coverage, 18316, |
| 21097 | /* 57209 */ GIR_EraseRootFromParent_Done, |
| 21098 | /* 57210 */ // Label 1416: @57210 |
| 21099 | /* 57210 */ GIM_Try, /*On fail goto*//*Label 1417*/ GIMT_Encode4(57252), // Rule ID 19824 // |
| 21100 | /* 57215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21101 | /* 57218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 21102 | /* 57222 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21103 | /* 57226 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21104 | /* 57230 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21105 | /* 57237 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z128rm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21106 | /* 57237 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rm), |
| 21107 | /* 57240 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21108 | /* 57242 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21109 | /* 57246 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21110 | /* 57250 */ GIR_RootConstrainSelectedInstOperands, |
| 21111 | /* 57251 */ // GIR_Coverage, 19824, |
| 21112 | /* 57251 */ GIR_EraseRootFromParent_Done, |
| 21113 | /* 57252 */ // Label 1417: @57252 |
| 21114 | /* 57252 */ GIM_Try, /*On fail goto*//*Label 1418*/ GIMT_Encode4(57290), // Rule ID 19828 // |
| 21115 | /* 57257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21116 | /* 57260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 21117 | /* 57264 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21118 | /* 57268 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21119 | /* 57275 */ // (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z128rm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 21120 | /* 57275 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128rm), |
| 21121 | /* 57278 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21122 | /* 57280 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21123 | /* 57284 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21124 | /* 57288 */ GIR_RootConstrainSelectedInstOperands, |
| 21125 | /* 57289 */ // GIR_Coverage, 19828, |
| 21126 | /* 57289 */ GIR_EraseRootFromParent_Done, |
| 21127 | /* 57290 */ // Label 1418: @57290 |
| 21128 | /* 57290 */ GIM_Reject, |
| 21129 | /* 57291 */ // Label 1412: @57291 |
| 21130 | /* 57291 */ GIM_Reject, |
| 21131 | /* 57292 */ // Label 1293: @57292 |
| 21132 | /* 57292 */ GIM_Try, /*On fail goto*//*Label 1419*/ GIMT_Encode4(57625), |
| 21133 | /* 57297 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21134 | /* 57300 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21135 | /* 57304 */ GIM_Try, /*On fail goto*//*Label 1420*/ GIMT_Encode4(57346), // Rule ID 17907 // |
| 21136 | /* 57309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21137 | /* 57312 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21138 | /* 57316 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21139 | /* 57320 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21140 | /* 57324 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21141 | /* 57331 */ // (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 21142 | /* 57331 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 21143 | /* 57334 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21144 | /* 57336 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21145 | /* 57340 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21146 | /* 57344 */ GIR_RootConstrainSelectedInstOperands, |
| 21147 | /* 57345 */ // GIR_Coverage, 17907, |
| 21148 | /* 57345 */ GIR_EraseRootFromParent_Done, |
| 21149 | /* 57346 */ // Label 1420: @57346 |
| 21150 | /* 57346 */ GIM_Try, /*On fail goto*//*Label 1421*/ GIMT_Encode4(57384), // Rule ID 17911 // |
| 21151 | /* 57351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21152 | /* 57354 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21153 | /* 57358 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21154 | /* 57362 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21155 | /* 57369 */ // (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 21156 | /* 57369 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 21157 | /* 57372 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21158 | /* 57374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21159 | /* 57378 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21160 | /* 57382 */ GIR_RootConstrainSelectedInstOperands, |
| 21161 | /* 57383 */ // GIR_Coverage, 17911, |
| 21162 | /* 57383 */ GIR_EraseRootFromParent_Done, |
| 21163 | /* 57384 */ // Label 1421: @57384 |
| 21164 | /* 57384 */ GIM_Try, /*On fail goto*//*Label 1422*/ GIMT_Encode4(57426), // Rule ID 17925 // |
| 21165 | /* 57389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21166 | /* 57392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21167 | /* 57396 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21168 | /* 57400 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21169 | /* 57404 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21170 | /* 57411 */ // (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 21171 | /* 57411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 21172 | /* 57414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21173 | /* 57416 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21174 | /* 57420 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21175 | /* 57424 */ GIR_RootConstrainSelectedInstOperands, |
| 21176 | /* 57425 */ // GIR_Coverage, 17925, |
| 21177 | /* 57425 */ GIR_EraseRootFromParent_Done, |
| 21178 | /* 57426 */ // Label 1422: @57426 |
| 21179 | /* 57426 */ GIM_Try, /*On fail goto*//*Label 1423*/ GIMT_Encode4(57464), // Rule ID 17926 // |
| 21180 | /* 57431 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21181 | /* 57434 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21182 | /* 57438 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21183 | /* 57442 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21184 | /* 57449 */ // (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 21185 | /* 57449 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 21186 | /* 57452 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21187 | /* 57454 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21188 | /* 57458 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21189 | /* 57462 */ GIR_RootConstrainSelectedInstOperands, |
| 21190 | /* 57463 */ // GIR_Coverage, 17926, |
| 21191 | /* 57463 */ GIR_EraseRootFromParent_Done, |
| 21192 | /* 57464 */ // Label 1423: @57464 |
| 21193 | /* 57464 */ GIM_Try, /*On fail goto*//*Label 1424*/ GIMT_Encode4(57506), // Rule ID 19838 // |
| 21194 | /* 57469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21195 | /* 57472 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21196 | /* 57476 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21197 | /* 57480 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21198 | /* 57484 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21199 | /* 57491 */ // (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 21200 | /* 57491 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rm), |
| 21201 | /* 57494 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21202 | /* 57496 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21203 | /* 57500 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21204 | /* 57504 */ GIR_RootConstrainSelectedInstOperands, |
| 21205 | /* 57505 */ // GIR_Coverage, 19838, |
| 21206 | /* 57505 */ GIR_EraseRootFromParent_Done, |
| 21207 | /* 57506 */ // Label 1424: @57506 |
| 21208 | /* 57506 */ GIM_Try, /*On fail goto*//*Label 1425*/ GIMT_Encode4(57548), // Rule ID 19839 // |
| 21209 | /* 57511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21210 | /* 57514 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21211 | /* 57518 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21212 | /* 57522 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21213 | /* 57526 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21214 | /* 57533 */ // (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZ256rm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 21215 | /* 57533 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256rm), |
| 21216 | /* 57536 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21217 | /* 57538 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21218 | /* 57542 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21219 | /* 57546 */ GIR_RootConstrainSelectedInstOperands, |
| 21220 | /* 57547 */ // GIR_Coverage, 19839, |
| 21221 | /* 57547 */ GIR_EraseRootFromParent_Done, |
| 21222 | /* 57548 */ // Label 1425: @57548 |
| 21223 | /* 57548 */ GIM_Try, /*On fail goto*//*Label 1426*/ GIMT_Encode4(57586), // Rule ID 19842 // |
| 21224 | /* 57553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21225 | /* 57556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21226 | /* 57560 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21227 | /* 57564 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21228 | /* 57571 */ // (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 21229 | /* 57571 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256rm), |
| 21230 | /* 57574 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21231 | /* 57576 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21232 | /* 57580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21233 | /* 57584 */ GIR_RootConstrainSelectedInstOperands, |
| 21234 | /* 57585 */ // GIR_Coverage, 19842, |
| 21235 | /* 57585 */ GIR_EraseRootFromParent_Done, |
| 21236 | /* 57586 */ // Label 1426: @57586 |
| 21237 | /* 57586 */ GIM_Try, /*On fail goto*//*Label 1427*/ GIMT_Encode4(57624), // Rule ID 19843 // |
| 21238 | /* 57591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21239 | /* 57594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21240 | /* 57598 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21241 | /* 57602 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21242 | /* 57609 */ // (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZ256rm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 21243 | /* 57609 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ256rm), |
| 21244 | /* 57612 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21245 | /* 57614 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21246 | /* 57618 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21247 | /* 57622 */ GIR_RootConstrainSelectedInstOperands, |
| 21248 | /* 57623 */ // GIR_Coverage, 19843, |
| 21249 | /* 57623 */ GIR_EraseRootFromParent_Done, |
| 21250 | /* 57624 */ // Label 1427: @57624 |
| 21251 | /* 57624 */ GIM_Reject, |
| 21252 | /* 57625 */ // Label 1419: @57625 |
| 21253 | /* 57625 */ GIM_Reject, |
| 21254 | /* 57626 */ // Label 1294: @57626 |
| 21255 | /* 57626 */ GIM_Try, /*On fail goto*//*Label 1428*/ GIMT_Encode4(57799), |
| 21256 | /* 57631 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21257 | /* 57634 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21258 | /* 57638 */ GIM_Try, /*On fail goto*//*Label 1429*/ GIMT_Encode4(57680), // Rule ID 4466 // |
| 21259 | /* 57643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21260 | /* 57646 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21261 | /* 57650 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21262 | /* 57654 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21263 | /* 57658 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21264 | /* 57665 */ // (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZrm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 21265 | /* 57665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrm), |
| 21266 | /* 57668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21267 | /* 57670 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21268 | /* 57674 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21269 | /* 57678 */ GIR_RootConstrainSelectedInstOperands, |
| 21270 | /* 57679 */ // GIR_Coverage, 4466, |
| 21271 | /* 57679 */ GIR_EraseRootFromParent_Done, |
| 21272 | /* 57680 */ // Label 1429: @57680 |
| 21273 | /* 57680 */ GIM_Try, /*On fail goto*//*Label 1430*/ GIMT_Encode4(57718), // Rule ID 4501 // |
| 21274 | /* 57685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21275 | /* 57688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21276 | /* 57692 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21277 | /* 57696 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21278 | /* 57703 */ // (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZrm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 21279 | /* 57703 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZrm), |
| 21280 | /* 57706 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21281 | /* 57708 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21282 | /* 57712 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21283 | /* 57716 */ GIR_RootConstrainSelectedInstOperands, |
| 21284 | /* 57717 */ // GIR_Coverage, 4501, |
| 21285 | /* 57717 */ GIR_EraseRootFromParent_Done, |
| 21286 | /* 57718 */ // Label 1430: @57718 |
| 21287 | /* 57718 */ GIM_Try, /*On fail goto*//*Label 1431*/ GIMT_Encode4(57760), // Rule ID 19805 // |
| 21288 | /* 57723 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21289 | /* 57726 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21290 | /* 57730 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21291 | /* 57734 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21292 | /* 57738 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21293 | /* 57745 */ // (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Zrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 21294 | /* 57745 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrm), |
| 21295 | /* 57748 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21296 | /* 57750 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21297 | /* 57754 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21298 | /* 57758 */ GIR_RootConstrainSelectedInstOperands, |
| 21299 | /* 57759 */ // GIR_Coverage, 19805, |
| 21300 | /* 57759 */ GIR_EraseRootFromParent_Done, |
| 21301 | /* 57760 */ // Label 1431: @57760 |
| 21302 | /* 57760 */ GIM_Try, /*On fail goto*//*Label 1432*/ GIMT_Encode4(57798), // Rule ID 19809 // |
| 21303 | /* 57765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21304 | /* 57768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21305 | /* 57772 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21306 | /* 57776 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21307 | /* 57783 */ // (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Zrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 21308 | /* 57783 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zrm), |
| 21309 | /* 57786 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21310 | /* 57788 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21311 | /* 57792 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21312 | /* 57796 */ GIR_RootConstrainSelectedInstOperands, |
| 21313 | /* 57797 */ // GIR_Coverage, 19809, |
| 21314 | /* 57797 */ GIR_EraseRootFromParent_Done, |
| 21315 | /* 57798 */ // Label 1432: @57798 |
| 21316 | /* 57798 */ GIM_Reject, |
| 21317 | /* 57799 */ // Label 1428: @57799 |
| 21318 | /* 57799 */ GIM_Reject, |
| 21319 | /* 57800 */ // Label 1295: @57800 |
| 21320 | /* 57800 */ GIM_Try, /*On fail goto*//*Label 1433*/ GIMT_Encode4(57881), |
| 21321 | /* 57805 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21322 | /* 57808 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21323 | /* 57812 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 21324 | /* 57816 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21325 | /* 57820 */ GIM_Try, /*On fail goto*//*Label 1434*/ GIMT_Encode4(57850), // Rule ID 4405 // |
| 21326 | /* 57825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoEGPR), |
| 21327 | /* 57828 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21328 | /* 57835 */ // (ld:{ *:[v32i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVDkm:{ *:[v32i1] } addr:{ *:[iPTR] }:$src) |
| 21329 | /* 57835 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDkm), |
| 21330 | /* 57838 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21331 | /* 57840 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21332 | /* 57844 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21333 | /* 57848 */ GIR_RootConstrainSelectedInstOperands, |
| 21334 | /* 57849 */ // GIR_Coverage, 4405, |
| 21335 | /* 57849 */ GIR_EraseRootFromParent_Done, |
| 21336 | /* 57850 */ // Label 1434: @57850 |
| 21337 | /* 57850 */ GIM_Try, /*On fail goto*//*Label 1435*/ GIMT_Encode4(57880), // Rule ID 4409 // |
| 21338 | /* 57855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEGPR_In64BitMode), |
| 21339 | /* 57858 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21340 | /* 57865 */ // (ld:{ *:[v32i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVDkm_EVEX:{ *:[v32i1] } addr:{ *:[iPTR] }:$src) |
| 21341 | /* 57865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDkm_EVEX), |
| 21342 | /* 57868 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21343 | /* 57870 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21344 | /* 57874 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21345 | /* 57878 */ GIR_RootConstrainSelectedInstOperands, |
| 21346 | /* 57879 */ // GIR_Coverage, 4409, |
| 21347 | /* 57879 */ GIR_EraseRootFromParent_Done, |
| 21348 | /* 57880 */ // Label 1435: @57880 |
| 21349 | /* 57880 */ GIM_Reject, |
| 21350 | /* 57881 */ // Label 1433: @57881 |
| 21351 | /* 57881 */ GIM_Reject, |
| 21352 | /* 57882 */ // Label 1296: @57882 |
| 21353 | /* 57882 */ GIM_Try, /*On fail goto*//*Label 1436*/ GIMT_Encode4(58055), |
| 21354 | /* 57887 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21355 | /* 57890 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21356 | /* 57894 */ GIM_Try, /*On fail goto*//*Label 1437*/ GIMT_Encode4(57936), // Rule ID 17908 // |
| 21357 | /* 57899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21358 | /* 57902 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21359 | /* 57906 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21360 | /* 57910 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21361 | /* 57914 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21362 | /* 57921 */ // (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSYrm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 21363 | /* 57921 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYrm), |
| 21364 | /* 57924 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21365 | /* 57926 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21366 | /* 57930 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21367 | /* 57934 */ GIR_RootConstrainSelectedInstOperands, |
| 21368 | /* 57935 */ // GIR_Coverage, 17908, |
| 21369 | /* 57935 */ GIR_EraseRootFromParent_Done, |
| 21370 | /* 57936 */ // Label 1437: @57936 |
| 21371 | /* 57936 */ GIM_Try, /*On fail goto*//*Label 1438*/ GIMT_Encode4(57974), // Rule ID 17912 // |
| 21372 | /* 57941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 21373 | /* 57944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 21374 | /* 57948 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21375 | /* 57952 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21376 | /* 57959 */ // (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSYrm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 21377 | /* 57959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYrm), |
| 21378 | /* 57962 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21379 | /* 57964 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21380 | /* 57968 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21381 | /* 57972 */ GIR_RootConstrainSelectedInstOperands, |
| 21382 | /* 57973 */ // GIR_Coverage, 17912, |
| 21383 | /* 57973 */ GIR_EraseRootFromParent_Done, |
| 21384 | /* 57974 */ // Label 1438: @57974 |
| 21385 | /* 57974 */ GIM_Try, /*On fail goto*//*Label 1439*/ GIMT_Encode4(58016), // Rule ID 19840 // |
| 21386 | /* 57979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21387 | /* 57982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21388 | /* 57986 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21389 | /* 57990 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21390 | /* 57994 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21391 | /* 58001 */ // (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Z256rm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 21392 | /* 58001 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rm), |
| 21393 | /* 58004 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21394 | /* 58006 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21395 | /* 58010 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21396 | /* 58014 */ GIR_RootConstrainSelectedInstOperands, |
| 21397 | /* 58015 */ // GIR_Coverage, 19840, |
| 21398 | /* 58015 */ GIR_EraseRootFromParent_Done, |
| 21399 | /* 58016 */ // Label 1439: @58016 |
| 21400 | /* 58016 */ GIM_Try, /*On fail goto*//*Label 1440*/ GIMT_Encode4(58054), // Rule ID 19844 // |
| 21401 | /* 58021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 21402 | /* 58024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 21403 | /* 58028 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21404 | /* 58032 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21405 | /* 58039 */ // (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Z256rm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 21406 | /* 58039 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256rm), |
| 21407 | /* 58042 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21408 | /* 58044 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21409 | /* 58048 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21410 | /* 58052 */ GIR_RootConstrainSelectedInstOperands, |
| 21411 | /* 58053 */ // GIR_Coverage, 19844, |
| 21412 | /* 58053 */ GIR_EraseRootFromParent_Done, |
| 21413 | /* 58054 */ // Label 1440: @58054 |
| 21414 | /* 58054 */ GIM_Reject, |
| 21415 | /* 58055 */ // Label 1436: @58055 |
| 21416 | /* 58055 */ GIM_Reject, |
| 21417 | /* 58056 */ // Label 1297: @58056 |
| 21418 | /* 58056 */ GIM_Try, /*On fail goto*//*Label 1441*/ GIMT_Encode4(58229), |
| 21419 | /* 58061 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21420 | /* 58064 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21421 | /* 58068 */ GIM_Try, /*On fail goto*//*Label 1442*/ GIMT_Encode4(58110), // Rule ID 19806 // |
| 21422 | /* 58073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21423 | /* 58076 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21424 | /* 58080 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21425 | /* 58084 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21426 | /* 58088 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21427 | /* 58095 */ // (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Zrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 21428 | /* 58095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrm), |
| 21429 | /* 58098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21430 | /* 58100 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21431 | /* 58104 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21432 | /* 58108 */ GIR_RootConstrainSelectedInstOperands, |
| 21433 | /* 58109 */ // GIR_Coverage, 19806, |
| 21434 | /* 58109 */ GIR_EraseRootFromParent_Done, |
| 21435 | /* 58110 */ // Label 1442: @58110 |
| 21436 | /* 58110 */ GIM_Try, /*On fail goto*//*Label 1443*/ GIMT_Encode4(58152), // Rule ID 19807 // |
| 21437 | /* 58115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21438 | /* 58118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21439 | /* 58122 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21440 | /* 58126 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21441 | /* 58130 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21442 | /* 58137 */ // (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVAPSZrm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 21443 | /* 58137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrm), |
| 21444 | /* 58140 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21445 | /* 58142 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21446 | /* 58146 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21447 | /* 58150 */ GIR_RootConstrainSelectedInstOperands, |
| 21448 | /* 58151 */ // GIR_Coverage, 19807, |
| 21449 | /* 58151 */ GIR_EraseRootFromParent_Done, |
| 21450 | /* 58152 */ // Label 1443: @58152 |
| 21451 | /* 58152 */ GIM_Try, /*On fail goto*//*Label 1444*/ GIMT_Encode4(58190), // Rule ID 19810 // |
| 21452 | /* 58157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21453 | /* 58160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21454 | /* 58164 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21455 | /* 58168 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21456 | /* 58175 */ // (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Zrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 21457 | /* 58175 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zrm), |
| 21458 | /* 58178 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21459 | /* 58180 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21460 | /* 58184 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21461 | /* 58188 */ GIR_RootConstrainSelectedInstOperands, |
| 21462 | /* 58189 */ // GIR_Coverage, 19810, |
| 21463 | /* 58189 */ GIR_EraseRootFromParent_Done, |
| 21464 | /* 58190 */ // Label 1444: @58190 |
| 21465 | /* 58190 */ GIM_Try, /*On fail goto*//*Label 1445*/ GIMT_Encode4(58228), // Rule ID 19811 // |
| 21466 | /* 58195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21467 | /* 58198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21468 | /* 58202 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21469 | /* 58206 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21470 | /* 58213 */ // (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVUPSZrm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 21471 | /* 58213 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZrm), |
| 21472 | /* 58216 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21473 | /* 58218 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21474 | /* 58222 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21475 | /* 58226 */ GIR_RootConstrainSelectedInstOperands, |
| 21476 | /* 58227 */ // GIR_Coverage, 19811, |
| 21477 | /* 58227 */ GIR_EraseRootFromParent_Done, |
| 21478 | /* 58228 */ // Label 1445: @58228 |
| 21479 | /* 58228 */ GIM_Reject, |
| 21480 | /* 58229 */ // Label 1441: @58229 |
| 21481 | /* 58229 */ GIM_Reject, |
| 21482 | /* 58230 */ // Label 1298: @58230 |
| 21483 | /* 58230 */ GIM_Try, /*On fail goto*//*Label 1446*/ GIMT_Encode4(58311), |
| 21484 | /* 58235 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21485 | /* 58238 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21486 | /* 58242 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 21487 | /* 58246 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21488 | /* 58250 */ GIM_Try, /*On fail goto*//*Label 1447*/ GIMT_Encode4(58280), // Rule ID 4407 // |
| 21489 | /* 58255 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoEGPR), |
| 21490 | /* 58258 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21491 | /* 58265 */ // (ld:{ *:[v64i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVQkm:{ *:[v64i1] } addr:{ *:[iPTR] }:$src) |
| 21492 | /* 58265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQkm), |
| 21493 | /* 58268 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21494 | /* 58270 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21495 | /* 58274 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21496 | /* 58278 */ GIR_RootConstrainSelectedInstOperands, |
| 21497 | /* 58279 */ // GIR_Coverage, 4407, |
| 21498 | /* 58279 */ GIR_EraseRootFromParent_Done, |
| 21499 | /* 58280 */ // Label 1447: @58280 |
| 21500 | /* 58280 */ GIM_Try, /*On fail goto*//*Label 1448*/ GIMT_Encode4(58310), // Rule ID 4411 // |
| 21501 | /* 58285 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEGPR_In64BitMode), |
| 21502 | /* 58288 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21503 | /* 58295 */ // (ld:{ *:[v64i1] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (KMOVQkm_EVEX:{ *:[v64i1] } addr:{ *:[iPTR] }:$src) |
| 21504 | /* 58295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQkm_EVEX), |
| 21505 | /* 58298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21506 | /* 58300 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21507 | /* 58304 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21508 | /* 58308 */ GIR_RootConstrainSelectedInstOperands, |
| 21509 | /* 58309 */ // GIR_Coverage, 4411, |
| 21510 | /* 58309 */ GIR_EraseRootFromParent_Done, |
| 21511 | /* 58310 */ // Label 1448: @58310 |
| 21512 | /* 58310 */ GIM_Reject, |
| 21513 | /* 58311 */ // Label 1446: @58311 |
| 21514 | /* 58311 */ GIM_Reject, |
| 21515 | /* 58312 */ // Label 1299: @58312 |
| 21516 | /* 58312 */ GIM_Try, /*On fail goto*//*Label 1449*/ GIMT_Encode4(58405), |
| 21517 | /* 58317 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21518 | /* 58320 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 21519 | /* 58324 */ GIM_Try, /*On fail goto*//*Label 1450*/ GIMT_Encode4(58366), // Rule ID 19808 // |
| 21520 | /* 58329 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21521 | /* 58332 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21522 | /* 58336 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21523 | /* 58340 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 21524 | /* 58344 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21525 | /* 58351 */ // (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_alignedload>> => (VMOVDQA64Zrm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src) |
| 21526 | /* 58351 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrm), |
| 21527 | /* 58354 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21528 | /* 58356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21529 | /* 58360 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21530 | /* 58364 */ GIR_RootConstrainSelectedInstOperands, |
| 21531 | /* 58365 */ // GIR_Coverage, 19808, |
| 21532 | /* 58365 */ GIR_EraseRootFromParent_Done, |
| 21533 | /* 58366 */ // Label 1450: @58366 |
| 21534 | /* 58366 */ GIM_Try, /*On fail goto*//*Label 1451*/ GIMT_Encode4(58404), // Rule ID 19812 // |
| 21535 | /* 58371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 21536 | /* 58374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 21537 | /* 58378 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21538 | /* 58382 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21539 | /* 58389 */ // (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> => (VMOVDQU64Zrm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src) |
| 21540 | /* 58389 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zrm), |
| 21541 | /* 58392 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21542 | /* 58394 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21543 | /* 58398 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21544 | /* 58402 */ GIR_RootConstrainSelectedInstOperands, |
| 21545 | /* 58403 */ // GIR_Coverage, 19812, |
| 21546 | /* 58403 */ GIR_EraseRootFromParent_Done, |
| 21547 | /* 58404 */ // Label 1451: @58404 |
| 21548 | /* 58404 */ GIM_Reject, |
| 21549 | /* 58405 */ // Label 1449: @58405 |
| 21550 | /* 58405 */ GIM_Reject, |
| 21551 | /* 58406 */ // Label 1300: @58406 |
| 21552 | /* 58406 */ GIM_Reject, |
| 21553 | /* 58407 */ // Label 12: @58407 |
| 21554 | /* 58407 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 1455*/ GIMT_Encode4(58739), |
| 21555 | /* 58418 */ /*GILLT_s16*//*Label 1452*/ GIMT_Encode4(58430), |
| 21556 | /* 58422 */ /*GILLT_s32*//*Label 1453*/ GIMT_Encode4(58506), |
| 21557 | /* 58426 */ /*GILLT_s64*//*Label 1454*/ GIMT_Encode4(58600), |
| 21558 | /* 58430 */ // Label 1452: @58430 |
| 21559 | /* 58430 */ GIM_Try, /*On fail goto*//*Label 1456*/ GIMT_Encode4(58505), // Rule ID 22730 // |
| 21560 | /* 58435 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21561 | /* 58438 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21562 | /* 58445 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 21563 | /* 58449 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21564 | /* 58453 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21565 | /* 58460 */ // (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] }) |
| 21566 | /* 58460 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21567 | /* 58463 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVSX32rm8), |
| 21568 | /* 58467 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21569 | /* 58472 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 21570 | /* 58476 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21571 | /* 58480 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21572 | /* 58482 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 21573 | /* 58485 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21574 | /* 58487 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 21575 | /* 58494 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 21576 | /* 58499 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 21577 | /* 58504 */ // GIR_Coverage, 22730, |
| 21578 | /* 58504 */ GIR_EraseRootFromParent_Done, |
| 21579 | /* 58505 */ // Label 1456: @58505 |
| 21580 | /* 58505 */ GIM_Reject, |
| 21581 | /* 58506 */ // Label 1453: @58506 |
| 21582 | /* 58506 */ GIM_Try, /*On fail goto*//*Label 1457*/ GIMT_Encode4(58599), |
| 21583 | /* 58511 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21584 | /* 58514 */ GIM_Try, /*On fail goto*//*Label 1458*/ GIMT_Encode4(58556), // Rule ID 614 // |
| 21585 | /* 58519 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21586 | /* 58526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 21587 | /* 58530 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21588 | /* 58534 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21589 | /* 58541 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> => (MOVSX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 21590 | /* 58541 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX32rm8), |
| 21591 | /* 58544 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21592 | /* 58546 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21593 | /* 58550 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21594 | /* 58554 */ GIR_RootConstrainSelectedInstOperands, |
| 21595 | /* 58555 */ // GIR_Coverage, 614, |
| 21596 | /* 58555 */ GIR_EraseRootFromParent_Done, |
| 21597 | /* 58556 */ // Label 1458: @58556 |
| 21598 | /* 58556 */ GIM_Try, /*On fail goto*//*Label 1459*/ GIMT_Encode4(58598), // Rule ID 616 // |
| 21599 | /* 58561 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 21600 | /* 58568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 21601 | /* 58572 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21602 | /* 58576 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21603 | /* 58583 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> => (MOVSX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 21604 | /* 58583 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX32rm16), |
| 21605 | /* 58586 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21606 | /* 58588 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21607 | /* 58592 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21608 | /* 58596 */ GIR_RootConstrainSelectedInstOperands, |
| 21609 | /* 58597 */ // GIR_Coverage, 616, |
| 21610 | /* 58597 */ GIR_EraseRootFromParent_Done, |
| 21611 | /* 58598 */ // Label 1459: @58598 |
| 21612 | /* 58598 */ GIM_Reject, |
| 21613 | /* 58599 */ // Label 1457: @58599 |
| 21614 | /* 58599 */ GIM_Reject, |
| 21615 | /* 58600 */ // Label 1454: @58600 |
| 21616 | /* 58600 */ GIM_Try, /*On fail goto*//*Label 1460*/ GIMT_Encode4(58738), |
| 21617 | /* 58605 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21618 | /* 58608 */ GIM_Try, /*On fail goto*//*Label 1461*/ GIMT_Encode4(58650), // Rule ID 622 // |
| 21619 | /* 58613 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21620 | /* 58620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21621 | /* 58624 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21622 | /* 58628 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21623 | /* 58635 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> => (MOVSX64rm8:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 21624 | /* 58635 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX64rm8), |
| 21625 | /* 58638 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21626 | /* 58640 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21627 | /* 58644 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21628 | /* 58648 */ GIR_RootConstrainSelectedInstOperands, |
| 21629 | /* 58649 */ // GIR_Coverage, 622, |
| 21630 | /* 58649 */ GIR_EraseRootFromParent_Done, |
| 21631 | /* 58650 */ // Label 1461: @58650 |
| 21632 | /* 58650 */ GIM_Try, /*On fail goto*//*Label 1462*/ GIMT_Encode4(58692), // Rule ID 624 // |
| 21633 | /* 58655 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 21634 | /* 58662 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21635 | /* 58666 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21636 | /* 58670 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21637 | /* 58677 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> => (MOVSX64rm16:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 21638 | /* 58677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX64rm16), |
| 21639 | /* 58680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21640 | /* 58682 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21641 | /* 58686 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21642 | /* 58690 */ GIR_RootConstrainSelectedInstOperands, |
| 21643 | /* 58691 */ // GIR_Coverage, 624, |
| 21644 | /* 58691 */ GIR_EraseRootFromParent_Done, |
| 21645 | /* 58692 */ // Label 1462: @58692 |
| 21646 | /* 58692 */ GIM_Try, /*On fail goto*//*Label 1463*/ GIMT_Encode4(58737), // Rule ID 626 // |
| 21647 | /* 58697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 21648 | /* 58700 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 21649 | /* 58707 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21650 | /* 58711 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21651 | /* 58715 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21652 | /* 58722 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> => (MOVSX64rm32:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 21653 | /* 58722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX64rm32), |
| 21654 | /* 58725 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21655 | /* 58727 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21656 | /* 58731 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21657 | /* 58735 */ GIR_RootConstrainSelectedInstOperands, |
| 21658 | /* 58736 */ // GIR_Coverage, 626, |
| 21659 | /* 58736 */ GIR_EraseRootFromParent_Done, |
| 21660 | /* 58737 */ // Label 1463: @58737 |
| 21661 | /* 58737 */ GIM_Reject, |
| 21662 | /* 58738 */ // Label 1460: @58738 |
| 21663 | /* 58738 */ GIM_Reject, |
| 21664 | /* 58739 */ // Label 1455: @58739 |
| 21665 | /* 58739 */ GIM_Reject, |
| 21666 | /* 58740 */ // Label 13: @58740 |
| 21667 | /* 58740 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 1468*/ GIMT_Encode4(59382), |
| 21668 | /* 58751 */ /*GILLT_s8*//*Label 1464*/ GIMT_Encode4(58767), |
| 21669 | /* 58755 */ /*GILLT_s16*//*Label 1465*/ GIMT_Encode4(58813), |
| 21670 | /* 58759 */ /*GILLT_s32*//*Label 1466*/ GIMT_Encode4(58952), |
| 21671 | /* 58763 */ /*GILLT_s64*//*Label 1467*/ GIMT_Encode4(59088), |
| 21672 | /* 58767 */ // Label 1464: @58767 |
| 21673 | /* 58767 */ GIM_Try, /*On fail goto*//*Label 1469*/ GIMT_Encode4(58812), // Rule ID 22658 // |
| 21674 | /* 58772 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21675 | /* 58775 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21676 | /* 58782 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 21677 | /* 58786 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21678 | /* 58790 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21679 | /* 58797 */ // (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi1>> => (MOV8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 21680 | /* 58797 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8rm), |
| 21681 | /* 58800 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21682 | /* 58802 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21683 | /* 58806 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21684 | /* 58810 */ GIR_RootConstrainSelectedInstOperands, |
| 21685 | /* 58811 */ // GIR_Coverage, 22658, |
| 21686 | /* 58811 */ GIR_EraseRootFromParent_Done, |
| 21687 | /* 58812 */ // Label 1469: @58812 |
| 21688 | /* 58812 */ GIM_Reject, |
| 21689 | /* 58813 */ // Label 1465: @58813 |
| 21690 | /* 58813 */ GIM_Try, /*On fail goto*//*Label 1470*/ GIMT_Encode4(58951), |
| 21691 | /* 58818 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21692 | /* 58821 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21693 | /* 58828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 21694 | /* 58832 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21695 | /* 58836 */ GIM_Try, /*On fail goto*//*Label 1471*/ GIMT_Encode4(58893), // Rule ID 22659 // |
| 21696 | /* 58841 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21697 | /* 58848 */ // (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] }) |
| 21698 | /* 58848 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21699 | /* 58851 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 21700 | /* 58855 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21701 | /* 58860 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 21702 | /* 58864 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21703 | /* 58868 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21704 | /* 58870 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 21705 | /* 58873 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21706 | /* 58875 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 21707 | /* 58882 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 21708 | /* 58887 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 21709 | /* 58892 */ // GIR_Coverage, 22659, |
| 21710 | /* 58892 */ GIR_EraseRootFromParent_Done, |
| 21711 | /* 58893 */ // Label 1471: @58893 |
| 21712 | /* 58893 */ GIM_Try, /*On fail goto*//*Label 1472*/ GIMT_Encode4(58950), // Rule ID 22732 // |
| 21713 | /* 58898 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21714 | /* 58905 */ // (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] }) |
| 21715 | /* 58905 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21716 | /* 58908 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 21717 | /* 58912 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21718 | /* 58917 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 21719 | /* 58921 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21720 | /* 58925 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21721 | /* 58927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 21722 | /* 58930 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21723 | /* 58932 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 21724 | /* 58939 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 21725 | /* 58944 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 21726 | /* 58949 */ // GIR_Coverage, 22732, |
| 21727 | /* 58949 */ GIR_EraseRootFromParent_Done, |
| 21728 | /* 58950 */ // Label 1472: @58950 |
| 21729 | /* 58950 */ GIM_Reject, |
| 21730 | /* 58951 */ // Label 1470: @58951 |
| 21731 | /* 58951 */ GIM_Reject, |
| 21732 | /* 58952 */ // Label 1466: @58952 |
| 21733 | /* 58952 */ GIM_Try, /*On fail goto*//*Label 1473*/ GIMT_Encode4(59087), |
| 21734 | /* 58957 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21735 | /* 58960 */ GIM_Try, /*On fail goto*//*Label 1474*/ GIMT_Encode4(59002), // Rule ID 618 // |
| 21736 | /* 58965 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21737 | /* 58972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 21738 | /* 58976 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21739 | /* 58980 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21740 | /* 58987 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> => (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 21741 | /* 58987 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 21742 | /* 58990 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21743 | /* 58992 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21744 | /* 58996 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21745 | /* 59000 */ GIR_RootConstrainSelectedInstOperands, |
| 21746 | /* 59001 */ // GIR_Coverage, 618, |
| 21747 | /* 59001 */ GIR_EraseRootFromParent_Done, |
| 21748 | /* 59002 */ // Label 1474: @59002 |
| 21749 | /* 59002 */ GIM_Try, /*On fail goto*//*Label 1475*/ GIMT_Encode4(59044), // Rule ID 620 // |
| 21750 | /* 59007 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 21751 | /* 59014 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 21752 | /* 59018 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21753 | /* 59022 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21754 | /* 59029 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> => (MOVZX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 21755 | /* 59029 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm16), |
| 21756 | /* 59032 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21757 | /* 59034 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21758 | /* 59038 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21759 | /* 59042 */ GIR_RootConstrainSelectedInstOperands, |
| 21760 | /* 59043 */ // GIR_Coverage, 620, |
| 21761 | /* 59043 */ GIR_EraseRootFromParent_Done, |
| 21762 | /* 59044 */ // Label 1475: @59044 |
| 21763 | /* 59044 */ GIM_Try, /*On fail goto*//*Label 1476*/ GIMT_Encode4(59086), // Rule ID 22660 // |
| 21764 | /* 59049 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21765 | /* 59056 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 21766 | /* 59060 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21767 | /* 59064 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21768 | /* 59071 */ // (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi1>> => (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 21769 | /* 59071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 21770 | /* 59074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21771 | /* 59076 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 21772 | /* 59080 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21773 | /* 59084 */ GIR_RootConstrainSelectedInstOperands, |
| 21774 | /* 59085 */ // GIR_Coverage, 22660, |
| 21775 | /* 59085 */ GIR_EraseRootFromParent_Done, |
| 21776 | /* 59086 */ // Label 1476: @59086 |
| 21777 | /* 59086 */ GIM_Reject, |
| 21778 | /* 59087 */ // Label 1473: @59087 |
| 21779 | /* 59087 */ GIM_Reject, |
| 21780 | /* 59088 */ // Label 1467: @59088 |
| 21781 | /* 59088 */ GIM_Try, /*On fail goto*//*Label 1477*/ GIMT_Encode4(59381), |
| 21782 | /* 59093 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 21783 | /* 59096 */ GIM_Try, /*On fail goto*//*Label 1478*/ GIMT_Encode4(59167), // Rule ID 17581 // |
| 21784 | /* 59101 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21785 | /* 59108 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21786 | /* 59112 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21787 | /* 59116 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21788 | /* 59123 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 21789 | /* 59123 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21790 | /* 59126 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 21791 | /* 59130 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21792 | /* 59135 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 21793 | /* 59139 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21794 | /* 59143 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21795 | /* 59145 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 21796 | /* 59148 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21797 | /* 59150 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21798 | /* 59153 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 21799 | /* 59156 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 21800 | /* 59161 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 21801 | /* 59166 */ // GIR_Coverage, 17581, |
| 21802 | /* 59166 */ GIR_EraseRootFromParent_Done, |
| 21803 | /* 59167 */ // Label 1478: @59167 |
| 21804 | /* 59167 */ GIM_Try, /*On fail goto*//*Label 1479*/ GIMT_Encode4(59238), // Rule ID 17583 // |
| 21805 | /* 59172 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 21806 | /* 59179 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21807 | /* 59183 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21808 | /* 59187 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21809 | /* 59194 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rm16:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 21810 | /* 59194 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21811 | /* 59197 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm16), |
| 21812 | /* 59201 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21813 | /* 59206 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 21814 | /* 59210 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21815 | /* 59214 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21816 | /* 59216 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 21817 | /* 59219 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21818 | /* 59221 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21819 | /* 59224 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 21820 | /* 59227 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 21821 | /* 59232 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 21822 | /* 59237 */ // GIR_Coverage, 17583, |
| 21823 | /* 59237 */ GIR_EraseRootFromParent_Done, |
| 21824 | /* 59238 */ // Label 1479: @59238 |
| 21825 | /* 59238 */ GIM_Try, /*On fail goto*//*Label 1480*/ GIMT_Encode4(59309), // Rule ID 17585 // |
| 21826 | /* 59243 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 21827 | /* 59250 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21828 | /* 59254 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21829 | /* 59258 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21830 | /* 59265 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> => (SUBREG_TO_REG:{ *:[i64] } (MOV32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 21831 | /* 59265 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21832 | /* 59268 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32rm), |
| 21833 | /* 59272 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21834 | /* 59277 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 21835 | /* 59281 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21836 | /* 59285 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21837 | /* 59287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 21838 | /* 59290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21839 | /* 59292 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21840 | /* 59295 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 21841 | /* 59298 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 21842 | /* 59303 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 21843 | /* 59308 */ // GIR_Coverage, 17585, |
| 21844 | /* 59308 */ GIR_EraseRootFromParent_Done, |
| 21845 | /* 59309 */ // Label 1480: @59309 |
| 21846 | /* 59309 */ GIM_Try, /*On fail goto*//*Label 1481*/ GIMT_Encode4(59380), // Rule ID 22661 // |
| 21847 | /* 59314 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21848 | /* 59321 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 21849 | /* 59325 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 21850 | /* 59329 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21851 | /* 59336 */ // (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi1>> => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rm8:{ *:[i32] } addr:{ *:[iPTR] }:$src), sub_32bit:{ *:[i32] }) |
| 21852 | /* 59336 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21853 | /* 59339 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rm8), |
| 21854 | /* 59343 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21855 | /* 59348 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 21856 | /* 59352 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 21857 | /* 59356 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21858 | /* 59358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 21859 | /* 59361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 21860 | /* 59363 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21861 | /* 59366 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 21862 | /* 59369 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 21863 | /* 59374 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 21864 | /* 59379 */ // GIR_Coverage, 22661, |
| 21865 | /* 59379 */ GIR_EraseRootFromParent_Done, |
| 21866 | /* 59380 */ // Label 1481: @59380 |
| 21867 | /* 59380 */ GIM_Reject, |
| 21868 | /* 59381 */ // Label 1477: @59381 |
| 21869 | /* 59381 */ GIM_Reject, |
| 21870 | /* 59382 */ // Label 1468: @59382 |
| 21871 | /* 59382 */ GIM_Reject, |
| 21872 | /* 59383 */ // Label 14: @59383 |
| 21873 | /* 59383 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(25), /*)*//*default:*//*Label 1504*/ GIMT_Encode4(84845), |
| 21874 | /* 59394 */ /*GILLT_s8*//*Label 1482*/ GIMT_Encode4(59490), |
| 21875 | /* 59398 */ /*GILLT_s16*//*Label 1483*/ GIMT_Encode4(64160), |
| 21876 | /* 59402 */ /*GILLT_s32*//*Label 1484*/ GIMT_Encode4(69404), |
| 21877 | /* 59406 */ /*GILLT_s64*//*Label 1485*/ GIMT_Encode4(75104), |
| 21878 | /* 59410 */ /*GILLT_s80*//*Label 1486*/ GIMT_Encode4(80496), |
| 21879 | /* 59414 */ /*GILLT_s128*//*Label 1487*/ GIMT_Encode4(80655), GIMT_Encode4(0), |
| 21880 | /* 59422 */ /*GILLT_v2s64*//*Label 1488*/ GIMT_Encode4(80909), GIMT_Encode4(0), |
| 21881 | /* 59430 */ /*GILLT_v4s32*//*Label 1489*/ GIMT_Encode4(81403), |
| 21882 | /* 59434 */ /*GILLT_v4s64*//*Label 1490*/ GIMT_Encode4(81897), |
| 21883 | /* 59438 */ /*GILLT_v8s1*//*Label 1491*/ GIMT_Encode4(82231), |
| 21884 | /* 59442 */ /*GILLT_v8s16*//*Label 1492*/ GIMT_Encode4(82313), |
| 21885 | /* 59446 */ /*GILLT_v8s32*//*Label 1493*/ GIMT_Encode4(82887), |
| 21886 | /* 59450 */ /*GILLT_v8s64*//*Label 1494*/ GIMT_Encode4(83221), |
| 21887 | /* 59454 */ /*GILLT_v16s1*//*Label 1495*/ GIMT_Encode4(83395), |
| 21888 | /* 59458 */ /*GILLT_v16s8*//*Label 1496*/ GIMT_Encode4(83477), |
| 21889 | /* 59462 */ /*GILLT_v16s16*//*Label 1497*/ GIMT_Encode4(83731), |
| 21890 | /* 59466 */ /*GILLT_v16s32*//*Label 1498*/ GIMT_Encode4(84065), |
| 21891 | /* 59470 */ /*GILLT_v32s1*//*Label 1499*/ GIMT_Encode4(84239), |
| 21892 | /* 59474 */ /*GILLT_v32s8*//*Label 1500*/ GIMT_Encode4(84321), |
| 21893 | /* 59478 */ /*GILLT_v32s16*//*Label 1501*/ GIMT_Encode4(84495), |
| 21894 | /* 59482 */ /*GILLT_v64s1*//*Label 1502*/ GIMT_Encode4(84669), |
| 21895 | /* 59486 */ /*GILLT_v64s8*//*Label 1503*/ GIMT_Encode4(84751), |
| 21896 | /* 59490 */ // Label 1482: @59490 |
| 21897 | /* 59490 */ GIM_Try, /*On fail goto*//*Label 1505*/ GIMT_Encode4(59586), // Rule ID 22552 // |
| 21898 | /* 59495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 21899 | /* 59498 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 21900 | /* 59501 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21901 | /* 59508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 21902 | /* 59512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 21903 | /* 59516 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 21904 | /* 59520 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 21905 | /* 59524 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 21906 | /* 59528 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 21907 | /* 59532 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 21908 | /* 59535 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 21909 | /* 59539 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21910 | /* 59546 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 21911 | /* 59550 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 21912 | /* 59554 */ // MIs[0] dst |
| 21913 | /* 59554 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 21914 | /* 59559 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 21915 | /* 59561 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21916 | /* 59568 */ // (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) |
| 21917 | /* 59568 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC8m), |
| 21918 | /* 59571 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 21919 | /* 59575 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 21920 | /* 59578 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 21921 | /* 59584 */ GIR_RootConstrainSelectedInstOperands, |
| 21922 | /* 59585 */ // GIR_Coverage, 22552, |
| 21923 | /* 59585 */ GIR_EraseRootFromParent_Done, |
| 21924 | /* 59586 */ // Label 1505: @59586 |
| 21925 | /* 59586 */ GIM_Try, /*On fail goto*//*Label 1506*/ GIMT_Encode4(59682), // Rule ID 22556 // |
| 21926 | /* 59591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 21927 | /* 59594 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 21928 | /* 59597 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21929 | /* 59604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 21930 | /* 59608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 21931 | /* 59612 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 21932 | /* 59616 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 21933 | /* 59620 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 21934 | /* 59624 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 21935 | /* 59628 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 21936 | /* 59631 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 21937 | /* 59635 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21938 | /* 59642 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 21939 | /* 59646 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 21940 | /* 59650 */ // MIs[0] dst |
| 21941 | /* 59650 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 21942 | /* 59655 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 21943 | /* 59657 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21944 | /* 59664 */ // (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) |
| 21945 | /* 59664 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC8m), |
| 21946 | /* 59667 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 21947 | /* 59671 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 21948 | /* 59674 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 21949 | /* 59680 */ GIR_RootConstrainSelectedInstOperands, |
| 21950 | /* 59681 */ // GIR_Coverage, 22556, |
| 21951 | /* 59681 */ GIR_EraseRootFromParent_Done, |
| 21952 | /* 59682 */ // Label 1506: @59682 |
| 21953 | /* 59682 */ GIM_Try, /*On fail goto*//*Label 1507*/ GIMT_Encode4(59775), // Rule ID 22560 // |
| 21954 | /* 59687 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 21955 | /* 59690 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21956 | /* 59697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 21957 | /* 59701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 21958 | /* 59705 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 21959 | /* 59709 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 21960 | /* 59713 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 21961 | /* 59717 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 21962 | /* 59721 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 21963 | /* 59725 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 21964 | /* 59728 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 21965 | /* 59732 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21966 | /* 59739 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 21967 | /* 59743 */ // MIs[0] dst |
| 21968 | /* 59743 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 21969 | /* 59748 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 21970 | /* 59750 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21971 | /* 59757 */ // (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) |
| 21972 | /* 59757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8m), |
| 21973 | /* 59760 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 21974 | /* 59764 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 21975 | /* 59767 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 21976 | /* 59773 */ GIR_RootConstrainSelectedInstOperands, |
| 21977 | /* 59774 */ // GIR_Coverage, 22560, |
| 21978 | /* 59774 */ GIR_EraseRootFromParent_Done, |
| 21979 | /* 59775 */ // Label 1507: @59775 |
| 21980 | /* 59775 */ GIM_Try, /*On fail goto*//*Label 1508*/ GIMT_Encode4(59865), // Rule ID 22564 // |
| 21981 | /* 59780 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 21982 | /* 59783 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21983 | /* 59790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 21984 | /* 59794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 21985 | /* 59798 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 21986 | /* 59802 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 21987 | /* 59806 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 21988 | /* 59810 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 21989 | /* 59814 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 21990 | /* 59817 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 21991 | /* 59821 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 21992 | /* 59828 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 21993 | /* 59832 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 21994 | /* 59836 */ // MIs[0] dst |
| 21995 | /* 59836 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 21996 | /* 59841 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 21997 | /* 59843 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 21998 | /* 59850 */ // (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) |
| 21999 | /* 59850 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8m), |
| 22000 | /* 59853 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22001 | /* 59857 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22002 | /* 59863 */ GIR_RootConstrainSelectedInstOperands, |
| 22003 | /* 59864 */ // GIR_Coverage, 22564, |
| 22004 | /* 59864 */ GIR_EraseRootFromParent_Done, |
| 22005 | /* 59865 */ // Label 1508: @59865 |
| 22006 | /* 59865 */ GIM_Try, /*On fail goto*//*Label 1509*/ GIMT_Encode4(59951), // Rule ID 223 // |
| 22007 | /* 59870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 22008 | /* 59873 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22009 | /* 59876 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22010 | /* 59880 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22011 | /* 59884 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22012 | /* 59888 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22013 | /* 59892 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22014 | /* 59896 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22015 | /* 59900 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22016 | /* 59904 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22017 | /* 59907 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22018 | /* 59911 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22019 | /* 59915 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 22020 | /* 59919 */ // MIs[0] src1 |
| 22021 | /* 59919 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22022 | /* 59924 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22023 | /* 59926 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22024 | /* 59933 */ // (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) |
| 22025 | /* 59933 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC8m), |
| 22026 | /* 59936 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22027 | /* 59940 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22028 | /* 59943 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22029 | /* 59949 */ GIR_RootConstrainSelectedInstOperands, |
| 22030 | /* 59950 */ // GIR_Coverage, 223, |
| 22031 | /* 59950 */ GIR_EraseRootFromParent_Done, |
| 22032 | /* 59951 */ // Label 1509: @59951 |
| 22033 | /* 59951 */ GIM_Try, /*On fail goto*//*Label 1510*/ GIMT_Encode4(60037), // Rule ID 226 // |
| 22034 | /* 59956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 22035 | /* 59959 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22036 | /* 59962 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22037 | /* 59966 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22038 | /* 59970 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22039 | /* 59974 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22040 | /* 59978 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22041 | /* 59982 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22042 | /* 59986 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22043 | /* 59990 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22044 | /* 59993 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22045 | /* 59997 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22046 | /* 60001 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 22047 | /* 60005 */ // MIs[0] src1 |
| 22048 | /* 60005 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22049 | /* 60010 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22050 | /* 60012 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22051 | /* 60019 */ // (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) |
| 22052 | /* 60019 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC8m), |
| 22053 | /* 60022 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22054 | /* 60026 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22055 | /* 60029 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22056 | /* 60035 */ GIR_RootConstrainSelectedInstOperands, |
| 22057 | /* 60036 */ // GIR_Coverage, 226, |
| 22058 | /* 60036 */ GIR_EraseRootFromParent_Done, |
| 22059 | /* 60037 */ // Label 1510: @60037 |
| 22060 | /* 60037 */ GIM_Try, /*On fail goto*//*Label 1511*/ GIMT_Encode4(60120), // Rule ID 17602 // |
| 22061 | /* 60042 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22062 | /* 60045 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22063 | /* 60049 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22064 | /* 60053 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 22065 | /* 60057 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22066 | /* 60061 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22067 | /* 60065 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22068 | /* 60069 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22069 | /* 60073 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22070 | /* 60076 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22071 | /* 60080 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22072 | /* 60084 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 7, |
| 22073 | /* 60088 */ // MIs[0] dst |
| 22074 | /* 60088 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22075 | /* 60093 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22076 | /* 60095 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22077 | /* 60102 */ // (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) |
| 22078 | /* 60102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8m1), |
| 22079 | /* 60105 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22080 | /* 60109 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22081 | /* 60112 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22082 | /* 60118 */ GIR_RootConstrainSelectedInstOperands, |
| 22083 | /* 60119 */ // GIR_Coverage, 17602, |
| 22084 | /* 60119 */ GIR_EraseRootFromParent_Done, |
| 22085 | /* 60120 */ // Label 1511: @60120 |
| 22086 | /* 60120 */ GIM_Try, /*On fail goto*//*Label 1512*/ GIMT_Encode4(60203), // Rule ID 17606 // |
| 22087 | /* 60125 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22088 | /* 60128 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22089 | /* 60132 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22090 | /* 60136 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 22091 | /* 60140 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22092 | /* 60144 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22093 | /* 60148 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22094 | /* 60152 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22095 | /* 60156 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22096 | /* 60159 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22097 | /* 60163 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22098 | /* 60167 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 7, |
| 22099 | /* 60171 */ // MIs[0] dst |
| 22100 | /* 60171 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22101 | /* 60176 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22102 | /* 60178 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22103 | /* 60185 */ // (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) |
| 22104 | /* 60185 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8m1), |
| 22105 | /* 60188 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22106 | /* 60192 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22107 | /* 60195 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22108 | /* 60201 */ GIR_RootConstrainSelectedInstOperands, |
| 22109 | /* 60202 */ // GIR_Coverage, 17606, |
| 22110 | /* 60202 */ GIR_EraseRootFromParent_Done, |
| 22111 | /* 60203 */ // Label 1512: @60203 |
| 22112 | /* 60203 */ GIM_Try, /*On fail goto*//*Label 1513*/ GIMT_Encode4(60286), // Rule ID 259 // |
| 22113 | /* 60208 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22114 | /* 60211 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22115 | /* 60215 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22116 | /* 60219 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 22117 | /* 60223 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22118 | /* 60227 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22119 | /* 60231 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 22120 | /* 60235 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22121 | /* 60239 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22122 | /* 60243 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22123 | /* 60246 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22124 | /* 60250 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22125 | /* 60254 */ // MIs[0] src1 |
| 22126 | /* 60254 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22127 | /* 60259 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22128 | /* 60261 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22129 | /* 60268 */ // (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) |
| 22130 | /* 60268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG8m), |
| 22131 | /* 60271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22132 | /* 60275 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22133 | /* 60278 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22134 | /* 60284 */ GIR_RootConstrainSelectedInstOperands, |
| 22135 | /* 60285 */ // GIR_Coverage, 259, |
| 22136 | /* 60285 */ GIR_EraseRootFromParent_Done, |
| 22137 | /* 60286 */ // Label 1513: @60286 |
| 22138 | /* 60286 */ GIM_Try, /*On fail goto*//*Label 1514*/ GIMT_Encode4(60366), // Rule ID 267 // |
| 22139 | /* 60291 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22140 | /* 60294 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22141 | /* 60298 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22142 | /* 60302 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22143 | /* 60306 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22144 | /* 60310 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22145 | /* 60314 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22146 | /* 60318 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22147 | /* 60322 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22148 | /* 60325 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22149 | /* 60329 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22150 | /* 60333 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 22151 | /* 60337 */ // MIs[0] src1 |
| 22152 | /* 60337 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22153 | /* 60342 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22154 | /* 60344 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22155 | /* 60351 */ // (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) |
| 22156 | /* 60351 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT8m), |
| 22157 | /* 60354 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22158 | /* 60358 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22159 | /* 60364 */ GIR_RootConstrainSelectedInstOperands, |
| 22160 | /* 60365 */ // GIR_Coverage, 267, |
| 22161 | /* 60365 */ GIR_EraseRootFromParent_Done, |
| 22162 | /* 60366 */ // Label 1514: @60366 |
| 22163 | /* 60366 */ GIM_Try, /*On fail goto*//*Label 1515*/ GIMT_Encode4(60461), // Rule ID 411 // |
| 22164 | /* 60371 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22165 | /* 60374 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22166 | /* 60378 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22167 | /* 60382 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22168 | /* 60386 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22169 | /* 60390 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22170 | /* 60394 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22171 | /* 60398 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22172 | /* 60402 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22173 | /* 60405 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22174 | /* 60409 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22175 | /* 60413 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22176 | /* 60417 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22177 | /* 60421 */ // MIs[3] Operand 1 |
| 22178 | /* 60421 */ // No operand predicates |
| 22179 | /* 60421 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22180 | /* 60425 */ // MIs[0] src1 |
| 22181 | /* 60425 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22182 | /* 60430 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22183 | /* 60432 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22184 | /* 60439 */ // (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) |
| 22185 | /* 60439 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mi), |
| 22186 | /* 60442 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22187 | /* 60446 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22188 | /* 60449 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22189 | /* 60452 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22190 | /* 60459 */ GIR_RootConstrainSelectedInstOperands, |
| 22191 | /* 60460 */ // GIR_Coverage, 411, |
| 22192 | /* 60460 */ GIR_EraseRootFromParent_Done, |
| 22193 | /* 60461 */ // Label 1515: @60461 |
| 22194 | /* 60461 */ GIM_Try, /*On fail goto*//*Label 1516*/ GIMT_Encode4(60556), // Rule ID 303 // |
| 22195 | /* 60466 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22196 | /* 60469 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22197 | /* 60473 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22198 | /* 60477 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 22199 | /* 60481 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22200 | /* 60485 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22201 | /* 60489 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22202 | /* 60493 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22203 | /* 60497 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22204 | /* 60500 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22205 | /* 60504 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22206 | /* 60508 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22207 | /* 60512 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22208 | /* 60516 */ // MIs[3] Operand 1 |
| 22209 | /* 60516 */ // No operand predicates |
| 22210 | /* 60516 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22211 | /* 60520 */ // MIs[0] src1 |
| 22212 | /* 60520 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22213 | /* 60525 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22214 | /* 60527 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22215 | /* 60534 */ // (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) |
| 22216 | /* 60534 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mi), |
| 22217 | /* 60537 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22218 | /* 60541 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22219 | /* 60544 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22220 | /* 60547 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22221 | /* 60554 */ GIR_RootConstrainSelectedInstOperands, |
| 22222 | /* 60555 */ // GIR_Coverage, 303, |
| 22223 | /* 60555 */ GIR_EraseRootFromParent_Done, |
| 22224 | /* 60556 */ // Label 1516: @60556 |
| 22225 | /* 60556 */ GIM_Try, /*On fail goto*//*Label 1517*/ GIMT_Encode4(60651), // Rule ID 339 // |
| 22226 | /* 60561 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22227 | /* 60564 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22228 | /* 60568 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22229 | /* 60572 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 22230 | /* 60576 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22231 | /* 60580 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22232 | /* 60584 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22233 | /* 60588 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22234 | /* 60592 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22235 | /* 60595 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22236 | /* 60599 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22237 | /* 60603 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22238 | /* 60607 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22239 | /* 60611 */ // MIs[3] Operand 1 |
| 22240 | /* 60611 */ // No operand predicates |
| 22241 | /* 60611 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22242 | /* 60615 */ // MIs[0] src1 |
| 22243 | /* 60615 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22244 | /* 60620 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22245 | /* 60622 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22246 | /* 60629 */ // (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) |
| 22247 | /* 60629 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mi), |
| 22248 | /* 60632 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22249 | /* 60636 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22250 | /* 60639 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22251 | /* 60642 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22252 | /* 60649 */ GIR_RootConstrainSelectedInstOperands, |
| 22253 | /* 60650 */ // GIR_Coverage, 339, |
| 22254 | /* 60650 */ GIR_EraseRootFromParent_Done, |
| 22255 | /* 60651 */ // Label 1517: @60651 |
| 22256 | /* 60651 */ GIM_Try, /*On fail goto*//*Label 1518*/ GIMT_Encode4(60746), // Rule ID 451 // |
| 22257 | /* 60656 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22258 | /* 60659 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22259 | /* 60663 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22260 | /* 60667 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 22261 | /* 60671 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22262 | /* 60675 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22263 | /* 60679 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22264 | /* 60683 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22265 | /* 60687 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22266 | /* 60690 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22267 | /* 60694 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22268 | /* 60698 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22269 | /* 60702 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22270 | /* 60706 */ // MIs[3] Operand 1 |
| 22271 | /* 60706 */ // No operand predicates |
| 22272 | /* 60706 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22273 | /* 60710 */ // MIs[0] src1 |
| 22274 | /* 60710 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22275 | /* 60715 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22276 | /* 60717 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22277 | /* 60724 */ // (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) |
| 22278 | /* 60724 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8mi), |
| 22279 | /* 60727 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22280 | /* 60731 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22281 | /* 60734 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22282 | /* 60737 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22283 | /* 60744 */ GIR_RootConstrainSelectedInstOperands, |
| 22284 | /* 60745 */ // GIR_Coverage, 451, |
| 22285 | /* 60745 */ GIR_EraseRootFromParent_Done, |
| 22286 | /* 60746 */ // Label 1518: @60746 |
| 22287 | /* 60746 */ GIM_Try, /*On fail goto*//*Label 1519*/ GIMT_Encode4(60841), // Rule ID 375 // |
| 22288 | /* 60751 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22289 | /* 60754 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22290 | /* 60758 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22291 | /* 60762 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22292 | /* 60766 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22293 | /* 60770 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22294 | /* 60774 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22295 | /* 60778 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22296 | /* 60782 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22297 | /* 60785 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22298 | /* 60789 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22299 | /* 60793 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22300 | /* 60797 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22301 | /* 60801 */ // MIs[3] Operand 1 |
| 22302 | /* 60801 */ // No operand predicates |
| 22303 | /* 60801 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 22304 | /* 60805 */ // MIs[0] src1 |
| 22305 | /* 60805 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22306 | /* 60810 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22307 | /* 60812 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22308 | /* 60819 */ // (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) |
| 22309 | /* 60819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mi), |
| 22310 | /* 60822 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22311 | /* 60826 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22312 | /* 60829 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22313 | /* 60832 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22314 | /* 60839 */ GIR_RootConstrainSelectedInstOperands, |
| 22315 | /* 60840 */ // GIR_Coverage, 375, |
| 22316 | /* 60840 */ GIR_EraseRootFromParent_Done, |
| 22317 | /* 60841 */ // Label 1519: @60841 |
| 22318 | /* 60841 */ GIM_Try, /*On fail goto*//*Label 1520*/ GIMT_Encode4(60942), // Rule ID 22488 // |
| 22319 | /* 60846 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22320 | /* 60849 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22321 | /* 60856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22322 | /* 60860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22323 | /* 60864 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22324 | /* 60868 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22325 | /* 60872 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22326 | /* 60876 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22327 | /* 60880 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22328 | /* 60883 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22329 | /* 60887 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22330 | /* 60894 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22331 | /* 60898 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22332 | /* 60902 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22333 | /* 60906 */ // MIs[3] Operand 1 |
| 22334 | /* 60906 */ // No operand predicates |
| 22335 | /* 60906 */ // MIs[0] dst |
| 22336 | /* 60906 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22337 | /* 60911 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22338 | /* 60913 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22339 | /* 60920 */ // (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) |
| 22340 | /* 60920 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mi), |
| 22341 | /* 60923 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22342 | /* 60927 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22343 | /* 60930 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22344 | /* 60933 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22345 | /* 60940 */ GIR_RootConstrainSelectedInstOperands, |
| 22346 | /* 60941 */ // GIR_Coverage, 22488, |
| 22347 | /* 60941 */ GIR_EraseRootFromParent_Done, |
| 22348 | /* 60942 */ // Label 1520: @60942 |
| 22349 | /* 60942 */ GIM_Try, /*On fail goto*//*Label 1521*/ GIMT_Encode4(61043), // Rule ID 22496 // |
| 22350 | /* 60947 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22351 | /* 60950 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22352 | /* 60957 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22353 | /* 60961 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 22354 | /* 60965 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22355 | /* 60969 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22356 | /* 60973 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22357 | /* 60977 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22358 | /* 60981 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22359 | /* 60984 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22360 | /* 60988 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22361 | /* 60995 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22362 | /* 60999 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22363 | /* 61003 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22364 | /* 61007 */ // MIs[3] Operand 1 |
| 22365 | /* 61007 */ // No operand predicates |
| 22366 | /* 61007 */ // MIs[0] dst |
| 22367 | /* 61007 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22368 | /* 61012 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22369 | /* 61014 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22370 | /* 61021 */ // (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) |
| 22371 | /* 61021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mi), |
| 22372 | /* 61024 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22373 | /* 61028 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22374 | /* 61031 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22375 | /* 61034 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22376 | /* 61041 */ GIR_RootConstrainSelectedInstOperands, |
| 22377 | /* 61042 */ // GIR_Coverage, 22496, |
| 22378 | /* 61042 */ GIR_EraseRootFromParent_Done, |
| 22379 | /* 61043 */ // Label 1521: @61043 |
| 22380 | /* 61043 */ GIM_Try, /*On fail goto*//*Label 1522*/ GIMT_Encode4(61144), // Rule ID 22504 // |
| 22381 | /* 61048 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22382 | /* 61051 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22383 | /* 61058 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22384 | /* 61062 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 22385 | /* 61066 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22386 | /* 61070 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22387 | /* 61074 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22388 | /* 61078 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22389 | /* 61082 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22390 | /* 61085 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22391 | /* 61089 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22392 | /* 61096 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22393 | /* 61100 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22394 | /* 61104 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22395 | /* 61108 */ // MIs[3] Operand 1 |
| 22396 | /* 61108 */ // No operand predicates |
| 22397 | /* 61108 */ // MIs[0] dst |
| 22398 | /* 61108 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22399 | /* 61113 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22400 | /* 61115 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22401 | /* 61122 */ // (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) |
| 22402 | /* 61122 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mi), |
| 22403 | /* 61125 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22404 | /* 61129 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22405 | /* 61132 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22406 | /* 61135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22407 | /* 61142 */ GIR_RootConstrainSelectedInstOperands, |
| 22408 | /* 61143 */ // GIR_Coverage, 22504, |
| 22409 | /* 61143 */ GIR_EraseRootFromParent_Done, |
| 22410 | /* 61144 */ // Label 1522: @61144 |
| 22411 | /* 61144 */ GIM_Try, /*On fail goto*//*Label 1523*/ GIMT_Encode4(61245), // Rule ID 22520 // |
| 22412 | /* 61149 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22413 | /* 61152 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22414 | /* 61159 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22415 | /* 61163 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 22416 | /* 61167 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22417 | /* 61171 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22418 | /* 61175 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22419 | /* 61179 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22420 | /* 61183 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22421 | /* 61186 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22422 | /* 61190 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22423 | /* 61197 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22424 | /* 61201 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22425 | /* 61205 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22426 | /* 61209 */ // MIs[3] Operand 1 |
| 22427 | /* 61209 */ // No operand predicates |
| 22428 | /* 61209 */ // MIs[0] dst |
| 22429 | /* 61209 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22430 | /* 61214 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22431 | /* 61216 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22432 | /* 61223 */ // (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) |
| 22433 | /* 61223 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8mi), |
| 22434 | /* 61226 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22435 | /* 61230 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22436 | /* 61233 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22437 | /* 61236 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22438 | /* 61243 */ GIR_RootConstrainSelectedInstOperands, |
| 22439 | /* 61244 */ // GIR_Coverage, 22520, |
| 22440 | /* 61244 */ GIR_EraseRootFromParent_Done, |
| 22441 | /* 61245 */ // Label 1523: @61245 |
| 22442 | /* 61245 */ GIM_Try, /*On fail goto*//*Label 1524*/ GIMT_Encode4(61346), // Rule ID 22512 // |
| 22443 | /* 61250 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22444 | /* 61253 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22445 | /* 61260 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22446 | /* 61264 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22447 | /* 61268 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22448 | /* 61272 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22449 | /* 61276 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22450 | /* 61280 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22451 | /* 61284 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22452 | /* 61287 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22453 | /* 61291 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22454 | /* 61298 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22455 | /* 61302 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22456 | /* 61306 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22457 | /* 61310 */ // MIs[3] Operand 1 |
| 22458 | /* 61310 */ // No operand predicates |
| 22459 | /* 61310 */ // MIs[0] dst |
| 22460 | /* 61310 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22461 | /* 61315 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22462 | /* 61317 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22463 | /* 61324 */ // (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) |
| 22464 | /* 61324 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mi), |
| 22465 | /* 61327 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22466 | /* 61331 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 22467 | /* 61334 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22468 | /* 61337 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22469 | /* 61344 */ GIR_RootConstrainSelectedInstOperands, |
| 22470 | /* 61345 */ // GIR_Coverage, 22512, |
| 22471 | /* 61345 */ GIR_EraseRootFromParent_Done, |
| 22472 | /* 61346 */ // Label 1524: @61346 |
| 22473 | /* 61346 */ GIM_Try, /*On fail goto*//*Label 1525*/ GIMT_Encode4(61437), // Rule ID 733 // |
| 22474 | /* 61351 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22475 | /* 61354 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22476 | /* 61358 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22477 | /* 61362 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 22478 | /* 61366 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22479 | /* 61370 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22480 | /* 61374 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22481 | /* 61378 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22482 | /* 61382 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22483 | /* 61385 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22484 | /* 61389 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22485 | /* 61393 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22486 | /* 61397 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22487 | /* 61401 */ // MIs[3] Operand 1 |
| 22488 | /* 61401 */ // No operand predicates |
| 22489 | /* 61401 */ // MIs[0] src1 |
| 22490 | /* 61401 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22491 | /* 61406 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22492 | /* 61408 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22493 | /* 61415 */ // (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) |
| 22494 | /* 61415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8mi), |
| 22495 | /* 61418 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22496 | /* 61422 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22497 | /* 61425 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22498 | /* 61428 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22499 | /* 61435 */ GIR_RootConstrainSelectedInstOperands, |
| 22500 | /* 61436 */ // GIR_Coverage, 733, |
| 22501 | /* 61436 */ GIR_EraseRootFromParent_Done, |
| 22502 | /* 61437 */ // Label 1525: @61437 |
| 22503 | /* 61437 */ GIM_Try, /*On fail goto*//*Label 1526*/ GIMT_Encode4(61528), // Rule ID 701 // |
| 22504 | /* 61442 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22505 | /* 61445 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22506 | /* 61449 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22507 | /* 61453 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 22508 | /* 61457 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22509 | /* 61461 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22510 | /* 61465 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22511 | /* 61469 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22512 | /* 61473 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22513 | /* 61476 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22514 | /* 61480 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22515 | /* 61484 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22516 | /* 61488 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22517 | /* 61492 */ // MIs[3] Operand 1 |
| 22518 | /* 61492 */ // No operand predicates |
| 22519 | /* 61492 */ // MIs[0] src1 |
| 22520 | /* 61492 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22521 | /* 61497 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22522 | /* 61499 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22523 | /* 61506 */ // (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) |
| 22524 | /* 61506 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8mi), |
| 22525 | /* 61509 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22526 | /* 61513 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22527 | /* 61516 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22528 | /* 61519 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22529 | /* 61526 */ GIR_RootConstrainSelectedInstOperands, |
| 22530 | /* 61527 */ // GIR_Coverage, 701, |
| 22531 | /* 61527 */ GIR_EraseRootFromParent_Done, |
| 22532 | /* 61528 */ // Label 1526: @61528 |
| 22533 | /* 61528 */ GIM_Try, /*On fail goto*//*Label 1527*/ GIMT_Encode4(61619), // Rule ID 765 // |
| 22534 | /* 61533 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22535 | /* 61536 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22536 | /* 61540 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22537 | /* 61544 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 22538 | /* 61548 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22539 | /* 61552 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22540 | /* 61556 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22541 | /* 61560 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22542 | /* 61564 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22543 | /* 61567 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22544 | /* 61571 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22545 | /* 61575 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22546 | /* 61579 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22547 | /* 61583 */ // MIs[3] Operand 1 |
| 22548 | /* 61583 */ // No operand predicates |
| 22549 | /* 61583 */ // MIs[0] src1 |
| 22550 | /* 61583 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22551 | /* 61588 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22552 | /* 61590 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22553 | /* 61597 */ // (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) |
| 22554 | /* 61597 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8mi), |
| 22555 | /* 61600 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22556 | /* 61604 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22557 | /* 61607 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22558 | /* 61610 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22559 | /* 61617 */ GIR_RootConstrainSelectedInstOperands, |
| 22560 | /* 61618 */ // GIR_Coverage, 765, |
| 22561 | /* 61618 */ GIR_EraseRootFromParent_Done, |
| 22562 | /* 61619 */ // Label 1527: @61619 |
| 22563 | /* 61619 */ GIM_Try, /*On fail goto*//*Label 1528*/ GIMT_Encode4(61710), // Rule ID 797 // |
| 22564 | /* 61624 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22565 | /* 61627 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22566 | /* 61631 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22567 | /* 61635 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 22568 | /* 61639 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22569 | /* 61643 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22570 | /* 61647 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22571 | /* 61651 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22572 | /* 61655 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22573 | /* 61658 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22574 | /* 61662 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22575 | /* 61666 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22576 | /* 61670 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22577 | /* 61674 */ // MIs[3] Operand 1 |
| 22578 | /* 61674 */ // No operand predicates |
| 22579 | /* 61674 */ // MIs[0] src1 |
| 22580 | /* 61674 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22581 | /* 61679 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22582 | /* 61681 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22583 | /* 61688 */ // (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) |
| 22584 | /* 61688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8mi), |
| 22585 | /* 61691 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22586 | /* 61695 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22587 | /* 61698 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22588 | /* 61701 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22589 | /* 61708 */ GIR_RootConstrainSelectedInstOperands, |
| 22590 | /* 61709 */ // GIR_Coverage, 797, |
| 22591 | /* 61709 */ GIR_EraseRootFromParent_Done, |
| 22592 | /* 61710 */ // Label 1528: @61710 |
| 22593 | /* 61710 */ GIM_Try, /*On fail goto*//*Label 1529*/ GIMT_Encode4(61801), // Rule ID 669 // |
| 22594 | /* 61715 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22595 | /* 61718 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22596 | /* 61722 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22597 | /* 61726 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 22598 | /* 61730 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22599 | /* 61734 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22600 | /* 61738 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22601 | /* 61742 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22602 | /* 61746 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22603 | /* 61749 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22604 | /* 61753 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22605 | /* 61757 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 22606 | /* 61761 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 22607 | /* 61765 */ // MIs[3] Operand 1 |
| 22608 | /* 61765 */ // No operand predicates |
| 22609 | /* 61765 */ // MIs[0] src1 |
| 22610 | /* 61765 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22611 | /* 61770 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 22612 | /* 61772 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22613 | /* 61779 */ // (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) |
| 22614 | /* 61779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8mi), |
| 22615 | /* 61782 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22616 | /* 61786 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 22617 | /* 61789 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22618 | /* 61792 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 22619 | /* 61799 */ GIR_RootConstrainSelectedInstOperands, |
| 22620 | /* 61800 */ // GIR_Coverage, 669, |
| 22621 | /* 61800 */ GIR_EraseRootFromParent_Done, |
| 22622 | /* 61801 */ // Label 1529: @61801 |
| 22623 | /* 61801 */ GIM_Try, /*On fail goto*//*Label 1530*/ GIMT_Encode4(61899), // Rule ID 22492 // |
| 22624 | /* 61806 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22625 | /* 61809 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22626 | /* 61816 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22627 | /* 61820 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22628 | /* 61824 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22629 | /* 61828 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22630 | /* 61832 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22631 | /* 61836 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22632 | /* 61840 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22633 | /* 61843 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22634 | /* 61847 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22635 | /* 61854 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22636 | /* 61858 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22637 | /* 61863 */ // MIs[0] dst |
| 22638 | /* 61863 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22639 | /* 61868 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22640 | /* 61870 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22641 | /* 61877 */ // (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) |
| 22642 | /* 61877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mr), |
| 22643 | /* 61880 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22644 | /* 61884 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 22645 | /* 61888 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22646 | /* 61891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22647 | /* 61897 */ GIR_RootConstrainSelectedInstOperands, |
| 22648 | /* 61898 */ // GIR_Coverage, 22492, |
| 22649 | /* 61898 */ GIR_EraseRootFromParent_Done, |
| 22650 | /* 61899 */ // Label 1530: @61899 |
| 22651 | /* 61899 */ GIM_Try, /*On fail goto*//*Label 1531*/ GIMT_Encode4(61997), // Rule ID 26084 // |
| 22652 | /* 61904 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22653 | /* 61907 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22654 | /* 61914 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22655 | /* 61918 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22656 | /* 61922 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22657 | /* 61926 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22658 | /* 61930 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22659 | /* 61935 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22660 | /* 61939 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22661 | /* 61943 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22662 | /* 61946 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22663 | /* 61950 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22664 | /* 61957 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22665 | /* 61961 */ // MIs[0] dst |
| 22666 | /* 61961 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22667 | /* 61966 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22668 | /* 61968 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22669 | /* 61975 */ // (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) |
| 22670 | /* 61975 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mr), |
| 22671 | /* 61978 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22672 | /* 61982 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 22673 | /* 61986 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22674 | /* 61989 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22675 | /* 61995 */ GIR_RootConstrainSelectedInstOperands, |
| 22676 | /* 61996 */ // GIR_Coverage, 26084, |
| 22677 | /* 61996 */ GIR_EraseRootFromParent_Done, |
| 22678 | /* 61997 */ // Label 1531: @61997 |
| 22679 | /* 61997 */ GIM_Try, /*On fail goto*//*Label 1532*/ GIMT_Encode4(62095), // Rule ID 22500 // |
| 22680 | /* 62002 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22681 | /* 62005 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22682 | /* 62012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22683 | /* 62016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 22684 | /* 62020 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22685 | /* 62024 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22686 | /* 62028 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22687 | /* 62032 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22688 | /* 62036 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22689 | /* 62039 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22690 | /* 62043 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22691 | /* 62050 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22692 | /* 62054 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22693 | /* 62059 */ // MIs[0] dst |
| 22694 | /* 62059 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22695 | /* 62064 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22696 | /* 62066 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22697 | /* 62073 */ // (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) |
| 22698 | /* 62073 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mr), |
| 22699 | /* 62076 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22700 | /* 62080 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 22701 | /* 62084 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22702 | /* 62087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22703 | /* 62093 */ GIR_RootConstrainSelectedInstOperands, |
| 22704 | /* 62094 */ // GIR_Coverage, 22500, |
| 22705 | /* 62094 */ GIR_EraseRootFromParent_Done, |
| 22706 | /* 62095 */ // Label 1532: @62095 |
| 22707 | /* 62095 */ GIM_Try, /*On fail goto*//*Label 1533*/ GIMT_Encode4(62193), // Rule ID 26088 // |
| 22708 | /* 62100 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22709 | /* 62103 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22710 | /* 62110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22711 | /* 62114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 22712 | /* 62118 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22713 | /* 62122 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22714 | /* 62126 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22715 | /* 62131 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22716 | /* 62135 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22717 | /* 62139 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22718 | /* 62142 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22719 | /* 62146 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22720 | /* 62153 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22721 | /* 62157 */ // MIs[0] dst |
| 22722 | /* 62157 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22723 | /* 62162 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22724 | /* 62164 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22725 | /* 62171 */ // (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) |
| 22726 | /* 62171 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mr), |
| 22727 | /* 62174 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22728 | /* 62178 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 22729 | /* 62182 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22730 | /* 62185 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22731 | /* 62191 */ GIR_RootConstrainSelectedInstOperands, |
| 22732 | /* 62192 */ // GIR_Coverage, 26088, |
| 22733 | /* 62192 */ GIR_EraseRootFromParent_Done, |
| 22734 | /* 62193 */ // Label 1533: @62193 |
| 22735 | /* 62193 */ GIM_Try, /*On fail goto*//*Label 1534*/ GIMT_Encode4(62291), // Rule ID 22508 // |
| 22736 | /* 62198 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22737 | /* 62201 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22738 | /* 62208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22739 | /* 62212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 22740 | /* 62216 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22741 | /* 62220 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22742 | /* 62224 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22743 | /* 62228 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22744 | /* 62232 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22745 | /* 62235 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22746 | /* 62239 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22747 | /* 62246 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22748 | /* 62250 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22749 | /* 62255 */ // MIs[0] dst |
| 22750 | /* 62255 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22751 | /* 62260 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22752 | /* 62262 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22753 | /* 62269 */ // (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) |
| 22754 | /* 62269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mr), |
| 22755 | /* 62272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22756 | /* 62276 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 22757 | /* 62280 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22758 | /* 62283 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22759 | /* 62289 */ GIR_RootConstrainSelectedInstOperands, |
| 22760 | /* 62290 */ // GIR_Coverage, 22508, |
| 22761 | /* 62290 */ GIR_EraseRootFromParent_Done, |
| 22762 | /* 62291 */ // Label 1534: @62291 |
| 22763 | /* 62291 */ GIM_Try, /*On fail goto*//*Label 1535*/ GIMT_Encode4(62389), // Rule ID 26092 // |
| 22764 | /* 62296 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22765 | /* 62299 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22766 | /* 62306 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22767 | /* 62310 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 22768 | /* 62314 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22769 | /* 62318 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22770 | /* 62322 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22771 | /* 62327 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22772 | /* 62331 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22773 | /* 62335 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22774 | /* 62338 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22775 | /* 62342 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22776 | /* 62349 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22777 | /* 62353 */ // MIs[0] dst |
| 22778 | /* 62353 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22779 | /* 62358 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22780 | /* 62360 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22781 | /* 62367 */ // (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) |
| 22782 | /* 62367 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mr), |
| 22783 | /* 62370 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22784 | /* 62374 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 22785 | /* 62378 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22786 | /* 62381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22787 | /* 62387 */ GIR_RootConstrainSelectedInstOperands, |
| 22788 | /* 62388 */ // GIR_Coverage, 26092, |
| 22789 | /* 62388 */ GIR_EraseRootFromParent_Done, |
| 22790 | /* 62389 */ // Label 1535: @62389 |
| 22791 | /* 62389 */ GIM_Try, /*On fail goto*//*Label 1536*/ GIMT_Encode4(62487), // Rule ID 22524 // |
| 22792 | /* 62394 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22793 | /* 62397 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22794 | /* 62404 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22795 | /* 62408 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 22796 | /* 62412 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22797 | /* 62416 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22798 | /* 62420 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22799 | /* 62424 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22800 | /* 62428 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22801 | /* 62431 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22802 | /* 62435 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22803 | /* 62442 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22804 | /* 62446 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22805 | /* 62451 */ // MIs[0] dst |
| 22806 | /* 62451 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22807 | /* 62456 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22808 | /* 62458 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22809 | /* 62465 */ // (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) |
| 22810 | /* 62465 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8mr), |
| 22811 | /* 62468 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22812 | /* 62472 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 22813 | /* 62476 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22814 | /* 62479 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22815 | /* 62485 */ GIR_RootConstrainSelectedInstOperands, |
| 22816 | /* 62486 */ // GIR_Coverage, 22524, |
| 22817 | /* 62486 */ GIR_EraseRootFromParent_Done, |
| 22818 | /* 62487 */ // Label 1536: @62487 |
| 22819 | /* 62487 */ GIM_Try, /*On fail goto*//*Label 1537*/ GIMT_Encode4(62585), // Rule ID 22516 // |
| 22820 | /* 62492 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22821 | /* 62495 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22822 | /* 62502 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22823 | /* 62506 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22824 | /* 62510 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22825 | /* 62514 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22826 | /* 62518 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22827 | /* 62522 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22828 | /* 62526 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22829 | /* 62529 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22830 | /* 62533 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22831 | /* 62540 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22832 | /* 62544 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22833 | /* 62549 */ // MIs[0] dst |
| 22834 | /* 62549 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22835 | /* 62554 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22836 | /* 62556 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22837 | /* 62563 */ // (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) |
| 22838 | /* 62563 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mr), |
| 22839 | /* 62566 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22840 | /* 62570 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 22841 | /* 62574 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22842 | /* 62577 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22843 | /* 62583 */ GIR_RootConstrainSelectedInstOperands, |
| 22844 | /* 62584 */ // GIR_Coverage, 22516, |
| 22845 | /* 62584 */ GIR_EraseRootFromParent_Done, |
| 22846 | /* 62585 */ // Label 1537: @62585 |
| 22847 | /* 62585 */ GIM_Try, /*On fail goto*//*Label 1538*/ GIMT_Encode4(62683), // Rule ID 26096 // |
| 22848 | /* 62590 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22849 | /* 62593 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22850 | /* 62600 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22851 | /* 62604 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 22852 | /* 62608 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22853 | /* 62612 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22854 | /* 62616 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22855 | /* 62621 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22856 | /* 62625 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22857 | /* 62629 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 22858 | /* 62632 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22859 | /* 62636 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 22860 | /* 62643 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22861 | /* 62647 */ // MIs[0] dst |
| 22862 | /* 62647 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22863 | /* 62652 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22864 | /* 62654 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22865 | /* 62661 */ // (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) |
| 22866 | /* 62661 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mr), |
| 22867 | /* 62664 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 22868 | /* 62668 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 22869 | /* 62672 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22870 | /* 62675 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22871 | /* 62681 */ GIR_RootConstrainSelectedInstOperands, |
| 22872 | /* 62682 */ // GIR_Coverage, 26096, |
| 22873 | /* 62682 */ GIR_EraseRootFromParent_Done, |
| 22874 | /* 62683 */ // Label 1538: @62683 |
| 22875 | /* 62683 */ GIM_Try, /*On fail goto*//*Label 1539*/ GIMT_Encode4(62771), // Rule ID 407 // |
| 22876 | /* 62688 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22877 | /* 62691 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22878 | /* 62695 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22879 | /* 62699 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22880 | /* 62703 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22881 | /* 62707 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22882 | /* 62711 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22883 | /* 62715 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22884 | /* 62719 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22885 | /* 62722 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22886 | /* 62726 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22887 | /* 62730 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22888 | /* 62735 */ // MIs[0] src1 |
| 22889 | /* 62735 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22890 | /* 62740 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22891 | /* 62742 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22892 | /* 62749 */ // (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) |
| 22893 | /* 62749 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mr), |
| 22894 | /* 62752 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22895 | /* 62756 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 22896 | /* 62760 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22897 | /* 62763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22898 | /* 62769 */ GIR_RootConstrainSelectedInstOperands, |
| 22899 | /* 62770 */ // GIR_Coverage, 407, |
| 22900 | /* 62770 */ GIR_EraseRootFromParent_Done, |
| 22901 | /* 62771 */ // Label 1539: @62771 |
| 22902 | /* 62771 */ GIM_Try, /*On fail goto*//*Label 1540*/ GIMT_Encode4(62859), // Rule ID 23304 // |
| 22903 | /* 62776 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22904 | /* 62779 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22905 | /* 62783 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22906 | /* 62787 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 22907 | /* 62791 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22908 | /* 62795 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22909 | /* 62799 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22910 | /* 62804 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22911 | /* 62808 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22912 | /* 62812 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22913 | /* 62815 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22914 | /* 62819 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22915 | /* 62823 */ // MIs[0] src1 |
| 22916 | /* 62823 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22917 | /* 62828 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22918 | /* 62830 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22919 | /* 62837 */ // (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) |
| 22920 | /* 62837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8mr), |
| 22921 | /* 62840 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22922 | /* 62844 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 22923 | /* 62848 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22924 | /* 62851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22925 | /* 62857 */ GIR_RootConstrainSelectedInstOperands, |
| 22926 | /* 62858 */ // GIR_Coverage, 23304, |
| 22927 | /* 62858 */ GIR_EraseRootFromParent_Done, |
| 22928 | /* 62859 */ // Label 1540: @62859 |
| 22929 | /* 62859 */ GIM_Try, /*On fail goto*//*Label 1541*/ GIMT_Encode4(62947), // Rule ID 299 // |
| 22930 | /* 62864 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22931 | /* 62867 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22932 | /* 62871 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22933 | /* 62875 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 22934 | /* 62879 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22935 | /* 62883 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22936 | /* 62887 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22937 | /* 62891 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22938 | /* 62895 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22939 | /* 62898 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22940 | /* 62902 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22941 | /* 62906 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22942 | /* 62911 */ // MIs[0] src1 |
| 22943 | /* 62911 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22944 | /* 62916 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22945 | /* 62918 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22946 | /* 62925 */ // (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) |
| 22947 | /* 62925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mr), |
| 22948 | /* 62928 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22949 | /* 62932 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 22950 | /* 62936 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22951 | /* 62939 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22952 | /* 62945 */ GIR_RootConstrainSelectedInstOperands, |
| 22953 | /* 62946 */ // GIR_Coverage, 299, |
| 22954 | /* 62946 */ GIR_EraseRootFromParent_Done, |
| 22955 | /* 62947 */ // Label 1541: @62947 |
| 22956 | /* 62947 */ GIM_Try, /*On fail goto*//*Label 1542*/ GIMT_Encode4(63035), // Rule ID 23268 // |
| 22957 | /* 62952 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22958 | /* 62955 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22959 | /* 62959 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22960 | /* 62963 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 22961 | /* 62967 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22962 | /* 62971 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22963 | /* 62975 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 22964 | /* 62980 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 22965 | /* 62984 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22966 | /* 62988 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22967 | /* 62991 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 22968 | /* 62995 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22969 | /* 62999 */ // MIs[0] src1 |
| 22970 | /* 62999 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22971 | /* 63004 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22972 | /* 63006 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 22973 | /* 63013 */ // (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) |
| 22974 | /* 63013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND8mr), |
| 22975 | /* 63016 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 22976 | /* 63020 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 22977 | /* 63024 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 22978 | /* 63027 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 22979 | /* 63033 */ GIR_RootConstrainSelectedInstOperands, |
| 22980 | /* 63034 */ // GIR_Coverage, 23268, |
| 22981 | /* 63034 */ GIR_EraseRootFromParent_Done, |
| 22982 | /* 63035 */ // Label 1542: @63035 |
| 22983 | /* 63035 */ GIM_Try, /*On fail goto*//*Label 1543*/ GIMT_Encode4(63133), // Rule ID 749 // |
| 22984 | /* 63040 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22985 | /* 63043 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 22986 | /* 63047 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 22987 | /* 63051 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 22988 | /* 63055 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 22989 | /* 63059 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 22990 | /* 63063 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 22991 | /* 63067 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 22992 | /* 63071 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 22993 | /* 63074 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 22994 | /* 63078 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 22995 | /* 63082 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 22996 | /* 63087 */ // MIs[0] src1 |
| 22997 | /* 63087 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 22998 | /* 63092 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 22999 | /* 63094 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23000 | /* 63101 */ // (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) |
| 23001 | /* 63101 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23002 | /* 63105 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23003 | /* 63111 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23004 | /* 63115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8mCL), |
| 23005 | /* 63118 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23006 | /* 63122 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23007 | /* 63125 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23008 | /* 63131 */ GIR_RootConstrainSelectedInstOperands, |
| 23009 | /* 63132 */ // GIR_Coverage, 749, |
| 23010 | /* 63132 */ GIR_EraseRootFromParent_Done, |
| 23011 | /* 63133 */ // Label 1543: @63133 |
| 23012 | /* 63133 */ GIM_Try, /*On fail goto*//*Label 1544*/ GIMT_Encode4(63231), // Rule ID 717 // |
| 23013 | /* 63138 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23014 | /* 63141 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23015 | /* 63145 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23016 | /* 63149 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 23017 | /* 63153 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23018 | /* 63157 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23019 | /* 63161 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23020 | /* 63165 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23021 | /* 63169 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23022 | /* 63172 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23023 | /* 63176 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23024 | /* 63180 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23025 | /* 63185 */ // MIs[0] src1 |
| 23026 | /* 63185 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23027 | /* 63190 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23028 | /* 63192 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23029 | /* 63199 */ // (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) |
| 23030 | /* 63199 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23031 | /* 63203 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23032 | /* 63209 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23033 | /* 63213 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8mCL), |
| 23034 | /* 63216 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23035 | /* 63220 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23036 | /* 63223 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23037 | /* 63229 */ GIR_RootConstrainSelectedInstOperands, |
| 23038 | /* 63230 */ // GIR_Coverage, 717, |
| 23039 | /* 63230 */ GIR_EraseRootFromParent_Done, |
| 23040 | /* 63231 */ // Label 1544: @63231 |
| 23041 | /* 63231 */ GIM_Try, /*On fail goto*//*Label 1545*/ GIMT_Encode4(63319), // Rule ID 335 // |
| 23042 | /* 63236 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23043 | /* 63239 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23044 | /* 63243 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23045 | /* 63247 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 23046 | /* 63251 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23047 | /* 63255 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23048 | /* 63259 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23049 | /* 63263 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23050 | /* 63267 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23051 | /* 63270 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23052 | /* 63274 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23053 | /* 63278 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23054 | /* 63283 */ // MIs[0] src1 |
| 23055 | /* 63283 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23056 | /* 63288 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23057 | /* 63290 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23058 | /* 63297 */ // (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) |
| 23059 | /* 63297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mr), |
| 23060 | /* 63300 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23061 | /* 63304 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 23062 | /* 63308 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23063 | /* 63311 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23064 | /* 63317 */ GIR_RootConstrainSelectedInstOperands, |
| 23065 | /* 63318 */ // GIR_Coverage, 335, |
| 23066 | /* 63318 */ GIR_EraseRootFromParent_Done, |
| 23067 | /* 63319 */ // Label 1545: @63319 |
| 23068 | /* 63319 */ GIM_Try, /*On fail goto*//*Label 1546*/ GIMT_Encode4(63407), // Rule ID 23280 // |
| 23069 | /* 63324 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23070 | /* 63327 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23071 | /* 63331 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23072 | /* 63335 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 23073 | /* 63339 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23074 | /* 63343 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23075 | /* 63347 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23076 | /* 63352 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23077 | /* 63356 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23078 | /* 63360 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23079 | /* 63363 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23080 | /* 63367 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23081 | /* 63371 */ // MIs[0] src1 |
| 23082 | /* 63371 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23083 | /* 63376 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23084 | /* 63378 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23085 | /* 63385 */ // (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) |
| 23086 | /* 63385 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR8mr), |
| 23087 | /* 63388 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23088 | /* 63392 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 23089 | /* 63396 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23090 | /* 63399 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23091 | /* 63405 */ GIR_RootConstrainSelectedInstOperands, |
| 23092 | /* 63406 */ // GIR_Coverage, 23280, |
| 23093 | /* 63406 */ GIR_EraseRootFromParent_Done, |
| 23094 | /* 63407 */ // Label 1546: @63407 |
| 23095 | /* 63407 */ GIM_Try, /*On fail goto*//*Label 1547*/ GIMT_Encode4(63505), // Rule ID 781 // |
| 23096 | /* 63412 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23097 | /* 63415 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23098 | /* 63419 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23099 | /* 63423 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 23100 | /* 63427 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23101 | /* 63431 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23102 | /* 63435 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23103 | /* 63439 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23104 | /* 63443 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23105 | /* 63446 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23106 | /* 63450 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23107 | /* 63454 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23108 | /* 63459 */ // MIs[0] src1 |
| 23109 | /* 63459 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23110 | /* 63464 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23111 | /* 63466 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23112 | /* 63473 */ // (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) |
| 23113 | /* 63473 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23114 | /* 63477 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23115 | /* 63483 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23116 | /* 63487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8mCL), |
| 23117 | /* 63490 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23118 | /* 63494 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23119 | /* 63497 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23120 | /* 63503 */ GIR_RootConstrainSelectedInstOperands, |
| 23121 | /* 63504 */ // GIR_Coverage, 781, |
| 23122 | /* 63504 */ GIR_EraseRootFromParent_Done, |
| 23123 | /* 63505 */ // Label 1547: @63505 |
| 23124 | /* 63505 */ GIM_Try, /*On fail goto*//*Label 1548*/ GIMT_Encode4(63603), // Rule ID 813 // |
| 23125 | /* 63510 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23126 | /* 63513 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23127 | /* 63517 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23128 | /* 63521 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 23129 | /* 63525 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23130 | /* 63529 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23131 | /* 63533 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23132 | /* 63537 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23133 | /* 63541 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23134 | /* 63544 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23135 | /* 63548 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23136 | /* 63552 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23137 | /* 63557 */ // MIs[0] src1 |
| 23138 | /* 63557 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23139 | /* 63562 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23140 | /* 63564 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23141 | /* 63571 */ // (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) |
| 23142 | /* 63571 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23143 | /* 63575 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23144 | /* 63581 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23145 | /* 63585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8mCL), |
| 23146 | /* 63588 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23147 | /* 63592 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23148 | /* 63595 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23149 | /* 63601 */ GIR_RootConstrainSelectedInstOperands, |
| 23150 | /* 63602 */ // GIR_Coverage, 813, |
| 23151 | /* 63602 */ GIR_EraseRootFromParent_Done, |
| 23152 | /* 63603 */ // Label 1548: @63603 |
| 23153 | /* 63603 */ GIM_Try, /*On fail goto*//*Label 1549*/ GIMT_Encode4(63701), // Rule ID 685 // |
| 23154 | /* 63608 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23155 | /* 63611 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23156 | /* 63615 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23157 | /* 63619 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 23158 | /* 63623 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23159 | /* 63627 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23160 | /* 63631 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23161 | /* 63635 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23162 | /* 63639 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23163 | /* 63642 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23164 | /* 63646 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi8), |
| 23165 | /* 63650 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 23166 | /* 63655 */ // MIs[0] src1 |
| 23167 | /* 63655 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23168 | /* 63660 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23169 | /* 63662 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23170 | /* 63669 */ // (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) |
| 23171 | /* 63669 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 23172 | /* 63673 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23173 | /* 63679 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 23174 | /* 63683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8mCL), |
| 23175 | /* 63686 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23176 | /* 63690 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23177 | /* 63693 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23178 | /* 63699 */ GIR_RootConstrainSelectedInstOperands, |
| 23179 | /* 63700 */ // GIR_Coverage, 685, |
| 23180 | /* 63700 */ GIR_EraseRootFromParent_Done, |
| 23181 | /* 63701 */ // Label 1549: @63701 |
| 23182 | /* 63701 */ GIM_Try, /*On fail goto*//*Label 1550*/ GIMT_Encode4(63789), // Rule ID 443 // |
| 23183 | /* 63706 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23184 | /* 63709 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23185 | /* 63713 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23186 | /* 63717 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23187 | /* 63721 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23188 | /* 63725 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23189 | /* 63729 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23190 | /* 63733 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23191 | /* 63737 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23192 | /* 63740 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23193 | /* 63744 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23194 | /* 63748 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23195 | /* 63753 */ // MIs[0] src1 |
| 23196 | /* 63753 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23197 | /* 63758 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23198 | /* 63760 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23199 | /* 63767 */ // (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) |
| 23200 | /* 63767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB8mr), |
| 23201 | /* 63770 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23202 | /* 63774 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 23203 | /* 63778 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23204 | /* 63781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23205 | /* 63787 */ GIR_RootConstrainSelectedInstOperands, |
| 23206 | /* 63788 */ // GIR_Coverage, 443, |
| 23207 | /* 63788 */ GIR_EraseRootFromParent_Done, |
| 23208 | /* 63789 */ // Label 1550: @63789 |
| 23209 | /* 63789 */ GIM_Try, /*On fail goto*//*Label 1551*/ GIMT_Encode4(63877), // Rule ID 371 // |
| 23210 | /* 63794 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23211 | /* 63797 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23212 | /* 63801 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23213 | /* 63805 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23214 | /* 63809 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23215 | /* 63813 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23216 | /* 63817 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23217 | /* 63821 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23218 | /* 63825 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23219 | /* 63828 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23220 | /* 63832 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23221 | /* 63836 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23222 | /* 63841 */ // MIs[0] src1 |
| 23223 | /* 63841 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23224 | /* 63846 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23225 | /* 63848 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23226 | /* 63855 */ // (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) |
| 23227 | /* 63855 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mr), |
| 23228 | /* 63858 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23229 | /* 63862 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 23230 | /* 63866 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23231 | /* 63869 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23232 | /* 63875 */ GIR_RootConstrainSelectedInstOperands, |
| 23233 | /* 63876 */ // GIR_Coverage, 371, |
| 23234 | /* 63876 */ GIR_EraseRootFromParent_Done, |
| 23235 | /* 63877 */ // Label 1551: @63877 |
| 23236 | /* 63877 */ GIM_Try, /*On fail goto*//*Label 1552*/ GIMT_Encode4(63965), // Rule ID 23292 // |
| 23237 | /* 63882 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23238 | /* 63885 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23239 | /* 63889 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23240 | /* 63893 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23241 | /* 63897 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s8, |
| 23242 | /* 63901 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23243 | /* 63905 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23244 | /* 63910 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23245 | /* 63914 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23246 | /* 63918 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23247 | /* 63921 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23248 | /* 63925 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23249 | /* 63929 */ // MIs[0] src1 |
| 23250 | /* 63929 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23251 | /* 63934 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23252 | /* 63936 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23253 | /* 63943 */ // (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) |
| 23254 | /* 63943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR8mr), |
| 23255 | /* 63946 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23256 | /* 63950 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 23257 | /* 63954 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23258 | /* 63957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23259 | /* 63963 */ GIR_RootConstrainSelectedInstOperands, |
| 23260 | /* 63964 */ // GIR_Coverage, 23292, |
| 23261 | /* 63964 */ GIR_EraseRootFromParent_Done, |
| 23262 | /* 63965 */ // Label 1552: @63965 |
| 23263 | /* 63965 */ GIM_Try, /*On fail goto*//*Label 1553*/ GIMT_Encode4(64019), // Rule ID 24 // |
| 23264 | /* 63970 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23265 | /* 63973 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23266 | /* 63977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23267 | /* 63981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23268 | /* 63985 */ // MIs[1] Operand 1 |
| 23269 | /* 63985 */ // No operand predicates |
| 23270 | /* 63985 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23271 | /* 63989 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 23272 | /* 63993 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23273 | /* 63995 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23274 | /* 64002 */ // (st (imm:{ *:[i8] })<<P:Predicate_imm_su>>:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV8mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 23275 | /* 64002 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8mi), |
| 23276 | /* 64005 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23277 | /* 64009 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 23278 | /* 64012 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 23279 | /* 64017 */ GIR_RootConstrainSelectedInstOperands, |
| 23280 | /* 64018 */ // GIR_Coverage, 24, |
| 23281 | /* 64018 */ GIR_EraseRootFromParent_Done, |
| 23282 | /* 64019 */ // Label 1553: @64019 |
| 23283 | /* 64019 */ GIM_Try, /*On fail goto*//*Label 1554*/ GIMT_Encode4(64072), // Rule ID 22568 // |
| 23284 | /* 64024 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23285 | /* 64027 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23286 | /* 64034 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23287 | /* 64038 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23288 | /* 64042 */ // MIs[1] Operand 1 |
| 23289 | /* 64042 */ // No operand predicates |
| 23290 | /* 64042 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 23291 | /* 64046 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23292 | /* 64048 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23293 | /* 64055 */ // (atomic_store (imm:{ *:[i8] }):$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (MOV8mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i8] }):$src) |
| 23294 | /* 64055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8mi), |
| 23295 | /* 64058 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23296 | /* 64062 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 23297 | /* 64065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 23298 | /* 64070 */ GIR_RootConstrainSelectedInstOperands, |
| 23299 | /* 64071 */ // GIR_Coverage, 22568, |
| 23300 | /* 64071 */ GIR_EraseRootFromParent_Done, |
| 23301 | /* 64072 */ // Label 1554: @64072 |
| 23302 | /* 64072 */ GIM_Try, /*On fail goto*//*Label 1555*/ GIMT_Encode4(64117), // Rule ID 22572 // |
| 23303 | /* 64077 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23304 | /* 64080 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 23305 | /* 64087 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23306 | /* 64091 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 23307 | /* 64095 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23308 | /* 64102 */ // (atomic_store GR8:{ *:[i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_8>> => (MOV8mr addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23309 | /* 64102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8mr), |
| 23310 | /* 64105 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23311 | /* 64109 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 23312 | /* 64111 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 23313 | /* 64115 */ GIR_RootConstrainSelectedInstOperands, |
| 23314 | /* 64116 */ // GIR_Coverage, 22572, |
| 23315 | /* 64116 */ GIR_EraseRootFromParent_Done, |
| 23316 | /* 64117 */ // Label 1555: @64117 |
| 23317 | /* 64117 */ GIM_Try, /*On fail goto*//*Label 1556*/ GIMT_Encode4(64159), // Rule ID 32 // |
| 23318 | /* 64122 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23319 | /* 64125 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23320 | /* 64129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 23321 | /* 64133 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 23322 | /* 64137 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23323 | /* 64144 */ // (st GR8:{ *:[i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV8mr addr:{ *:[iPTR] }:$dst, GR8:{ *:[i8] }:$src) |
| 23324 | /* 64144 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8mr), |
| 23325 | /* 64147 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23326 | /* 64151 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 23327 | /* 64153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 23328 | /* 64157 */ GIR_RootConstrainSelectedInstOperands, |
| 23329 | /* 64158 */ // GIR_Coverage, 32, |
| 23330 | /* 64158 */ GIR_EraseRootFromParent_Done, |
| 23331 | /* 64159 */ // Label 1556: @64159 |
| 23332 | /* 64159 */ GIM_Reject, |
| 23333 | /* 64160 */ // Label 1483: @64160 |
| 23334 | /* 64160 */ GIM_Try, /*On fail goto*//*Label 1557*/ GIMT_Encode4(64256), // Rule ID 22553 // |
| 23335 | /* 64165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 23336 | /* 64168 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23337 | /* 64171 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23338 | /* 64178 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23339 | /* 64182 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23340 | /* 64186 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23341 | /* 64190 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23342 | /* 64194 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23343 | /* 64198 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23344 | /* 64202 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23345 | /* 64205 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23346 | /* 64209 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23347 | /* 64216 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23348 | /* 64220 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 23349 | /* 64224 */ // MIs[0] dst |
| 23350 | /* 64224 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23351 | /* 64229 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23352 | /* 64231 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23353 | /* 64238 */ // (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) |
| 23354 | /* 64238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC16m), |
| 23355 | /* 64241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23356 | /* 64245 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23357 | /* 64248 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23358 | /* 64254 */ GIR_RootConstrainSelectedInstOperands, |
| 23359 | /* 64255 */ // GIR_Coverage, 22553, |
| 23360 | /* 64255 */ GIR_EraseRootFromParent_Done, |
| 23361 | /* 64256 */ // Label 1557: @64256 |
| 23362 | /* 64256 */ GIM_Try, /*On fail goto*//*Label 1558*/ GIMT_Encode4(64352), // Rule ID 22557 // |
| 23363 | /* 64261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 23364 | /* 64264 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23365 | /* 64267 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23366 | /* 64274 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23367 | /* 64278 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23368 | /* 64282 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23369 | /* 64286 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23370 | /* 64290 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23371 | /* 64294 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23372 | /* 64298 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23373 | /* 64301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23374 | /* 64305 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23375 | /* 64312 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23376 | /* 64316 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 23377 | /* 64320 */ // MIs[0] dst |
| 23378 | /* 64320 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23379 | /* 64325 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23380 | /* 64327 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23381 | /* 64334 */ // (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) |
| 23382 | /* 64334 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC16m), |
| 23383 | /* 64337 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23384 | /* 64341 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23385 | /* 64344 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23386 | /* 64350 */ GIR_RootConstrainSelectedInstOperands, |
| 23387 | /* 64351 */ // GIR_Coverage, 22557, |
| 23388 | /* 64351 */ GIR_EraseRootFromParent_Done, |
| 23389 | /* 64352 */ // Label 1558: @64352 |
| 23390 | /* 64352 */ GIM_Try, /*On fail goto*//*Label 1559*/ GIMT_Encode4(64445), // Rule ID 22561 // |
| 23391 | /* 64357 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23392 | /* 64360 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23393 | /* 64367 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23394 | /* 64371 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23395 | /* 64375 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23396 | /* 64379 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23397 | /* 64383 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 23398 | /* 64387 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23399 | /* 64391 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23400 | /* 64395 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23401 | /* 64398 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23402 | /* 64402 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23403 | /* 64409 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23404 | /* 64413 */ // MIs[0] dst |
| 23405 | /* 64413 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23406 | /* 64418 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23407 | /* 64420 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23408 | /* 64427 */ // (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) |
| 23409 | /* 64427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16m), |
| 23410 | /* 64430 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23411 | /* 64434 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23412 | /* 64437 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23413 | /* 64443 */ GIR_RootConstrainSelectedInstOperands, |
| 23414 | /* 64444 */ // GIR_Coverage, 22561, |
| 23415 | /* 64444 */ GIR_EraseRootFromParent_Done, |
| 23416 | /* 64445 */ // Label 1559: @64445 |
| 23417 | /* 64445 */ GIM_Try, /*On fail goto*//*Label 1560*/ GIMT_Encode4(64535), // Rule ID 22565 // |
| 23418 | /* 64450 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23419 | /* 64453 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23420 | /* 64460 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23421 | /* 64464 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23422 | /* 64468 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23423 | /* 64472 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23424 | /* 64476 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23425 | /* 64480 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23426 | /* 64484 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23427 | /* 64487 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23428 | /* 64491 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23429 | /* 64498 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23430 | /* 64502 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 23431 | /* 64506 */ // MIs[0] dst |
| 23432 | /* 64506 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23433 | /* 64511 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23434 | /* 64513 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23435 | /* 64520 */ // (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) |
| 23436 | /* 64520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16m), |
| 23437 | /* 64523 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23438 | /* 64527 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23439 | /* 64533 */ GIR_RootConstrainSelectedInstOperands, |
| 23440 | /* 64534 */ // GIR_Coverage, 22565, |
| 23441 | /* 64534 */ GIR_EraseRootFromParent_Done, |
| 23442 | /* 64535 */ // Label 1560: @64535 |
| 23443 | /* 64535 */ GIM_Try, /*On fail goto*//*Label 1561*/ GIMT_Encode4(64621), // Rule ID 224 // |
| 23444 | /* 64540 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 23445 | /* 64543 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23446 | /* 64546 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23447 | /* 64550 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23448 | /* 64554 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23449 | /* 64558 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23450 | /* 64562 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23451 | /* 64566 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23452 | /* 64570 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23453 | /* 64574 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23454 | /* 64577 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23455 | /* 64581 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23456 | /* 64585 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 23457 | /* 64589 */ // MIs[0] src1 |
| 23458 | /* 64589 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23459 | /* 64594 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23460 | /* 64596 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23461 | /* 64603 */ // (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) |
| 23462 | /* 64603 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC16m), |
| 23463 | /* 64606 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23464 | /* 64610 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23465 | /* 64613 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23466 | /* 64619 */ GIR_RootConstrainSelectedInstOperands, |
| 23467 | /* 64620 */ // GIR_Coverage, 224, |
| 23468 | /* 64620 */ GIR_EraseRootFromParent_Done, |
| 23469 | /* 64621 */ // Label 1561: @64621 |
| 23470 | /* 64621 */ GIM_Try, /*On fail goto*//*Label 1562*/ GIMT_Encode4(64707), // Rule ID 227 // |
| 23471 | /* 64626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 23472 | /* 64629 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23473 | /* 64632 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23474 | /* 64636 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23475 | /* 64640 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23476 | /* 64644 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23477 | /* 64648 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23478 | /* 64652 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23479 | /* 64656 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23480 | /* 64660 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23481 | /* 64663 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23482 | /* 64667 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23483 | /* 64671 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 23484 | /* 64675 */ // MIs[0] src1 |
| 23485 | /* 64675 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23486 | /* 64680 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23487 | /* 64682 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23488 | /* 64689 */ // (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) |
| 23489 | /* 64689 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC16m), |
| 23490 | /* 64692 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23491 | /* 64696 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23492 | /* 64699 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23493 | /* 64705 */ GIR_RootConstrainSelectedInstOperands, |
| 23494 | /* 64706 */ // GIR_Coverage, 227, |
| 23495 | /* 64706 */ GIR_EraseRootFromParent_Done, |
| 23496 | /* 64707 */ // Label 1562: @64707 |
| 23497 | /* 64707 */ GIM_Try, /*On fail goto*//*Label 1563*/ GIMT_Encode4(64800), // Rule ID 22696 // |
| 23498 | /* 64712 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23499 | /* 64715 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23500 | /* 64719 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23501 | /* 64723 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23502 | /* 64727 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23503 | /* 64731 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23504 | /* 64735 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23505 | /* 64739 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23506 | /* 64743 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23507 | /* 64746 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23508 | /* 64750 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23509 | /* 64754 */ GIM_CheckConstantInt, /*MI*/1, /*Op*/2, GIMT_Encode8(128), |
| 23510 | /* 64765 */ // MIs[0] dst |
| 23511 | /* 64765 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23512 | /* 64770 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23513 | /* 64772 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23514 | /* 64779 */ // (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] }) |
| 23515 | /* 64779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mi), |
| 23516 | /* 64782 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23517 | /* 64786 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 23518 | /* 64789 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23519 | /* 64792 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23520 | /* 64798 */ GIR_RootConstrainSelectedInstOperands, |
| 23521 | /* 64799 */ // GIR_Coverage, 22696, |
| 23522 | /* 64799 */ GIR_EraseRootFromParent_Done, |
| 23523 | /* 64800 */ // Label 1563: @64800 |
| 23524 | /* 64800 */ GIM_Try, /*On fail goto*//*Label 1564*/ GIMT_Encode4(64883), // Rule ID 17603 // |
| 23525 | /* 64805 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23526 | /* 64808 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23527 | /* 64812 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23528 | /* 64816 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 23529 | /* 64820 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23530 | /* 64824 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23531 | /* 64828 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23532 | /* 64832 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23533 | /* 64836 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23534 | /* 64839 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23535 | /* 64843 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23536 | /* 64847 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 15, |
| 23537 | /* 64851 */ // MIs[0] dst |
| 23538 | /* 64851 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23539 | /* 64856 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23540 | /* 64858 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23541 | /* 64865 */ // (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) |
| 23542 | /* 64865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16m1), |
| 23543 | /* 64868 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23544 | /* 64872 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23545 | /* 64875 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23546 | /* 64881 */ GIR_RootConstrainSelectedInstOperands, |
| 23547 | /* 64882 */ // GIR_Coverage, 17603, |
| 23548 | /* 64882 */ GIR_EraseRootFromParent_Done, |
| 23549 | /* 64883 */ // Label 1564: @64883 |
| 23550 | /* 64883 */ GIM_Try, /*On fail goto*//*Label 1565*/ GIMT_Encode4(64966), // Rule ID 17607 // |
| 23551 | /* 64888 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23552 | /* 64891 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23553 | /* 64895 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23554 | /* 64899 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 23555 | /* 64903 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23556 | /* 64907 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23557 | /* 64911 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23558 | /* 64915 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23559 | /* 64919 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23560 | /* 64922 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23561 | /* 64926 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23562 | /* 64930 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 15, |
| 23563 | /* 64934 */ // MIs[0] dst |
| 23564 | /* 64934 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23565 | /* 64939 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23566 | /* 64941 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23567 | /* 64948 */ // (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) |
| 23568 | /* 64948 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16m1), |
| 23569 | /* 64951 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23570 | /* 64955 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23571 | /* 64958 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23572 | /* 64964 */ GIR_RootConstrainSelectedInstOperands, |
| 23573 | /* 64965 */ // GIR_Coverage, 17607, |
| 23574 | /* 64965 */ GIR_EraseRootFromParent_Done, |
| 23575 | /* 64966 */ // Label 1565: @64966 |
| 23576 | /* 64966 */ GIM_Try, /*On fail goto*//*Label 1566*/ GIMT_Encode4(65049), // Rule ID 260 // |
| 23577 | /* 64971 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23578 | /* 64974 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23579 | /* 64978 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23580 | /* 64982 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23581 | /* 64986 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23582 | /* 64990 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23583 | /* 64994 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 23584 | /* 64998 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 23585 | /* 65002 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23586 | /* 65006 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23587 | /* 65009 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23588 | /* 65013 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23589 | /* 65017 */ // MIs[0] src1 |
| 23590 | /* 65017 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23591 | /* 65022 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23592 | /* 65024 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23593 | /* 65031 */ // (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) |
| 23594 | /* 65031 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG16m), |
| 23595 | /* 65034 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23596 | /* 65038 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23597 | /* 65041 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23598 | /* 65047 */ GIR_RootConstrainSelectedInstOperands, |
| 23599 | /* 65048 */ // GIR_Coverage, 260, |
| 23600 | /* 65048 */ GIR_EraseRootFromParent_Done, |
| 23601 | /* 65049 */ // Label 1566: @65049 |
| 23602 | /* 65049 */ GIM_Try, /*On fail goto*//*Label 1567*/ GIMT_Encode4(65129), // Rule ID 268 // |
| 23603 | /* 65054 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23604 | /* 65057 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23605 | /* 65061 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23606 | /* 65065 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23607 | /* 65069 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23608 | /* 65073 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23609 | /* 65077 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23610 | /* 65081 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23611 | /* 65085 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23612 | /* 65088 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23613 | /* 65092 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23614 | /* 65096 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 23615 | /* 65100 */ // MIs[0] src1 |
| 23616 | /* 65100 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23617 | /* 65105 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 23618 | /* 65107 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23619 | /* 65114 */ // (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) |
| 23620 | /* 65114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT16m), |
| 23621 | /* 65117 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23622 | /* 65121 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 23623 | /* 65127 */ GIR_RootConstrainSelectedInstOperands, |
| 23624 | /* 65128 */ // GIR_Coverage, 268, |
| 23625 | /* 65128 */ GIR_EraseRootFromParent_Done, |
| 23626 | /* 65129 */ // Label 1567: @65129 |
| 23627 | /* 65129 */ GIM_Try, /*On fail goto*//*Label 1568*/ GIMT_Encode4(65224), // Rule ID 412 // |
| 23628 | /* 65134 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23629 | /* 65137 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23630 | /* 65141 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23631 | /* 65145 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23632 | /* 65149 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23633 | /* 65153 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23634 | /* 65157 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23635 | /* 65161 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23636 | /* 65165 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23637 | /* 65168 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23638 | /* 65172 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23639 | /* 65176 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23640 | /* 65180 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23641 | /* 65184 */ // MIs[3] Operand 1 |
| 23642 | /* 65184 */ // No operand predicates |
| 23643 | /* 65184 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23644 | /* 65188 */ // MIs[0] src1 |
| 23645 | /* 65188 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23646 | /* 65193 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23647 | /* 65195 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23648 | /* 65202 */ // (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) |
| 23649 | /* 65202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mi), |
| 23650 | /* 65205 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23651 | /* 65209 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 23652 | /* 65212 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23653 | /* 65215 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23654 | /* 65222 */ GIR_RootConstrainSelectedInstOperands, |
| 23655 | /* 65223 */ // GIR_Coverage, 412, |
| 23656 | /* 65223 */ GIR_EraseRootFromParent_Done, |
| 23657 | /* 65224 */ // Label 1568: @65224 |
| 23658 | /* 65224 */ GIM_Try, /*On fail goto*//*Label 1569*/ GIMT_Encode4(65319), // Rule ID 304 // |
| 23659 | /* 65229 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23660 | /* 65232 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23661 | /* 65236 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23662 | /* 65240 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 23663 | /* 65244 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23664 | /* 65248 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23665 | /* 65252 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23666 | /* 65256 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23667 | /* 65260 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23668 | /* 65263 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23669 | /* 65267 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23670 | /* 65271 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23671 | /* 65275 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23672 | /* 65279 */ // MIs[3] Operand 1 |
| 23673 | /* 65279 */ // No operand predicates |
| 23674 | /* 65279 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23675 | /* 65283 */ // MIs[0] src1 |
| 23676 | /* 65283 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23677 | /* 65288 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23678 | /* 65290 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23679 | /* 65297 */ // (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) |
| 23680 | /* 65297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mi), |
| 23681 | /* 65300 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23682 | /* 65304 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 23683 | /* 65307 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23684 | /* 65310 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23685 | /* 65317 */ GIR_RootConstrainSelectedInstOperands, |
| 23686 | /* 65318 */ // GIR_Coverage, 304, |
| 23687 | /* 65318 */ GIR_EraseRootFromParent_Done, |
| 23688 | /* 65319 */ // Label 1569: @65319 |
| 23689 | /* 65319 */ GIM_Try, /*On fail goto*//*Label 1570*/ GIMT_Encode4(65414), // Rule ID 340 // |
| 23690 | /* 65324 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23691 | /* 65327 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23692 | /* 65331 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23693 | /* 65335 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 23694 | /* 65339 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23695 | /* 65343 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23696 | /* 65347 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23697 | /* 65351 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23698 | /* 65355 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23699 | /* 65358 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23700 | /* 65362 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23701 | /* 65366 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23702 | /* 65370 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23703 | /* 65374 */ // MIs[3] Operand 1 |
| 23704 | /* 65374 */ // No operand predicates |
| 23705 | /* 65374 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23706 | /* 65378 */ // MIs[0] src1 |
| 23707 | /* 65378 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23708 | /* 65383 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23709 | /* 65385 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23710 | /* 65392 */ // (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) |
| 23711 | /* 65392 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mi), |
| 23712 | /* 65395 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23713 | /* 65399 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 23714 | /* 65402 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23715 | /* 65405 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23716 | /* 65412 */ GIR_RootConstrainSelectedInstOperands, |
| 23717 | /* 65413 */ // GIR_Coverage, 340, |
| 23718 | /* 65413 */ GIR_EraseRootFromParent_Done, |
| 23719 | /* 65414 */ // Label 1570: @65414 |
| 23720 | /* 65414 */ GIM_Try, /*On fail goto*//*Label 1571*/ GIMT_Encode4(65509), // Rule ID 452 // |
| 23721 | /* 65419 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23722 | /* 65422 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23723 | /* 65426 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23724 | /* 65430 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23725 | /* 65434 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23726 | /* 65438 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23727 | /* 65442 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23728 | /* 65446 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23729 | /* 65450 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23730 | /* 65453 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23731 | /* 65457 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23732 | /* 65461 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23733 | /* 65465 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23734 | /* 65469 */ // MIs[3] Operand 1 |
| 23735 | /* 65469 */ // No operand predicates |
| 23736 | /* 65469 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23737 | /* 65473 */ // MIs[0] src1 |
| 23738 | /* 65473 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23739 | /* 65478 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23740 | /* 65480 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23741 | /* 65487 */ // (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) |
| 23742 | /* 65487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mi), |
| 23743 | /* 65490 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23744 | /* 65494 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 23745 | /* 65497 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23746 | /* 65500 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23747 | /* 65507 */ GIR_RootConstrainSelectedInstOperands, |
| 23748 | /* 65508 */ // GIR_Coverage, 452, |
| 23749 | /* 65508 */ GIR_EraseRootFromParent_Done, |
| 23750 | /* 65509 */ // Label 1571: @65509 |
| 23751 | /* 65509 */ GIM_Try, /*On fail goto*//*Label 1572*/ GIMT_Encode4(65604), // Rule ID 376 // |
| 23752 | /* 65514 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23753 | /* 65517 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23754 | /* 65521 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23755 | /* 65525 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23756 | /* 65529 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23757 | /* 65533 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23758 | /* 65537 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23759 | /* 65541 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23760 | /* 65545 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23761 | /* 65548 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23762 | /* 65552 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23763 | /* 65556 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23764 | /* 65560 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23765 | /* 65564 */ // MIs[3] Operand 1 |
| 23766 | /* 65564 */ // No operand predicates |
| 23767 | /* 65564 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 23768 | /* 65568 */ // MIs[0] src1 |
| 23769 | /* 65568 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23770 | /* 65573 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23771 | /* 65575 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23772 | /* 65582 */ // (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) |
| 23773 | /* 65582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mi), |
| 23774 | /* 65585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23775 | /* 65589 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 23776 | /* 65592 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23777 | /* 65595 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23778 | /* 65602 */ GIR_RootConstrainSelectedInstOperands, |
| 23779 | /* 65603 */ // GIR_Coverage, 376, |
| 23780 | /* 65603 */ GIR_EraseRootFromParent_Done, |
| 23781 | /* 65604 */ // Label 1572: @65604 |
| 23782 | /* 65604 */ GIM_Try, /*On fail goto*//*Label 1573*/ GIMT_Encode4(65705), // Rule ID 22489 // |
| 23783 | /* 65609 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23784 | /* 65612 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23785 | /* 65619 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23786 | /* 65623 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 23787 | /* 65627 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23788 | /* 65631 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23789 | /* 65635 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23790 | /* 65639 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23791 | /* 65643 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23792 | /* 65646 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23793 | /* 65650 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23794 | /* 65657 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23795 | /* 65661 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23796 | /* 65665 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23797 | /* 65669 */ // MIs[3] Operand 1 |
| 23798 | /* 65669 */ // No operand predicates |
| 23799 | /* 65669 */ // MIs[0] dst |
| 23800 | /* 65669 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23801 | /* 65674 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23802 | /* 65676 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23803 | /* 65683 */ // (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) |
| 23804 | /* 65683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mi), |
| 23805 | /* 65686 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23806 | /* 65690 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 23807 | /* 65693 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23808 | /* 65696 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23809 | /* 65703 */ GIR_RootConstrainSelectedInstOperands, |
| 23810 | /* 65704 */ // GIR_Coverage, 22489, |
| 23811 | /* 65704 */ GIR_EraseRootFromParent_Done, |
| 23812 | /* 65705 */ // Label 1573: @65705 |
| 23813 | /* 65705 */ GIM_Try, /*On fail goto*//*Label 1574*/ GIMT_Encode4(65806), // Rule ID 22497 // |
| 23814 | /* 65710 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23815 | /* 65713 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23816 | /* 65720 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23817 | /* 65724 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 23818 | /* 65728 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23819 | /* 65732 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23820 | /* 65736 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23821 | /* 65740 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23822 | /* 65744 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23823 | /* 65747 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23824 | /* 65751 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23825 | /* 65758 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23826 | /* 65762 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23827 | /* 65766 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23828 | /* 65770 */ // MIs[3] Operand 1 |
| 23829 | /* 65770 */ // No operand predicates |
| 23830 | /* 65770 */ // MIs[0] dst |
| 23831 | /* 65770 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23832 | /* 65775 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23833 | /* 65777 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23834 | /* 65784 */ // (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) |
| 23835 | /* 65784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mi), |
| 23836 | /* 65787 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23837 | /* 65791 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 23838 | /* 65794 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23839 | /* 65797 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23840 | /* 65804 */ GIR_RootConstrainSelectedInstOperands, |
| 23841 | /* 65805 */ // GIR_Coverage, 22497, |
| 23842 | /* 65805 */ GIR_EraseRootFromParent_Done, |
| 23843 | /* 65806 */ // Label 1574: @65806 |
| 23844 | /* 65806 */ GIM_Try, /*On fail goto*//*Label 1575*/ GIMT_Encode4(65907), // Rule ID 22505 // |
| 23845 | /* 65811 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23846 | /* 65814 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23847 | /* 65821 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23848 | /* 65825 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 23849 | /* 65829 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23850 | /* 65833 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23851 | /* 65837 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23852 | /* 65841 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23853 | /* 65845 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23854 | /* 65848 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23855 | /* 65852 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23856 | /* 65859 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23857 | /* 65863 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23858 | /* 65867 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23859 | /* 65871 */ // MIs[3] Operand 1 |
| 23860 | /* 65871 */ // No operand predicates |
| 23861 | /* 65871 */ // MIs[0] dst |
| 23862 | /* 65871 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23863 | /* 65876 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23864 | /* 65878 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23865 | /* 65885 */ // (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) |
| 23866 | /* 65885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mi), |
| 23867 | /* 65888 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23868 | /* 65892 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 23869 | /* 65895 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23870 | /* 65898 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23871 | /* 65905 */ GIR_RootConstrainSelectedInstOperands, |
| 23872 | /* 65906 */ // GIR_Coverage, 22505, |
| 23873 | /* 65906 */ GIR_EraseRootFromParent_Done, |
| 23874 | /* 65907 */ // Label 1575: @65907 |
| 23875 | /* 65907 */ GIM_Try, /*On fail goto*//*Label 1576*/ GIMT_Encode4(66008), // Rule ID 22521 // |
| 23876 | /* 65912 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23877 | /* 65915 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23878 | /* 65922 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23879 | /* 65926 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 23880 | /* 65930 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23881 | /* 65934 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23882 | /* 65938 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23883 | /* 65942 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23884 | /* 65946 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23885 | /* 65949 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23886 | /* 65953 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23887 | /* 65960 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23888 | /* 65964 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23889 | /* 65968 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23890 | /* 65972 */ // MIs[3] Operand 1 |
| 23891 | /* 65972 */ // No operand predicates |
| 23892 | /* 65972 */ // MIs[0] dst |
| 23893 | /* 65972 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23894 | /* 65977 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23895 | /* 65979 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23896 | /* 65986 */ // (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) |
| 23897 | /* 65986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mi), |
| 23898 | /* 65989 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23899 | /* 65993 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 23900 | /* 65996 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23901 | /* 65999 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23902 | /* 66006 */ GIR_RootConstrainSelectedInstOperands, |
| 23903 | /* 66007 */ // GIR_Coverage, 22521, |
| 23904 | /* 66007 */ GIR_EraseRootFromParent_Done, |
| 23905 | /* 66008 */ // Label 1576: @66008 |
| 23906 | /* 66008 */ GIM_Try, /*On fail goto*//*Label 1577*/ GIMT_Encode4(66109), // Rule ID 22513 // |
| 23907 | /* 66013 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23908 | /* 66016 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23909 | /* 66023 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23910 | /* 66027 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 23911 | /* 66031 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23912 | /* 66035 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 23913 | /* 66039 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23914 | /* 66043 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23915 | /* 66047 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 23916 | /* 66050 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 23917 | /* 66054 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 23918 | /* 66061 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23919 | /* 66065 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23920 | /* 66069 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23921 | /* 66073 */ // MIs[3] Operand 1 |
| 23922 | /* 66073 */ // No operand predicates |
| 23923 | /* 66073 */ // MIs[0] dst |
| 23924 | /* 66073 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23925 | /* 66078 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23926 | /* 66080 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23927 | /* 66087 */ // (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) |
| 23928 | /* 66087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mi), |
| 23929 | /* 66090 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 23930 | /* 66094 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 23931 | /* 66097 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23932 | /* 66100 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23933 | /* 66107 */ GIR_RootConstrainSelectedInstOperands, |
| 23934 | /* 66108 */ // GIR_Coverage, 22513, |
| 23935 | /* 66108 */ GIR_EraseRootFromParent_Done, |
| 23936 | /* 66109 */ // Label 1577: @66109 |
| 23937 | /* 66109 */ GIM_Try, /*On fail goto*//*Label 1578*/ GIMT_Encode4(66200), // Rule ID 734 // |
| 23938 | /* 66114 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23939 | /* 66117 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23940 | /* 66121 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23941 | /* 66125 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 23942 | /* 66129 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23943 | /* 66133 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23944 | /* 66137 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23945 | /* 66141 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23946 | /* 66145 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23947 | /* 66148 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23948 | /* 66152 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23949 | /* 66156 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23950 | /* 66160 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23951 | /* 66164 */ // MIs[3] Operand 1 |
| 23952 | /* 66164 */ // No operand predicates |
| 23953 | /* 66164 */ // MIs[0] src1 |
| 23954 | /* 66164 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23955 | /* 66169 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23956 | /* 66171 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23957 | /* 66178 */ // (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) |
| 23958 | /* 66178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16mi), |
| 23959 | /* 66181 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23960 | /* 66185 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 23961 | /* 66188 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23962 | /* 66191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23963 | /* 66198 */ GIR_RootConstrainSelectedInstOperands, |
| 23964 | /* 66199 */ // GIR_Coverage, 734, |
| 23965 | /* 66199 */ GIR_EraseRootFromParent_Done, |
| 23966 | /* 66200 */ // Label 1578: @66200 |
| 23967 | /* 66200 */ GIM_Try, /*On fail goto*//*Label 1579*/ GIMT_Encode4(66291), // Rule ID 702 // |
| 23968 | /* 66205 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23969 | /* 66208 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 23970 | /* 66212 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 23971 | /* 66216 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 23972 | /* 66220 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 23973 | /* 66224 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 23974 | /* 66228 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 23975 | /* 66232 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 23976 | /* 66236 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23977 | /* 66239 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 23978 | /* 66243 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 23979 | /* 66247 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 23980 | /* 66251 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 23981 | /* 66255 */ // MIs[3] Operand 1 |
| 23982 | /* 66255 */ // No operand predicates |
| 23983 | /* 66255 */ // MIs[0] src1 |
| 23984 | /* 66255 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 23985 | /* 66260 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 23986 | /* 66262 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 23987 | /* 66269 */ // (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) |
| 23988 | /* 66269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16mi), |
| 23989 | /* 66272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 23990 | /* 66276 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 23991 | /* 66279 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 23992 | /* 66282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 23993 | /* 66289 */ GIR_RootConstrainSelectedInstOperands, |
| 23994 | /* 66290 */ // GIR_Coverage, 702, |
| 23995 | /* 66290 */ GIR_EraseRootFromParent_Done, |
| 23996 | /* 66291 */ // Label 1579: @66291 |
| 23997 | /* 66291 */ GIM_Try, /*On fail goto*//*Label 1580*/ GIMT_Encode4(66382), // Rule ID 766 // |
| 23998 | /* 66296 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 23999 | /* 66299 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24000 | /* 66303 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24001 | /* 66307 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 24002 | /* 66311 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24003 | /* 66315 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24004 | /* 66319 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24005 | /* 66323 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24006 | /* 66327 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24007 | /* 66330 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24008 | /* 66334 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24009 | /* 66338 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24010 | /* 66342 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24011 | /* 66346 */ // MIs[3] Operand 1 |
| 24012 | /* 66346 */ // No operand predicates |
| 24013 | /* 66346 */ // MIs[0] src1 |
| 24014 | /* 66346 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24015 | /* 66351 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24016 | /* 66353 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24017 | /* 66360 */ // (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) |
| 24018 | /* 66360 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16mi), |
| 24019 | /* 66363 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24020 | /* 66367 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24021 | /* 66370 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24022 | /* 66373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24023 | /* 66380 */ GIR_RootConstrainSelectedInstOperands, |
| 24024 | /* 66381 */ // GIR_Coverage, 766, |
| 24025 | /* 66381 */ GIR_EraseRootFromParent_Done, |
| 24026 | /* 66382 */ // Label 1580: @66382 |
| 24027 | /* 66382 */ GIM_Try, /*On fail goto*//*Label 1581*/ GIMT_Encode4(66473), // Rule ID 798 // |
| 24028 | /* 66387 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24029 | /* 66390 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24030 | /* 66394 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24031 | /* 66398 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 24032 | /* 66402 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24033 | /* 66406 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24034 | /* 66410 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24035 | /* 66414 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24036 | /* 66418 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24037 | /* 66421 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24038 | /* 66425 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24039 | /* 66429 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24040 | /* 66433 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24041 | /* 66437 */ // MIs[3] Operand 1 |
| 24042 | /* 66437 */ // No operand predicates |
| 24043 | /* 66437 */ // MIs[0] src1 |
| 24044 | /* 66437 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24045 | /* 66442 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24046 | /* 66444 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24047 | /* 66451 */ // (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) |
| 24048 | /* 66451 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16mi), |
| 24049 | /* 66454 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24050 | /* 66458 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24051 | /* 66461 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24052 | /* 66464 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24053 | /* 66471 */ GIR_RootConstrainSelectedInstOperands, |
| 24054 | /* 66472 */ // GIR_Coverage, 798, |
| 24055 | /* 66472 */ GIR_EraseRootFromParent_Done, |
| 24056 | /* 66473 */ // Label 1581: @66473 |
| 24057 | /* 66473 */ GIM_Try, /*On fail goto*//*Label 1582*/ GIMT_Encode4(66564), // Rule ID 670 // |
| 24058 | /* 66478 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24059 | /* 66481 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24060 | /* 66485 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24061 | /* 66489 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 24062 | /* 66493 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24063 | /* 66497 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24064 | /* 66501 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24065 | /* 66505 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24066 | /* 66509 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24067 | /* 66512 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24068 | /* 66516 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24069 | /* 66520 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 24070 | /* 66524 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24071 | /* 66528 */ // MIs[3] Operand 1 |
| 24072 | /* 66528 */ // No operand predicates |
| 24073 | /* 66528 */ // MIs[0] src1 |
| 24074 | /* 66528 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24075 | /* 66533 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 24076 | /* 66535 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24077 | /* 66542 */ // (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) |
| 24078 | /* 66542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16mi), |
| 24079 | /* 66545 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24080 | /* 66549 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 24081 | /* 66552 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24082 | /* 66555 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 24083 | /* 66562 */ GIR_RootConstrainSelectedInstOperands, |
| 24084 | /* 66563 */ // GIR_Coverage, 670, |
| 24085 | /* 66563 */ GIR_EraseRootFromParent_Done, |
| 24086 | /* 66564 */ // Label 1582: @66564 |
| 24087 | /* 66564 */ GIM_Try, /*On fail goto*//*Label 1583*/ GIMT_Encode4(66662), // Rule ID 22493 // |
| 24088 | /* 66569 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24089 | /* 66572 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24090 | /* 66579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24091 | /* 66583 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24092 | /* 66587 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24093 | /* 66591 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24094 | /* 66595 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24095 | /* 66599 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24096 | /* 66603 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24097 | /* 66606 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24098 | /* 66610 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24099 | /* 66617 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24100 | /* 66621 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24101 | /* 66626 */ // MIs[0] dst |
| 24102 | /* 66626 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24103 | /* 66631 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24104 | /* 66633 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24105 | /* 66640 */ // (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) |
| 24106 | /* 66640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mr), |
| 24107 | /* 66643 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24108 | /* 66647 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24109 | /* 66651 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24110 | /* 66654 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24111 | /* 66660 */ GIR_RootConstrainSelectedInstOperands, |
| 24112 | /* 66661 */ // GIR_Coverage, 22493, |
| 24113 | /* 66661 */ GIR_EraseRootFromParent_Done, |
| 24114 | /* 66662 */ // Label 1583: @66662 |
| 24115 | /* 66662 */ GIM_Try, /*On fail goto*//*Label 1584*/ GIMT_Encode4(66760), // Rule ID 26085 // |
| 24116 | /* 66667 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24117 | /* 66670 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24118 | /* 66677 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24119 | /* 66681 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24120 | /* 66685 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24121 | /* 66689 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24122 | /* 66693 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24123 | /* 66698 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24124 | /* 66702 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24125 | /* 66706 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24126 | /* 66709 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24127 | /* 66713 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24128 | /* 66720 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24129 | /* 66724 */ // MIs[0] dst |
| 24130 | /* 66724 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24131 | /* 66729 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24132 | /* 66731 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24133 | /* 66738 */ // (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) |
| 24134 | /* 66738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mr), |
| 24135 | /* 66741 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24136 | /* 66745 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 24137 | /* 66749 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24138 | /* 66752 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24139 | /* 66758 */ GIR_RootConstrainSelectedInstOperands, |
| 24140 | /* 66759 */ // GIR_Coverage, 26085, |
| 24141 | /* 66759 */ GIR_EraseRootFromParent_Done, |
| 24142 | /* 66760 */ // Label 1584: @66760 |
| 24143 | /* 66760 */ GIM_Try, /*On fail goto*//*Label 1585*/ GIMT_Encode4(66858), // Rule ID 22501 // |
| 24144 | /* 66765 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24145 | /* 66768 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24146 | /* 66775 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24147 | /* 66779 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24148 | /* 66783 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24149 | /* 66787 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24150 | /* 66791 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24151 | /* 66795 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24152 | /* 66799 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24153 | /* 66802 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24154 | /* 66806 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24155 | /* 66813 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24156 | /* 66817 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24157 | /* 66822 */ // MIs[0] dst |
| 24158 | /* 66822 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24159 | /* 66827 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24160 | /* 66829 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24161 | /* 66836 */ // (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) |
| 24162 | /* 66836 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mr), |
| 24163 | /* 66839 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24164 | /* 66843 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24165 | /* 66847 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24166 | /* 66850 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24167 | /* 66856 */ GIR_RootConstrainSelectedInstOperands, |
| 24168 | /* 66857 */ // GIR_Coverage, 22501, |
| 24169 | /* 66857 */ GIR_EraseRootFromParent_Done, |
| 24170 | /* 66858 */ // Label 1585: @66858 |
| 24171 | /* 66858 */ GIM_Try, /*On fail goto*//*Label 1586*/ GIMT_Encode4(66956), // Rule ID 26089 // |
| 24172 | /* 66863 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24173 | /* 66866 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24174 | /* 66873 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24175 | /* 66877 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24176 | /* 66881 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24177 | /* 66885 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24178 | /* 66889 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24179 | /* 66894 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24180 | /* 66898 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24181 | /* 66902 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24182 | /* 66905 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24183 | /* 66909 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24184 | /* 66916 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24185 | /* 66920 */ // MIs[0] dst |
| 24186 | /* 66920 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24187 | /* 66925 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24188 | /* 66927 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24189 | /* 66934 */ // (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) |
| 24190 | /* 66934 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mr), |
| 24191 | /* 66937 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24192 | /* 66941 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 24193 | /* 66945 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24194 | /* 66948 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24195 | /* 66954 */ GIR_RootConstrainSelectedInstOperands, |
| 24196 | /* 66955 */ // GIR_Coverage, 26089, |
| 24197 | /* 66955 */ GIR_EraseRootFromParent_Done, |
| 24198 | /* 66956 */ // Label 1586: @66956 |
| 24199 | /* 66956 */ GIM_Try, /*On fail goto*//*Label 1587*/ GIMT_Encode4(67054), // Rule ID 22509 // |
| 24200 | /* 66961 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24201 | /* 66964 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24202 | /* 66971 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24203 | /* 66975 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24204 | /* 66979 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24205 | /* 66983 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24206 | /* 66987 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24207 | /* 66991 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24208 | /* 66995 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24209 | /* 66998 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24210 | /* 67002 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24211 | /* 67009 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24212 | /* 67013 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24213 | /* 67018 */ // MIs[0] dst |
| 24214 | /* 67018 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24215 | /* 67023 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24216 | /* 67025 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24217 | /* 67032 */ // (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) |
| 24218 | /* 67032 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mr), |
| 24219 | /* 67035 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24220 | /* 67039 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24221 | /* 67043 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24222 | /* 67046 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24223 | /* 67052 */ GIR_RootConstrainSelectedInstOperands, |
| 24224 | /* 67053 */ // GIR_Coverage, 22509, |
| 24225 | /* 67053 */ GIR_EraseRootFromParent_Done, |
| 24226 | /* 67054 */ // Label 1587: @67054 |
| 24227 | /* 67054 */ GIM_Try, /*On fail goto*//*Label 1588*/ GIMT_Encode4(67152), // Rule ID 26093 // |
| 24228 | /* 67059 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24229 | /* 67062 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24230 | /* 67069 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24231 | /* 67073 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24232 | /* 67077 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24233 | /* 67081 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24234 | /* 67085 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24235 | /* 67090 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24236 | /* 67094 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24237 | /* 67098 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24238 | /* 67101 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24239 | /* 67105 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24240 | /* 67112 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24241 | /* 67116 */ // MIs[0] dst |
| 24242 | /* 67116 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24243 | /* 67121 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24244 | /* 67123 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24245 | /* 67130 */ // (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) |
| 24246 | /* 67130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mr), |
| 24247 | /* 67133 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24248 | /* 67137 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 24249 | /* 67141 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24250 | /* 67144 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24251 | /* 67150 */ GIR_RootConstrainSelectedInstOperands, |
| 24252 | /* 67151 */ // GIR_Coverage, 26093, |
| 24253 | /* 67151 */ GIR_EraseRootFromParent_Done, |
| 24254 | /* 67152 */ // Label 1588: @67152 |
| 24255 | /* 67152 */ GIM_Try, /*On fail goto*//*Label 1589*/ GIMT_Encode4(67250), // Rule ID 22525 // |
| 24256 | /* 67157 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24257 | /* 67160 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24258 | /* 67167 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24259 | /* 67171 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 24260 | /* 67175 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24261 | /* 67179 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24262 | /* 67183 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24263 | /* 67187 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24264 | /* 67191 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24265 | /* 67194 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24266 | /* 67198 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24267 | /* 67205 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24268 | /* 67209 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24269 | /* 67214 */ // MIs[0] dst |
| 24270 | /* 67214 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24271 | /* 67219 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24272 | /* 67221 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24273 | /* 67228 */ // (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) |
| 24274 | /* 67228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mr), |
| 24275 | /* 67231 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24276 | /* 67235 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24277 | /* 67239 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24278 | /* 67242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24279 | /* 67248 */ GIR_RootConstrainSelectedInstOperands, |
| 24280 | /* 67249 */ // GIR_Coverage, 22525, |
| 24281 | /* 67249 */ GIR_EraseRootFromParent_Done, |
| 24282 | /* 67250 */ // Label 1589: @67250 |
| 24283 | /* 67250 */ GIM_Try, /*On fail goto*//*Label 1590*/ GIMT_Encode4(67348), // Rule ID 22517 // |
| 24284 | /* 67255 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24285 | /* 67258 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24286 | /* 67265 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24287 | /* 67269 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24288 | /* 67273 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24289 | /* 67277 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24290 | /* 67281 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24291 | /* 67285 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24292 | /* 67289 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24293 | /* 67292 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24294 | /* 67296 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24295 | /* 67303 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24296 | /* 67307 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24297 | /* 67312 */ // MIs[0] dst |
| 24298 | /* 67312 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24299 | /* 67317 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24300 | /* 67319 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24301 | /* 67326 */ // (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) |
| 24302 | /* 67326 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mr), |
| 24303 | /* 67329 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24304 | /* 67333 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 24305 | /* 67337 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24306 | /* 67340 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24307 | /* 67346 */ GIR_RootConstrainSelectedInstOperands, |
| 24308 | /* 67347 */ // GIR_Coverage, 22517, |
| 24309 | /* 67347 */ GIR_EraseRootFromParent_Done, |
| 24310 | /* 67348 */ // Label 1590: @67348 |
| 24311 | /* 67348 */ GIM_Try, /*On fail goto*//*Label 1591*/ GIMT_Encode4(67446), // Rule ID 26097 // |
| 24312 | /* 67353 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24313 | /* 67356 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24314 | /* 67363 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24315 | /* 67367 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24316 | /* 67371 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24317 | /* 67375 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24318 | /* 67379 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24319 | /* 67384 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24320 | /* 67388 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24321 | /* 67392 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24322 | /* 67395 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24323 | /* 67399 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24324 | /* 67406 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24325 | /* 67410 */ // MIs[0] dst |
| 24326 | /* 67410 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24327 | /* 67415 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24328 | /* 67417 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24329 | /* 67424 */ // (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) |
| 24330 | /* 67424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mr), |
| 24331 | /* 67427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24332 | /* 67431 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 24333 | /* 67435 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24334 | /* 67438 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24335 | /* 67444 */ GIR_RootConstrainSelectedInstOperands, |
| 24336 | /* 67445 */ // GIR_Coverage, 26097, |
| 24337 | /* 67445 */ GIR_EraseRootFromParent_Done, |
| 24338 | /* 67446 */ // Label 1591: @67446 |
| 24339 | /* 67446 */ GIM_Try, /*On fail goto*//*Label 1592*/ GIMT_Encode4(67534), // Rule ID 408 // |
| 24340 | /* 67451 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24341 | /* 67454 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24342 | /* 67458 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24343 | /* 67462 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24344 | /* 67466 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24345 | /* 67470 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24346 | /* 67474 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24347 | /* 67478 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24348 | /* 67482 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24349 | /* 67485 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24350 | /* 67489 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24351 | /* 67493 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24352 | /* 67498 */ // MIs[0] src1 |
| 24353 | /* 67498 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24354 | /* 67503 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24355 | /* 67505 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24356 | /* 67512 */ // (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) |
| 24357 | /* 67512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mr), |
| 24358 | /* 67515 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24359 | /* 67519 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24360 | /* 67523 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24361 | /* 67526 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24362 | /* 67532 */ GIR_RootConstrainSelectedInstOperands, |
| 24363 | /* 67533 */ // GIR_Coverage, 408, |
| 24364 | /* 67533 */ GIR_EraseRootFromParent_Done, |
| 24365 | /* 67534 */ // Label 1592: @67534 |
| 24366 | /* 67534 */ GIM_Try, /*On fail goto*//*Label 1593*/ GIMT_Encode4(67622), // Rule ID 23305 // |
| 24367 | /* 67539 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24368 | /* 67542 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24369 | /* 67546 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24370 | /* 67550 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24371 | /* 67554 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24372 | /* 67558 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24373 | /* 67562 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24374 | /* 67567 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24375 | /* 67571 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24376 | /* 67575 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24377 | /* 67578 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24378 | /* 67582 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24379 | /* 67586 */ // MIs[0] src1 |
| 24380 | /* 67586 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24381 | /* 67591 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24382 | /* 67593 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24383 | /* 67600 */ // (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) |
| 24384 | /* 67600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16mr), |
| 24385 | /* 67603 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24386 | /* 67607 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 24387 | /* 67611 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24388 | /* 67614 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24389 | /* 67620 */ GIR_RootConstrainSelectedInstOperands, |
| 24390 | /* 67621 */ // GIR_Coverage, 23305, |
| 24391 | /* 67621 */ GIR_EraseRootFromParent_Done, |
| 24392 | /* 67622 */ // Label 1593: @67622 |
| 24393 | /* 67622 */ GIM_Try, /*On fail goto*//*Label 1594*/ GIMT_Encode4(67710), // Rule ID 300 // |
| 24394 | /* 67627 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24395 | /* 67630 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24396 | /* 67634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24397 | /* 67638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24398 | /* 67642 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24399 | /* 67646 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24400 | /* 67650 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24401 | /* 67654 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24402 | /* 67658 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24403 | /* 67661 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24404 | /* 67665 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24405 | /* 67669 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24406 | /* 67674 */ // MIs[0] src1 |
| 24407 | /* 67674 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24408 | /* 67679 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24409 | /* 67681 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24410 | /* 67688 */ // (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) |
| 24411 | /* 67688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mr), |
| 24412 | /* 67691 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24413 | /* 67695 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24414 | /* 67699 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24415 | /* 67702 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24416 | /* 67708 */ GIR_RootConstrainSelectedInstOperands, |
| 24417 | /* 67709 */ // GIR_Coverage, 300, |
| 24418 | /* 67709 */ GIR_EraseRootFromParent_Done, |
| 24419 | /* 67710 */ // Label 1594: @67710 |
| 24420 | /* 67710 */ GIM_Try, /*On fail goto*//*Label 1595*/ GIMT_Encode4(67798), // Rule ID 23269 // |
| 24421 | /* 67715 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24422 | /* 67718 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24423 | /* 67722 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24424 | /* 67726 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 24425 | /* 67730 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24426 | /* 67734 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24427 | /* 67738 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24428 | /* 67743 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24429 | /* 67747 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24430 | /* 67751 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24431 | /* 67754 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24432 | /* 67758 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24433 | /* 67762 */ // MIs[0] src1 |
| 24434 | /* 67762 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24435 | /* 67767 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24436 | /* 67769 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24437 | /* 67776 */ // (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) |
| 24438 | /* 67776 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND16mr), |
| 24439 | /* 67779 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24440 | /* 67783 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 24441 | /* 67787 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24442 | /* 67790 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24443 | /* 67796 */ GIR_RootConstrainSelectedInstOperands, |
| 24444 | /* 67797 */ // GIR_Coverage, 23269, |
| 24445 | /* 67797 */ GIR_EraseRootFromParent_Done, |
| 24446 | /* 67798 */ // Label 1595: @67798 |
| 24447 | /* 67798 */ GIM_Try, /*On fail goto*//*Label 1596*/ GIMT_Encode4(67896), // Rule ID 750 // |
| 24448 | /* 67803 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24449 | /* 67806 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24450 | /* 67810 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24451 | /* 67814 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 24452 | /* 67818 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24453 | /* 67822 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24454 | /* 67826 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24455 | /* 67830 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24456 | /* 67834 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24457 | /* 67837 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24458 | /* 67841 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24459 | /* 67845 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24460 | /* 67850 */ // MIs[0] src1 |
| 24461 | /* 67850 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24462 | /* 67855 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24463 | /* 67857 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24464 | /* 67864 */ // (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) |
| 24465 | /* 67864 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24466 | /* 67868 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24467 | /* 67874 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24468 | /* 67878 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16mCL), |
| 24469 | /* 67881 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24470 | /* 67885 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24471 | /* 67888 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24472 | /* 67894 */ GIR_RootConstrainSelectedInstOperands, |
| 24473 | /* 67895 */ // GIR_Coverage, 750, |
| 24474 | /* 67895 */ GIR_EraseRootFromParent_Done, |
| 24475 | /* 67896 */ // Label 1596: @67896 |
| 24476 | /* 67896 */ GIM_Try, /*On fail goto*//*Label 1597*/ GIMT_Encode4(67994), // Rule ID 718 // |
| 24477 | /* 67901 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24478 | /* 67904 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24479 | /* 67908 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24480 | /* 67912 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 24481 | /* 67916 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24482 | /* 67920 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24483 | /* 67924 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24484 | /* 67928 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24485 | /* 67932 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24486 | /* 67935 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24487 | /* 67939 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24488 | /* 67943 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24489 | /* 67948 */ // MIs[0] src1 |
| 24490 | /* 67948 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24491 | /* 67953 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24492 | /* 67955 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24493 | /* 67962 */ // (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) |
| 24494 | /* 67962 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24495 | /* 67966 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24496 | /* 67972 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24497 | /* 67976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16mCL), |
| 24498 | /* 67979 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24499 | /* 67983 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24500 | /* 67986 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24501 | /* 67992 */ GIR_RootConstrainSelectedInstOperands, |
| 24502 | /* 67993 */ // GIR_Coverage, 718, |
| 24503 | /* 67993 */ GIR_EraseRootFromParent_Done, |
| 24504 | /* 67994 */ // Label 1597: @67994 |
| 24505 | /* 67994 */ GIM_Try, /*On fail goto*//*Label 1598*/ GIMT_Encode4(68082), // Rule ID 336 // |
| 24506 | /* 67999 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24507 | /* 68002 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24508 | /* 68006 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24509 | /* 68010 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24510 | /* 68014 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24511 | /* 68018 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24512 | /* 68022 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24513 | /* 68026 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24514 | /* 68030 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24515 | /* 68033 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24516 | /* 68037 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24517 | /* 68041 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24518 | /* 68046 */ // MIs[0] src1 |
| 24519 | /* 68046 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24520 | /* 68051 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24521 | /* 68053 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24522 | /* 68060 */ // (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) |
| 24523 | /* 68060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mr), |
| 24524 | /* 68063 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24525 | /* 68067 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24526 | /* 68071 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24527 | /* 68074 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24528 | /* 68080 */ GIR_RootConstrainSelectedInstOperands, |
| 24529 | /* 68081 */ // GIR_Coverage, 336, |
| 24530 | /* 68081 */ GIR_EraseRootFromParent_Done, |
| 24531 | /* 68082 */ // Label 1598: @68082 |
| 24532 | /* 68082 */ GIM_Try, /*On fail goto*//*Label 1599*/ GIMT_Encode4(68170), // Rule ID 23281 // |
| 24533 | /* 68087 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24534 | /* 68090 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24535 | /* 68094 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24536 | /* 68098 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 24537 | /* 68102 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24538 | /* 68106 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24539 | /* 68110 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24540 | /* 68115 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24541 | /* 68119 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24542 | /* 68123 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24543 | /* 68126 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24544 | /* 68130 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24545 | /* 68134 */ // MIs[0] src1 |
| 24546 | /* 68134 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24547 | /* 68139 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24548 | /* 68141 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24549 | /* 68148 */ // (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) |
| 24550 | /* 68148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR16mr), |
| 24551 | /* 68151 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24552 | /* 68155 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 24553 | /* 68159 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24554 | /* 68162 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24555 | /* 68168 */ GIR_RootConstrainSelectedInstOperands, |
| 24556 | /* 68169 */ // GIR_Coverage, 23281, |
| 24557 | /* 68169 */ GIR_EraseRootFromParent_Done, |
| 24558 | /* 68170 */ // Label 1599: @68170 |
| 24559 | /* 68170 */ GIM_Try, /*On fail goto*//*Label 1600*/ GIMT_Encode4(68268), // Rule ID 782 // |
| 24560 | /* 68175 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24561 | /* 68178 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24562 | /* 68182 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24563 | /* 68186 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 24564 | /* 68190 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24565 | /* 68194 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24566 | /* 68198 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24567 | /* 68202 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24568 | /* 68206 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24569 | /* 68209 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24570 | /* 68213 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24571 | /* 68217 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24572 | /* 68222 */ // MIs[0] src1 |
| 24573 | /* 68222 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24574 | /* 68227 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24575 | /* 68229 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24576 | /* 68236 */ // (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) |
| 24577 | /* 68236 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24578 | /* 68240 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24579 | /* 68246 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24580 | /* 68250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16mCL), |
| 24581 | /* 68253 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24582 | /* 68257 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24583 | /* 68260 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24584 | /* 68266 */ GIR_RootConstrainSelectedInstOperands, |
| 24585 | /* 68267 */ // GIR_Coverage, 782, |
| 24586 | /* 68267 */ GIR_EraseRootFromParent_Done, |
| 24587 | /* 68268 */ // Label 1600: @68268 |
| 24588 | /* 68268 */ GIM_Try, /*On fail goto*//*Label 1601*/ GIMT_Encode4(68366), // Rule ID 814 // |
| 24589 | /* 68273 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24590 | /* 68276 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24591 | /* 68280 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24592 | /* 68284 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 24593 | /* 68288 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24594 | /* 68292 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24595 | /* 68296 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24596 | /* 68300 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24597 | /* 68304 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24598 | /* 68307 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24599 | /* 68311 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24600 | /* 68315 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24601 | /* 68320 */ // MIs[0] src1 |
| 24602 | /* 68320 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24603 | /* 68325 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24604 | /* 68327 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24605 | /* 68334 */ // (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) |
| 24606 | /* 68334 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24607 | /* 68338 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24608 | /* 68344 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24609 | /* 68348 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16mCL), |
| 24610 | /* 68351 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24611 | /* 68355 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24612 | /* 68358 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24613 | /* 68364 */ GIR_RootConstrainSelectedInstOperands, |
| 24614 | /* 68365 */ // GIR_Coverage, 814, |
| 24615 | /* 68365 */ GIR_EraseRootFromParent_Done, |
| 24616 | /* 68366 */ // Label 1601: @68366 |
| 24617 | /* 68366 */ GIM_Try, /*On fail goto*//*Label 1602*/ GIMT_Encode4(68464), // Rule ID 686 // |
| 24618 | /* 68371 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24619 | /* 68374 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24620 | /* 68378 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24621 | /* 68382 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 24622 | /* 68386 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24623 | /* 68390 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 24624 | /* 68394 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24625 | /* 68398 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24626 | /* 68402 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24627 | /* 68405 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24628 | /* 68409 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 24629 | /* 68413 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 24630 | /* 68418 */ // MIs[0] src1 |
| 24631 | /* 68418 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24632 | /* 68423 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24633 | /* 68425 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24634 | /* 68432 */ // (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) |
| 24635 | /* 68432 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24636 | /* 68436 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24637 | /* 68442 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 24638 | /* 68446 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16mCL), |
| 24639 | /* 68449 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24640 | /* 68453 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24641 | /* 68456 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24642 | /* 68462 */ GIR_RootConstrainSelectedInstOperands, |
| 24643 | /* 68463 */ // GIR_Coverage, 686, |
| 24644 | /* 68463 */ GIR_EraseRootFromParent_Done, |
| 24645 | /* 68464 */ // Label 1602: @68464 |
| 24646 | /* 68464 */ GIM_Try, /*On fail goto*//*Label 1603*/ GIMT_Encode4(68552), // Rule ID 444 // |
| 24647 | /* 68469 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24648 | /* 68472 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24649 | /* 68476 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24650 | /* 68480 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 24651 | /* 68484 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24652 | /* 68488 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24653 | /* 68492 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24654 | /* 68496 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24655 | /* 68500 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24656 | /* 68503 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24657 | /* 68507 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24658 | /* 68511 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24659 | /* 68516 */ // MIs[0] src1 |
| 24660 | /* 68516 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24661 | /* 68521 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24662 | /* 68523 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24663 | /* 68530 */ // (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) |
| 24664 | /* 68530 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB16mr), |
| 24665 | /* 68533 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24666 | /* 68537 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24667 | /* 68541 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24668 | /* 68544 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24669 | /* 68550 */ GIR_RootConstrainSelectedInstOperands, |
| 24670 | /* 68551 */ // GIR_Coverage, 444, |
| 24671 | /* 68551 */ GIR_EraseRootFromParent_Done, |
| 24672 | /* 68552 */ // Label 1603: @68552 |
| 24673 | /* 68552 */ GIM_Try, /*On fail goto*//*Label 1604*/ GIMT_Encode4(68640), // Rule ID 372 // |
| 24674 | /* 68557 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24675 | /* 68560 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24676 | /* 68564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24677 | /* 68568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24678 | /* 68572 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24679 | /* 68576 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24680 | /* 68580 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24681 | /* 68584 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24682 | /* 68588 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24683 | /* 68591 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24684 | /* 68595 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24685 | /* 68599 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24686 | /* 68604 */ // MIs[0] src1 |
| 24687 | /* 68604 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24688 | /* 68609 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24689 | /* 68611 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24690 | /* 68618 */ // (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) |
| 24691 | /* 68618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mr), |
| 24692 | /* 68621 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24693 | /* 68625 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 24694 | /* 68629 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24695 | /* 68632 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24696 | /* 68638 */ GIR_RootConstrainSelectedInstOperands, |
| 24697 | /* 68639 */ // GIR_Coverage, 372, |
| 24698 | /* 68639 */ GIR_EraseRootFromParent_Done, |
| 24699 | /* 68640 */ // Label 1604: @68640 |
| 24700 | /* 68640 */ GIM_Try, /*On fail goto*//*Label 1605*/ GIMT_Encode4(68728), // Rule ID 23293 // |
| 24701 | /* 68645 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24702 | /* 68648 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24703 | /* 68652 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24704 | /* 68656 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 24705 | /* 68660 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24706 | /* 68664 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 24707 | /* 68668 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24708 | /* 68673 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 24709 | /* 68677 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24710 | /* 68681 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24711 | /* 68684 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24712 | /* 68688 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24713 | /* 68692 */ // MIs[0] src1 |
| 24714 | /* 68692 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24715 | /* 68697 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24716 | /* 68699 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24717 | /* 68706 */ // (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) |
| 24718 | /* 68706 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR16mr), |
| 24719 | /* 68709 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 24720 | /* 68713 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 24721 | /* 68717 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24722 | /* 68720 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24723 | /* 68726 */ GIR_RootConstrainSelectedInstOperands, |
| 24724 | /* 68727 */ // GIR_Coverage, 23293, |
| 24725 | /* 68727 */ GIR_EraseRootFromParent_Done, |
| 24726 | /* 68728 */ // Label 1605: @68728 |
| 24727 | /* 68728 */ GIM_Try, /*On fail goto*//*Label 1606*/ GIMT_Encode4(68782), // Rule ID 25 // |
| 24728 | /* 68733 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24729 | /* 68736 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24730 | /* 68740 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24731 | /* 68744 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24732 | /* 68748 */ // MIs[1] Operand 1 |
| 24733 | /* 68748 */ // No operand predicates |
| 24734 | /* 68748 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 24735 | /* 68752 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24736 | /* 68756 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24737 | /* 68758 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24738 | /* 68765 */ // (st (imm:{ *:[i16] })<<P:Predicate_imm_su>>:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV16mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 24739 | /* 68765 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mi), |
| 24740 | /* 68768 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24741 | /* 68772 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 24742 | /* 68775 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 24743 | /* 68780 */ GIR_RootConstrainSelectedInstOperands, |
| 24744 | /* 68781 */ // GIR_Coverage, 25, |
| 24745 | /* 68781 */ GIR_EraseRootFromParent_Done, |
| 24746 | /* 68782 */ // Label 1606: @68782 |
| 24747 | /* 68782 */ GIM_Try, /*On fail goto*//*Label 1607*/ GIMT_Encode4(68835), // Rule ID 22569 // |
| 24748 | /* 68787 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24749 | /* 68790 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24750 | /* 68797 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24751 | /* 68801 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 24752 | /* 68805 */ // MIs[1] Operand 1 |
| 24753 | /* 68805 */ // No operand predicates |
| 24754 | /* 68805 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24755 | /* 68809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24756 | /* 68811 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24757 | /* 68818 */ // (atomic_store (imm:{ *:[i16] }):$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (MOV16mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i16] }):$src) |
| 24758 | /* 68818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mi), |
| 24759 | /* 68821 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24760 | /* 68825 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 24761 | /* 68828 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 24762 | /* 68833 */ GIR_RootConstrainSelectedInstOperands, |
| 24763 | /* 68834 */ // GIR_Coverage, 22569, |
| 24764 | /* 68834 */ GIR_EraseRootFromParent_Done, |
| 24765 | /* 68835 */ // Label 1607: @68835 |
| 24766 | /* 68835 */ GIM_Try, /*On fail goto*//*Label 1608*/ GIMT_Encode4(68898), // Rule ID 50 // |
| 24767 | /* 68840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 24768 | /* 68843 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24769 | /* 68846 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24770 | /* 68850 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24771 | /* 68854 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 24772 | /* 68858 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24773 | /* 68862 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24774 | /* 68867 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24775 | /* 68871 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24776 | /* 68873 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24777 | /* 68880 */ // (st (bswap:{ *:[i16] } GR16:{ *:[i16] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE16mr addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src1) |
| 24778 | /* 68880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE16mr), |
| 24779 | /* 68883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24780 | /* 68887 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 24781 | /* 68891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 24782 | /* 68896 */ GIR_RootConstrainSelectedInstOperands, |
| 24783 | /* 68897 */ // GIR_Coverage, 50, |
| 24784 | /* 68897 */ GIR_EraseRootFromParent_Done, |
| 24785 | /* 68898 */ // Label 1608: @68898 |
| 24786 | /* 68898 */ GIM_Try, /*On fail goto*//*Label 1609*/ GIMT_Encode4(68961), // Rule ID 56 // |
| 24787 | /* 68903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 24788 | /* 68906 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24789 | /* 68909 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24790 | /* 68913 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24791 | /* 68917 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 24792 | /* 68921 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 24793 | /* 68925 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24794 | /* 68930 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24795 | /* 68934 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24796 | /* 68936 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24797 | /* 68943 */ // (st (bswap:{ *:[i16] } GR16:{ *:[i16] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE16mr_EVEX addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src1) |
| 24798 | /* 68943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE16mr_EVEX), |
| 24799 | /* 68946 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24800 | /* 68950 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 24801 | /* 68954 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 24802 | /* 68959 */ GIR_RootConstrainSelectedInstOperands, |
| 24803 | /* 68960 */ // GIR_Coverage, 56, |
| 24804 | /* 68960 */ GIR_EraseRootFromParent_Done, |
| 24805 | /* 68961 */ // Label 1609: @68961 |
| 24806 | /* 68961 */ GIM_Try, /*On fail goto*//*Label 1610*/ GIMT_Encode4(69006), // Rule ID 22573 // |
| 24807 | /* 68966 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24808 | /* 68969 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 24809 | /* 68976 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24810 | /* 68980 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24811 | /* 68984 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24812 | /* 68991 */ // (atomic_store GR16:{ *:[i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_16>> => (MOV16mr addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24813 | /* 68991 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mr), |
| 24814 | /* 68994 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24815 | /* 68998 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 24816 | /* 69000 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 24817 | /* 69004 */ GIR_RootConstrainSelectedInstOperands, |
| 24818 | /* 69005 */ // GIR_Coverage, 22573, |
| 24819 | /* 69005 */ GIR_EraseRootFromParent_Done, |
| 24820 | /* 69006 */ // Label 1610: @69006 |
| 24821 | /* 69006 */ GIM_Try, /*On fail goto*//*Label 1611*/ GIMT_Encode4(69048), // Rule ID 33 // |
| 24822 | /* 69011 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24823 | /* 69014 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24824 | /* 69018 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 24825 | /* 69022 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24826 | /* 69026 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24827 | /* 69033 */ // (st GR16:{ *:[i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV16mr addr:{ *:[iPTR] }:$dst, GR16:{ *:[i16] }:$src) |
| 24828 | /* 69033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mr), |
| 24829 | /* 69036 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24830 | /* 69040 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 24831 | /* 69042 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 24832 | /* 69046 */ GIR_RootConstrainSelectedInstOperands, |
| 24833 | /* 69047 */ // GIR_Coverage, 33, |
| 24834 | /* 69047 */ GIR_EraseRootFromParent_Done, |
| 24835 | /* 69048 */ // Label 1611: @69048 |
| 24836 | /* 69048 */ GIM_Try, /*On fail goto*//*Label 1612*/ GIMT_Encode4(69093), // Rule ID 4626 // |
| 24837 | /* 69053 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 24838 | /* 69056 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24839 | /* 69059 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24840 | /* 69063 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 24841 | /* 69067 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24842 | /* 69071 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24843 | /* 69078 */ // (st FR16X:{ *:[f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSHZmr addr:{ *:[iPTR] }:$dst, FR16X:{ *:[f16] }:$src) |
| 24844 | /* 69078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSHZmr), |
| 24845 | /* 69081 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24846 | /* 69085 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 24847 | /* 69087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 24848 | /* 69091 */ GIR_RootConstrainSelectedInstOperands, |
| 24849 | /* 69092 */ // GIR_Coverage, 4626, |
| 24850 | /* 69092 */ GIR_EraseRootFromParent_Done, |
| 24851 | /* 69093 */ // Label 1612: @69093 |
| 24852 | /* 69093 */ GIM_Try, /*On fail goto*//*Label 1613*/ GIMT_Encode4(69159), // Rule ID 18537 // |
| 24853 | /* 69098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 24854 | /* 69101 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24855 | /* 69104 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24856 | /* 69108 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24857 | /* 69112 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24858 | /* 69119 */ // (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] }) |
| 24859 | /* 69119 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 24860 | /* 69122 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24861 | /* 69126 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24862 | /* 69131 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/0, // src |
| 24863 | /* 69135 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 24864 | /* 69140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PEXTRWmri), |
| 24865 | /* 69143 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24866 | /* 69147 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 24867 | /* 69150 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 24868 | /* 69153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 24869 | /* 69157 */ GIR_RootConstrainSelectedInstOperands, |
| 24870 | /* 69158 */ // GIR_Coverage, 18537, |
| 24871 | /* 69158 */ GIR_EraseRootFromParent_Done, |
| 24872 | /* 69159 */ // Label 1613: @69159 |
| 24873 | /* 69159 */ GIM_Try, /*On fail goto*//*Label 1614*/ GIMT_Encode4(69225), // Rule ID 18538 // |
| 24874 | /* 69164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoBWI), |
| 24875 | /* 69167 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24876 | /* 69170 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24877 | /* 69174 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24878 | /* 69178 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24879 | /* 69185 */ // (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] }) |
| 24880 | /* 69185 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 24881 | /* 69188 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24882 | /* 69192 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24883 | /* 69197 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/0, // src |
| 24884 | /* 69201 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 24885 | /* 69206 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPEXTRWmri), |
| 24886 | /* 69209 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24887 | /* 69213 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 24888 | /* 69216 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 24889 | /* 69219 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 24890 | /* 69223 */ GIR_RootConstrainSelectedInstOperands, |
| 24891 | /* 69224 */ // GIR_Coverage, 18538, |
| 24892 | /* 69224 */ GIR_EraseRootFromParent_Done, |
| 24893 | /* 69225 */ // Label 1614: @69225 |
| 24894 | /* 69225 */ GIM_Try, /*On fail goto*//*Label 1615*/ GIMT_Encode4(69337), // Rule ID 18326 // |
| 24895 | /* 69230 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 24896 | /* 69233 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24897 | /* 69236 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24898 | /* 69240 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24899 | /* 69244 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24900 | /* 69251 */ // (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] })) |
| 24901 | /* 69251 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s16, |
| 24902 | /* 69254 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24903 | /* 69258 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24904 | /* 69263 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/0, // src |
| 24905 | /* 69267 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 24906 | /* 69272 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 24907 | /* 69275 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(X86::PEXTRWrri), |
| 24908 | /* 69279 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24909 | /* 69284 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 24910 | /* 69287 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/0, |
| 24911 | /* 69290 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 24912 | /* 69292 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 24913 | /* 69295 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24914 | /* 69299 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24915 | /* 69304 */ GIR_AddTempSubRegister, /*InsnID*/1, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 24916 | /* 69311 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 24917 | /* 69316 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 24918 | /* 69321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16mr), |
| 24919 | /* 69324 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24920 | /* 69328 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 24921 | /* 69331 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 24922 | /* 69335 */ GIR_RootConstrainSelectedInstOperands, |
| 24923 | /* 69336 */ // GIR_Coverage, 18326, |
| 24924 | /* 69336 */ GIR_EraseRootFromParent_Done, |
| 24925 | /* 69337 */ // Label 1615: @69337 |
| 24926 | /* 69337 */ GIM_Try, /*On fail goto*//*Label 1616*/ GIMT_Encode4(69403), // Rule ID 21851 // |
| 24927 | /* 69342 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 24928 | /* 69345 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 24929 | /* 69348 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 24930 | /* 69352 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 24931 | /* 69356 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24932 | /* 69363 */ // (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] }) |
| 24933 | /* 69363 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 24934 | /* 69366 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 24935 | /* 69370 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24936 | /* 69375 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/0, // src |
| 24937 | /* 69379 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR128RegClassID), |
| 24938 | /* 69384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPEXTRWZmri), |
| 24939 | /* 69387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24940 | /* 69391 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 24941 | /* 69394 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 24942 | /* 69397 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 24943 | /* 69401 */ GIR_RootConstrainSelectedInstOperands, |
| 24944 | /* 69402 */ // GIR_Coverage, 21851, |
| 24945 | /* 69402 */ GIR_EraseRootFromParent_Done, |
| 24946 | /* 69403 */ // Label 1616: @69403 |
| 24947 | /* 69403 */ GIM_Reject, |
| 24948 | /* 69404 */ // Label 1484: @69404 |
| 24949 | /* 69404 */ GIM_Try, /*On fail goto*//*Label 1617*/ GIMT_Encode4(69500), // Rule ID 22554 // |
| 24950 | /* 69409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 24951 | /* 69412 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24952 | /* 69415 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 24953 | /* 69422 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24954 | /* 69426 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24955 | /* 69430 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 24956 | /* 69434 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 24957 | /* 69438 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24958 | /* 69442 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24959 | /* 69446 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24960 | /* 69449 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24961 | /* 69453 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 24962 | /* 69460 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24963 | /* 69464 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 24964 | /* 69468 */ // MIs[0] dst |
| 24965 | /* 69468 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24966 | /* 69473 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24967 | /* 69475 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24968 | /* 69482 */ // (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) |
| 24969 | /* 69482 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC32m), |
| 24970 | /* 69485 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24971 | /* 69489 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 24972 | /* 69492 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 24973 | /* 69498 */ GIR_RootConstrainSelectedInstOperands, |
| 24974 | /* 69499 */ // GIR_Coverage, 22554, |
| 24975 | /* 69499 */ GIR_EraseRootFromParent_Done, |
| 24976 | /* 69500 */ // Label 1617: @69500 |
| 24977 | /* 69500 */ GIM_Try, /*On fail goto*//*Label 1618*/ GIMT_Encode4(69596), // Rule ID 22558 // |
| 24978 | /* 69505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 24979 | /* 69508 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24980 | /* 69511 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 24981 | /* 69518 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 24982 | /* 69522 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 24983 | /* 69526 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 24984 | /* 69530 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 24985 | /* 69534 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 24986 | /* 69538 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 24987 | /* 69542 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 24988 | /* 69545 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 24989 | /* 69549 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 24990 | /* 69556 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 24991 | /* 69560 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 24992 | /* 69564 */ // MIs[0] dst |
| 24993 | /* 69564 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 24994 | /* 69569 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 24995 | /* 69571 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 24996 | /* 69578 */ // (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) |
| 24997 | /* 69578 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC32m), |
| 24998 | /* 69581 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 24999 | /* 69585 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25000 | /* 69588 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25001 | /* 69594 */ GIR_RootConstrainSelectedInstOperands, |
| 25002 | /* 69595 */ // GIR_Coverage, 22558, |
| 25003 | /* 69595 */ GIR_EraseRootFromParent_Done, |
| 25004 | /* 69596 */ // Label 1618: @69596 |
| 25005 | /* 69596 */ GIM_Try, /*On fail goto*//*Label 1619*/ GIMT_Encode4(69689), // Rule ID 22562 // |
| 25006 | /* 69601 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25007 | /* 69604 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25008 | /* 69611 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25009 | /* 69615 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25010 | /* 69619 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25011 | /* 69623 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25012 | /* 69627 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 25013 | /* 69631 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25014 | /* 69635 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25015 | /* 69639 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25016 | /* 69642 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25017 | /* 69646 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25018 | /* 69653 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25019 | /* 69657 */ // MIs[0] dst |
| 25020 | /* 69657 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25021 | /* 69662 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25022 | /* 69664 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25023 | /* 69671 */ // (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) |
| 25024 | /* 69671 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32m), |
| 25025 | /* 69674 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25026 | /* 69678 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25027 | /* 69681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25028 | /* 69687 */ GIR_RootConstrainSelectedInstOperands, |
| 25029 | /* 69688 */ // GIR_Coverage, 22562, |
| 25030 | /* 69688 */ GIR_EraseRootFromParent_Done, |
| 25031 | /* 69689 */ // Label 1619: @69689 |
| 25032 | /* 69689 */ GIM_Try, /*On fail goto*//*Label 1620*/ GIMT_Encode4(69779), // Rule ID 22566 // |
| 25033 | /* 69694 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25034 | /* 69697 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25035 | /* 69704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25036 | /* 69708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25037 | /* 69712 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25038 | /* 69716 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25039 | /* 69720 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25040 | /* 69724 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25041 | /* 69728 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25042 | /* 69731 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25043 | /* 69735 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25044 | /* 69742 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25045 | /* 69746 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 25046 | /* 69750 */ // MIs[0] dst |
| 25047 | /* 69750 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25048 | /* 69755 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25049 | /* 69757 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25050 | /* 69764 */ // (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) |
| 25051 | /* 69764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32m), |
| 25052 | /* 69767 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25053 | /* 69771 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25054 | /* 69777 */ GIR_RootConstrainSelectedInstOperands, |
| 25055 | /* 69778 */ // GIR_Coverage, 22566, |
| 25056 | /* 69778 */ GIR_EraseRootFromParent_Done, |
| 25057 | /* 69779 */ // Label 1620: @69779 |
| 25058 | /* 69779 */ GIM_Try, /*On fail goto*//*Label 1621*/ GIMT_Encode4(69865), // Rule ID 225 // |
| 25059 | /* 69784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 25060 | /* 69787 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25061 | /* 69790 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25062 | /* 69794 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25063 | /* 69798 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25064 | /* 69802 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25065 | /* 69806 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25066 | /* 69810 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25067 | /* 69814 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25068 | /* 69818 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25069 | /* 69821 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25070 | /* 69825 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25071 | /* 69829 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 25072 | /* 69833 */ // MIs[0] src1 |
| 25073 | /* 69833 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25074 | /* 69838 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25075 | /* 69840 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25076 | /* 69847 */ // (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) |
| 25077 | /* 69847 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC32m), |
| 25078 | /* 69850 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25079 | /* 69854 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25080 | /* 69857 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25081 | /* 69863 */ GIR_RootConstrainSelectedInstOperands, |
| 25082 | /* 69864 */ // GIR_Coverage, 225, |
| 25083 | /* 69864 */ GIR_EraseRootFromParent_Done, |
| 25084 | /* 69865 */ // Label 1621: @69865 |
| 25085 | /* 69865 */ GIM_Try, /*On fail goto*//*Label 1622*/ GIMT_Encode4(69951), // Rule ID 228 // |
| 25086 | /* 69870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 25087 | /* 69873 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25088 | /* 69876 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25089 | /* 69880 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25090 | /* 69884 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25091 | /* 69888 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25092 | /* 69892 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25093 | /* 69896 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25094 | /* 69900 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25095 | /* 69904 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25096 | /* 69907 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25097 | /* 69911 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25098 | /* 69915 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 25099 | /* 69919 */ // MIs[0] src1 |
| 25100 | /* 69919 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25101 | /* 69924 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25102 | /* 69926 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25103 | /* 69933 */ // (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) |
| 25104 | /* 69933 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC32m), |
| 25105 | /* 69936 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25106 | /* 69940 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25107 | /* 69943 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25108 | /* 69949 */ GIR_RootConstrainSelectedInstOperands, |
| 25109 | /* 69950 */ // GIR_Coverage, 228, |
| 25110 | /* 69950 */ GIR_EraseRootFromParent_Done, |
| 25111 | /* 69951 */ // Label 1622: @69951 |
| 25112 | /* 69951 */ GIM_Try, /*On fail goto*//*Label 1623*/ GIMT_Encode4(70044), // Rule ID 22697 // |
| 25113 | /* 69956 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25114 | /* 69959 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25115 | /* 69963 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25116 | /* 69967 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25117 | /* 69971 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25118 | /* 69975 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25119 | /* 69979 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25120 | /* 69983 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25121 | /* 69987 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25122 | /* 69990 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25123 | /* 69994 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25124 | /* 69998 */ GIM_CheckConstantInt, /*MI*/1, /*Op*/2, GIMT_Encode8(128), |
| 25125 | /* 70009 */ // MIs[0] dst |
| 25126 | /* 70009 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25127 | /* 70014 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25128 | /* 70016 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25129 | /* 70023 */ // (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] }) |
| 25130 | /* 70023 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mi), |
| 25131 | /* 70026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25132 | /* 70030 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 25133 | /* 70033 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25134 | /* 70036 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25135 | /* 70042 */ GIR_RootConstrainSelectedInstOperands, |
| 25136 | /* 70043 */ // GIR_Coverage, 22697, |
| 25137 | /* 70043 */ GIR_EraseRootFromParent_Done, |
| 25138 | /* 70044 */ // Label 1623: @70044 |
| 25139 | /* 70044 */ GIM_Try, /*On fail goto*//*Label 1624*/ GIMT_Encode4(70127), // Rule ID 17604 // |
| 25140 | /* 70049 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25141 | /* 70052 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25142 | /* 70056 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25143 | /* 70060 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 25144 | /* 70064 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25145 | /* 70068 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25146 | /* 70072 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25147 | /* 70076 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25148 | /* 70080 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25149 | /* 70083 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25150 | /* 70087 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25151 | /* 70091 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 31, |
| 25152 | /* 70095 */ // MIs[0] dst |
| 25153 | /* 70095 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25154 | /* 70100 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25155 | /* 70102 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25156 | /* 70109 */ // (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) |
| 25157 | /* 70109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32m1), |
| 25158 | /* 70112 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25159 | /* 70116 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25160 | /* 70119 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25161 | /* 70125 */ GIR_RootConstrainSelectedInstOperands, |
| 25162 | /* 70126 */ // GIR_Coverage, 17604, |
| 25163 | /* 70126 */ GIR_EraseRootFromParent_Done, |
| 25164 | /* 70127 */ // Label 1624: @70127 |
| 25165 | /* 70127 */ GIM_Try, /*On fail goto*//*Label 1625*/ GIMT_Encode4(70210), // Rule ID 17608 // |
| 25166 | /* 70132 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25167 | /* 70135 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25168 | /* 70139 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25169 | /* 70143 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 25170 | /* 70147 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25171 | /* 70151 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25172 | /* 70155 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25173 | /* 70159 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25174 | /* 70163 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25175 | /* 70166 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25176 | /* 70170 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25177 | /* 70174 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 31, |
| 25178 | /* 70178 */ // MIs[0] dst |
| 25179 | /* 70178 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25180 | /* 70183 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25181 | /* 70185 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25182 | /* 70192 */ // (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) |
| 25183 | /* 70192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32m1), |
| 25184 | /* 70195 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25185 | /* 70199 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25186 | /* 70202 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25187 | /* 70208 */ GIR_RootConstrainSelectedInstOperands, |
| 25188 | /* 70209 */ // GIR_Coverage, 17608, |
| 25189 | /* 70209 */ GIR_EraseRootFromParent_Done, |
| 25190 | /* 70210 */ // Label 1625: @70210 |
| 25191 | /* 70210 */ GIM_Try, /*On fail goto*//*Label 1626*/ GIMT_Encode4(70293), // Rule ID 261 // |
| 25192 | /* 70215 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25193 | /* 70218 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25194 | /* 70222 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25195 | /* 70226 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25196 | /* 70230 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25197 | /* 70234 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25198 | /* 70238 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 25199 | /* 70242 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25200 | /* 70246 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25201 | /* 70250 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25202 | /* 70253 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25203 | /* 70257 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25204 | /* 70261 */ // MIs[0] src1 |
| 25205 | /* 70261 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25206 | /* 70266 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25207 | /* 70268 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25208 | /* 70275 */ // (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) |
| 25209 | /* 70275 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG32m), |
| 25210 | /* 70278 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25211 | /* 70282 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25212 | /* 70285 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25213 | /* 70291 */ GIR_RootConstrainSelectedInstOperands, |
| 25214 | /* 70292 */ // GIR_Coverage, 261, |
| 25215 | /* 70292 */ GIR_EraseRootFromParent_Done, |
| 25216 | /* 70293 */ // Label 1626: @70293 |
| 25217 | /* 70293 */ GIM_Try, /*On fail goto*//*Label 1627*/ GIMT_Encode4(70373), // Rule ID 269 // |
| 25218 | /* 70298 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25219 | /* 70301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25220 | /* 70305 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25221 | /* 70309 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25222 | /* 70313 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25223 | /* 70317 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25224 | /* 70321 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25225 | /* 70325 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25226 | /* 70329 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25227 | /* 70332 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25228 | /* 70336 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25229 | /* 70340 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 25230 | /* 70344 */ // MIs[0] src1 |
| 25231 | /* 70344 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25232 | /* 70349 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25233 | /* 70351 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25234 | /* 70358 */ // (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) |
| 25235 | /* 70358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT32m), |
| 25236 | /* 70361 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25237 | /* 70365 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25238 | /* 70371 */ GIR_RootConstrainSelectedInstOperands, |
| 25239 | /* 70372 */ // GIR_Coverage, 269, |
| 25240 | /* 70372 */ GIR_EraseRootFromParent_Done, |
| 25241 | /* 70373 */ // Label 1627: @70373 |
| 25242 | /* 70373 */ GIM_Try, /*On fail goto*//*Label 1628*/ GIMT_Encode4(70468), // Rule ID 413 // |
| 25243 | /* 70378 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25244 | /* 70381 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25245 | /* 70385 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25246 | /* 70389 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25247 | /* 70393 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25248 | /* 70397 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25249 | /* 70401 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25250 | /* 70405 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25251 | /* 70409 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25252 | /* 70412 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25253 | /* 70416 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25254 | /* 70420 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25255 | /* 70424 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25256 | /* 70428 */ // MIs[3] Operand 1 |
| 25257 | /* 70428 */ // No operand predicates |
| 25258 | /* 70428 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25259 | /* 70432 */ // MIs[0] src1 |
| 25260 | /* 70432 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25261 | /* 70437 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25262 | /* 70439 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25263 | /* 70446 */ // (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) |
| 25264 | /* 70446 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mi), |
| 25265 | /* 70449 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25266 | /* 70453 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25267 | /* 70456 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25268 | /* 70459 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25269 | /* 70466 */ GIR_RootConstrainSelectedInstOperands, |
| 25270 | /* 70467 */ // GIR_Coverage, 413, |
| 25271 | /* 70467 */ GIR_EraseRootFromParent_Done, |
| 25272 | /* 70468 */ // Label 1628: @70468 |
| 25273 | /* 70468 */ GIM_Try, /*On fail goto*//*Label 1629*/ GIMT_Encode4(70563), // Rule ID 305 // |
| 25274 | /* 70473 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25275 | /* 70476 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25276 | /* 70480 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25277 | /* 70484 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 25278 | /* 70488 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25279 | /* 70492 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25280 | /* 70496 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25281 | /* 70500 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25282 | /* 70504 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25283 | /* 70507 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25284 | /* 70511 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25285 | /* 70515 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25286 | /* 70519 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25287 | /* 70523 */ // MIs[3] Operand 1 |
| 25288 | /* 70523 */ // No operand predicates |
| 25289 | /* 70523 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25290 | /* 70527 */ // MIs[0] src1 |
| 25291 | /* 70527 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25292 | /* 70532 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25293 | /* 70534 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25294 | /* 70541 */ // (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) |
| 25295 | /* 70541 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mi), |
| 25296 | /* 70544 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25297 | /* 70548 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25298 | /* 70551 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25299 | /* 70554 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25300 | /* 70561 */ GIR_RootConstrainSelectedInstOperands, |
| 25301 | /* 70562 */ // GIR_Coverage, 305, |
| 25302 | /* 70562 */ GIR_EraseRootFromParent_Done, |
| 25303 | /* 70563 */ // Label 1629: @70563 |
| 25304 | /* 70563 */ GIM_Try, /*On fail goto*//*Label 1630*/ GIMT_Encode4(70658), // Rule ID 341 // |
| 25305 | /* 70568 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25306 | /* 70571 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25307 | /* 70575 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25308 | /* 70579 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 25309 | /* 70583 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25310 | /* 70587 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25311 | /* 70591 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25312 | /* 70595 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25313 | /* 70599 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25314 | /* 70602 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25315 | /* 70606 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25316 | /* 70610 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25317 | /* 70614 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25318 | /* 70618 */ // MIs[3] Operand 1 |
| 25319 | /* 70618 */ // No operand predicates |
| 25320 | /* 70618 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25321 | /* 70622 */ // MIs[0] src1 |
| 25322 | /* 70622 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25323 | /* 70627 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25324 | /* 70629 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25325 | /* 70636 */ // (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) |
| 25326 | /* 70636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mi), |
| 25327 | /* 70639 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25328 | /* 70643 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25329 | /* 70646 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25330 | /* 70649 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25331 | /* 70656 */ GIR_RootConstrainSelectedInstOperands, |
| 25332 | /* 70657 */ // GIR_Coverage, 341, |
| 25333 | /* 70657 */ GIR_EraseRootFromParent_Done, |
| 25334 | /* 70658 */ // Label 1630: @70658 |
| 25335 | /* 70658 */ GIM_Try, /*On fail goto*//*Label 1631*/ GIMT_Encode4(70753), // Rule ID 453 // |
| 25336 | /* 70663 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25337 | /* 70666 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25338 | /* 70670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25339 | /* 70674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25340 | /* 70678 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25341 | /* 70682 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25342 | /* 70686 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25343 | /* 70690 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25344 | /* 70694 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25345 | /* 70697 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25346 | /* 70701 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25347 | /* 70705 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25348 | /* 70709 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25349 | /* 70713 */ // MIs[3] Operand 1 |
| 25350 | /* 70713 */ // No operand predicates |
| 25351 | /* 70713 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25352 | /* 70717 */ // MIs[0] src1 |
| 25353 | /* 70717 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25354 | /* 70722 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25355 | /* 70724 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25356 | /* 70731 */ // (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) |
| 25357 | /* 70731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mi), |
| 25358 | /* 70734 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25359 | /* 70738 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25360 | /* 70741 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25361 | /* 70744 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25362 | /* 70751 */ GIR_RootConstrainSelectedInstOperands, |
| 25363 | /* 70752 */ // GIR_Coverage, 453, |
| 25364 | /* 70752 */ GIR_EraseRootFromParent_Done, |
| 25365 | /* 70753 */ // Label 1631: @70753 |
| 25366 | /* 70753 */ GIM_Try, /*On fail goto*//*Label 1632*/ GIMT_Encode4(70848), // Rule ID 377 // |
| 25367 | /* 70758 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25368 | /* 70761 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25369 | /* 70765 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25370 | /* 70769 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25371 | /* 70773 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25372 | /* 70777 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25373 | /* 70781 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25374 | /* 70785 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25375 | /* 70789 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25376 | /* 70792 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25377 | /* 70796 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25378 | /* 70800 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25379 | /* 70804 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25380 | /* 70808 */ // MIs[3] Operand 1 |
| 25381 | /* 70808 */ // No operand predicates |
| 25382 | /* 70808 */ GIM_CheckCxxInsnPredicate, /*MI*/3, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 25383 | /* 70812 */ // MIs[0] src1 |
| 25384 | /* 70812 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25385 | /* 70817 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25386 | /* 70819 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25387 | /* 70826 */ // (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) |
| 25388 | /* 70826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mi), |
| 25389 | /* 70829 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25390 | /* 70833 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25391 | /* 70836 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25392 | /* 70839 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25393 | /* 70846 */ GIR_RootConstrainSelectedInstOperands, |
| 25394 | /* 70847 */ // GIR_Coverage, 377, |
| 25395 | /* 70847 */ GIR_EraseRootFromParent_Done, |
| 25396 | /* 70848 */ // Label 1632: @70848 |
| 25397 | /* 70848 */ GIM_Try, /*On fail goto*//*Label 1633*/ GIMT_Encode4(70949), // Rule ID 22490 // |
| 25398 | /* 70853 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25399 | /* 70856 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25400 | /* 70863 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25401 | /* 70867 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25402 | /* 70871 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25403 | /* 70875 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25404 | /* 70879 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25405 | /* 70883 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25406 | /* 70887 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25407 | /* 70890 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25408 | /* 70894 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25409 | /* 70901 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25410 | /* 70905 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25411 | /* 70909 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25412 | /* 70913 */ // MIs[3] Operand 1 |
| 25413 | /* 70913 */ // No operand predicates |
| 25414 | /* 70913 */ // MIs[0] dst |
| 25415 | /* 70913 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25416 | /* 70918 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25417 | /* 70920 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25418 | /* 70927 */ // (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) |
| 25419 | /* 70927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mi), |
| 25420 | /* 70930 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25421 | /* 70934 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25422 | /* 70937 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25423 | /* 70940 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25424 | /* 70947 */ GIR_RootConstrainSelectedInstOperands, |
| 25425 | /* 70948 */ // GIR_Coverage, 22490, |
| 25426 | /* 70948 */ GIR_EraseRootFromParent_Done, |
| 25427 | /* 70949 */ // Label 1633: @70949 |
| 25428 | /* 70949 */ GIM_Try, /*On fail goto*//*Label 1634*/ GIMT_Encode4(71050), // Rule ID 22498 // |
| 25429 | /* 70954 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25430 | /* 70957 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25431 | /* 70964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25432 | /* 70968 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 25433 | /* 70972 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25434 | /* 70976 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25435 | /* 70980 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25436 | /* 70984 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25437 | /* 70988 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25438 | /* 70991 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25439 | /* 70995 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25440 | /* 71002 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25441 | /* 71006 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25442 | /* 71010 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25443 | /* 71014 */ // MIs[3] Operand 1 |
| 25444 | /* 71014 */ // No operand predicates |
| 25445 | /* 71014 */ // MIs[0] dst |
| 25446 | /* 71014 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25447 | /* 71019 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25448 | /* 71021 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25449 | /* 71028 */ // (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) |
| 25450 | /* 71028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mi), |
| 25451 | /* 71031 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25452 | /* 71035 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25453 | /* 71038 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25454 | /* 71041 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25455 | /* 71048 */ GIR_RootConstrainSelectedInstOperands, |
| 25456 | /* 71049 */ // GIR_Coverage, 22498, |
| 25457 | /* 71049 */ GIR_EraseRootFromParent_Done, |
| 25458 | /* 71050 */ // Label 1634: @71050 |
| 25459 | /* 71050 */ GIM_Try, /*On fail goto*//*Label 1635*/ GIMT_Encode4(71151), // Rule ID 22506 // |
| 25460 | /* 71055 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25461 | /* 71058 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25462 | /* 71065 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25463 | /* 71069 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 25464 | /* 71073 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25465 | /* 71077 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25466 | /* 71081 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25467 | /* 71085 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25468 | /* 71089 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25469 | /* 71092 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25470 | /* 71096 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25471 | /* 71103 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25472 | /* 71107 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25473 | /* 71111 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25474 | /* 71115 */ // MIs[3] Operand 1 |
| 25475 | /* 71115 */ // No operand predicates |
| 25476 | /* 71115 */ // MIs[0] dst |
| 25477 | /* 71115 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25478 | /* 71120 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25479 | /* 71122 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25480 | /* 71129 */ // (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) |
| 25481 | /* 71129 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mi), |
| 25482 | /* 71132 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25483 | /* 71136 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25484 | /* 71139 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25485 | /* 71142 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25486 | /* 71149 */ GIR_RootConstrainSelectedInstOperands, |
| 25487 | /* 71150 */ // GIR_Coverage, 22506, |
| 25488 | /* 71150 */ GIR_EraseRootFromParent_Done, |
| 25489 | /* 71151 */ // Label 1635: @71151 |
| 25490 | /* 71151 */ GIM_Try, /*On fail goto*//*Label 1636*/ GIMT_Encode4(71252), // Rule ID 22522 // |
| 25491 | /* 71156 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25492 | /* 71159 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25493 | /* 71166 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25494 | /* 71170 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25495 | /* 71174 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25496 | /* 71178 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25497 | /* 71182 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25498 | /* 71186 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25499 | /* 71190 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25500 | /* 71193 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25501 | /* 71197 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25502 | /* 71204 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25503 | /* 71208 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25504 | /* 71212 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25505 | /* 71216 */ // MIs[3] Operand 1 |
| 25506 | /* 71216 */ // No operand predicates |
| 25507 | /* 71216 */ // MIs[0] dst |
| 25508 | /* 71216 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25509 | /* 71221 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25510 | /* 71223 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25511 | /* 71230 */ // (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) |
| 25512 | /* 71230 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mi), |
| 25513 | /* 71233 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25514 | /* 71237 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25515 | /* 71240 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25516 | /* 71243 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25517 | /* 71250 */ GIR_RootConstrainSelectedInstOperands, |
| 25518 | /* 71251 */ // GIR_Coverage, 22522, |
| 25519 | /* 71251 */ GIR_EraseRootFromParent_Done, |
| 25520 | /* 71252 */ // Label 1636: @71252 |
| 25521 | /* 71252 */ GIM_Try, /*On fail goto*//*Label 1637*/ GIMT_Encode4(71353), // Rule ID 22514 // |
| 25522 | /* 71257 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25523 | /* 71260 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25524 | /* 71267 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25525 | /* 71271 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25526 | /* 71275 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25527 | /* 71279 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25528 | /* 71283 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25529 | /* 71287 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25530 | /* 71291 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25531 | /* 71294 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25532 | /* 71298 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25533 | /* 71305 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25534 | /* 71309 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25535 | /* 71313 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25536 | /* 71317 */ // MIs[3] Operand 1 |
| 25537 | /* 71317 */ // No operand predicates |
| 25538 | /* 71317 */ // MIs[0] dst |
| 25539 | /* 71317 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25540 | /* 71322 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25541 | /* 71324 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25542 | /* 71331 */ // (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) |
| 25543 | /* 71331 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mi), |
| 25544 | /* 71334 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25545 | /* 71338 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 25546 | /* 71341 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25547 | /* 71344 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25548 | /* 71351 */ GIR_RootConstrainSelectedInstOperands, |
| 25549 | /* 71352 */ // GIR_Coverage, 22514, |
| 25550 | /* 71352 */ GIR_EraseRootFromParent_Done, |
| 25551 | /* 71353 */ // Label 1637: @71353 |
| 25552 | /* 71353 */ GIM_Try, /*On fail goto*//*Label 1638*/ GIMT_Encode4(71457), // Rule ID 834 // |
| 25553 | /* 71358 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25554 | /* 71361 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25555 | /* 71365 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25556 | /* 71369 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHL), |
| 25557 | /* 71373 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25558 | /* 71377 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25559 | /* 71381 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 25560 | /* 71385 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25561 | /* 71389 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25562 | /* 71393 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25563 | /* 71396 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25564 | /* 71400 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25565 | /* 71404 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25566 | /* 71409 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/3, // MIs[3] |
| 25567 | /* 71413 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25568 | /* 71417 */ // MIs[3] Operand 1 |
| 25569 | /* 71417 */ // No operand predicates |
| 25570 | /* 71417 */ // MIs[0] src1 |
| 25571 | /* 71417 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25572 | /* 71422 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25573 | /* 71424 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25574 | /* 71431 */ // (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) |
| 25575 | /* 71431 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32mri8), |
| 25576 | /* 71434 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25577 | /* 71438 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 25578 | /* 71442 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src3 |
| 25579 | /* 71445 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25580 | /* 71448 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25581 | /* 71455 */ GIR_RootConstrainSelectedInstOperands, |
| 25582 | /* 71456 */ // GIR_Coverage, 834, |
| 25583 | /* 71456 */ GIR_EraseRootFromParent_Done, |
| 25584 | /* 71457 */ // Label 1638: @71457 |
| 25585 | /* 71457 */ GIM_Try, /*On fail goto*//*Label 1639*/ GIMT_Encode4(71561), // Rule ID 858 // |
| 25586 | /* 71462 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25587 | /* 71465 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25588 | /* 71469 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25589 | /* 71473 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHR), |
| 25590 | /* 71477 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25591 | /* 71481 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25592 | /* 71485 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 25593 | /* 71489 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25594 | /* 71494 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25595 | /* 71498 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25596 | /* 71502 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25597 | /* 71505 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25598 | /* 71509 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25599 | /* 71513 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/3, // MIs[3] |
| 25600 | /* 71517 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25601 | /* 71521 */ // MIs[3] Operand 1 |
| 25602 | /* 71521 */ // No operand predicates |
| 25603 | /* 71521 */ // MIs[0] src1 |
| 25604 | /* 71521 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25605 | /* 71526 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25606 | /* 71528 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25607 | /* 71535 */ // (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) |
| 25608 | /* 71535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32mri8), |
| 25609 | /* 71538 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25610 | /* 71542 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 25611 | /* 71546 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src3 |
| 25612 | /* 71549 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25613 | /* 71552 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25614 | /* 71559 */ GIR_RootConstrainSelectedInstOperands, |
| 25615 | /* 71560 */ // GIR_Coverage, 858, |
| 25616 | /* 71560 */ GIR_EraseRootFromParent_Done, |
| 25617 | /* 71561 */ // Label 1639: @71561 |
| 25618 | /* 71561 */ GIM_Try, /*On fail goto*//*Label 1640*/ GIMT_Encode4(71652), // Rule ID 735 // |
| 25619 | /* 71566 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25620 | /* 71569 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25621 | /* 71573 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25622 | /* 71577 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 25623 | /* 71581 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25624 | /* 71585 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25625 | /* 71589 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25626 | /* 71593 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25627 | /* 71597 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25628 | /* 71600 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25629 | /* 71604 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25630 | /* 71608 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25631 | /* 71612 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25632 | /* 71616 */ // MIs[3] Operand 1 |
| 25633 | /* 71616 */ // No operand predicates |
| 25634 | /* 71616 */ // MIs[0] src1 |
| 25635 | /* 71616 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25636 | /* 71621 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25637 | /* 71623 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25638 | /* 71630 */ // (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) |
| 25639 | /* 71630 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32mi), |
| 25640 | /* 71633 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25641 | /* 71637 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25642 | /* 71640 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25643 | /* 71643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25644 | /* 71650 */ GIR_RootConstrainSelectedInstOperands, |
| 25645 | /* 71651 */ // GIR_Coverage, 735, |
| 25646 | /* 71651 */ GIR_EraseRootFromParent_Done, |
| 25647 | /* 71652 */ // Label 1640: @71652 |
| 25648 | /* 71652 */ GIM_Try, /*On fail goto*//*Label 1641*/ GIMT_Encode4(71743), // Rule ID 703 // |
| 25649 | /* 71657 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25650 | /* 71660 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25651 | /* 71664 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25652 | /* 71668 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 25653 | /* 71672 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25654 | /* 71676 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25655 | /* 71680 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25656 | /* 71684 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25657 | /* 71688 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25658 | /* 71691 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25659 | /* 71695 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25660 | /* 71699 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25661 | /* 71703 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25662 | /* 71707 */ // MIs[3] Operand 1 |
| 25663 | /* 71707 */ // No operand predicates |
| 25664 | /* 71707 */ // MIs[0] src1 |
| 25665 | /* 71707 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25666 | /* 71712 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25667 | /* 71714 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25668 | /* 71721 */ // (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) |
| 25669 | /* 71721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32mi), |
| 25670 | /* 71724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25671 | /* 71728 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25672 | /* 71731 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25673 | /* 71734 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25674 | /* 71741 */ GIR_RootConstrainSelectedInstOperands, |
| 25675 | /* 71742 */ // GIR_Coverage, 703, |
| 25676 | /* 71742 */ GIR_EraseRootFromParent_Done, |
| 25677 | /* 71743 */ // Label 1641: @71743 |
| 25678 | /* 71743 */ GIM_Try, /*On fail goto*//*Label 1642*/ GIMT_Encode4(71834), // Rule ID 767 // |
| 25679 | /* 71748 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25680 | /* 71751 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25681 | /* 71755 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25682 | /* 71759 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 25683 | /* 71763 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25684 | /* 71767 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25685 | /* 71771 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25686 | /* 71775 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25687 | /* 71779 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25688 | /* 71782 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25689 | /* 71786 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25690 | /* 71790 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25691 | /* 71794 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25692 | /* 71798 */ // MIs[3] Operand 1 |
| 25693 | /* 71798 */ // No operand predicates |
| 25694 | /* 71798 */ // MIs[0] src1 |
| 25695 | /* 71798 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25696 | /* 71803 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25697 | /* 71805 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25698 | /* 71812 */ // (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) |
| 25699 | /* 71812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32mi), |
| 25700 | /* 71815 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25701 | /* 71819 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25702 | /* 71822 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25703 | /* 71825 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25704 | /* 71832 */ GIR_RootConstrainSelectedInstOperands, |
| 25705 | /* 71833 */ // GIR_Coverage, 767, |
| 25706 | /* 71833 */ GIR_EraseRootFromParent_Done, |
| 25707 | /* 71834 */ // Label 1642: @71834 |
| 25708 | /* 71834 */ GIM_Try, /*On fail goto*//*Label 1643*/ GIMT_Encode4(71925), // Rule ID 799 // |
| 25709 | /* 71839 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25710 | /* 71842 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25711 | /* 71846 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25712 | /* 71850 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 25713 | /* 71854 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25714 | /* 71858 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25715 | /* 71862 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25716 | /* 71866 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25717 | /* 71870 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25718 | /* 71873 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25719 | /* 71877 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25720 | /* 71881 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25721 | /* 71885 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25722 | /* 71889 */ // MIs[3] Operand 1 |
| 25723 | /* 71889 */ // No operand predicates |
| 25724 | /* 71889 */ // MIs[0] src1 |
| 25725 | /* 71889 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25726 | /* 71894 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25727 | /* 71896 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25728 | /* 71903 */ // (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) |
| 25729 | /* 71903 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32mi), |
| 25730 | /* 71906 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25731 | /* 71910 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25732 | /* 71913 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25733 | /* 71916 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25734 | /* 71923 */ GIR_RootConstrainSelectedInstOperands, |
| 25735 | /* 71924 */ // GIR_Coverage, 799, |
| 25736 | /* 71924 */ GIR_EraseRootFromParent_Done, |
| 25737 | /* 71925 */ // Label 1643: @71925 |
| 25738 | /* 71925 */ GIM_Try, /*On fail goto*//*Label 1644*/ GIMT_Encode4(72016), // Rule ID 671 // |
| 25739 | /* 71930 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25740 | /* 71933 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 25741 | /* 71937 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25742 | /* 71941 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 25743 | /* 71945 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25744 | /* 71949 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 25745 | /* 71953 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25746 | /* 71957 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25747 | /* 71961 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 25748 | /* 71964 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25749 | /* 71968 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 25750 | /* 71972 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 25751 | /* 71976 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 25752 | /* 71980 */ // MIs[3] Operand 1 |
| 25753 | /* 71980 */ // No operand predicates |
| 25754 | /* 71980 */ // MIs[0] src1 |
| 25755 | /* 71980 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25756 | /* 71985 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 25757 | /* 71987 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25758 | /* 71994 */ // (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) |
| 25759 | /* 71994 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32mi), |
| 25760 | /* 71997 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 25761 | /* 72001 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 25762 | /* 72004 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25763 | /* 72007 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 25764 | /* 72014 */ GIR_RootConstrainSelectedInstOperands, |
| 25765 | /* 72015 */ // GIR_Coverage, 671, |
| 25766 | /* 72015 */ GIR_EraseRootFromParent_Done, |
| 25767 | /* 72016 */ // Label 1644: @72016 |
| 25768 | /* 72016 */ GIM_Try, /*On fail goto*//*Label 1645*/ GIMT_Encode4(72114), // Rule ID 22494 // |
| 25769 | /* 72021 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25770 | /* 72024 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25771 | /* 72031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25772 | /* 72035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25773 | /* 72039 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25774 | /* 72043 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25775 | /* 72047 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25776 | /* 72051 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25777 | /* 72055 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25778 | /* 72058 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25779 | /* 72062 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25780 | /* 72069 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25781 | /* 72073 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25782 | /* 72078 */ // MIs[0] dst |
| 25783 | /* 72078 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25784 | /* 72083 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25785 | /* 72085 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25786 | /* 72092 */ // (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) |
| 25787 | /* 72092 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mr), |
| 25788 | /* 72095 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25789 | /* 72099 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 25790 | /* 72103 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25791 | /* 72106 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25792 | /* 72112 */ GIR_RootConstrainSelectedInstOperands, |
| 25793 | /* 72113 */ // GIR_Coverage, 22494, |
| 25794 | /* 72113 */ GIR_EraseRootFromParent_Done, |
| 25795 | /* 72114 */ // Label 1645: @72114 |
| 25796 | /* 72114 */ GIM_Try, /*On fail goto*//*Label 1646*/ GIMT_Encode4(72212), // Rule ID 26086 // |
| 25797 | /* 72119 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25798 | /* 72122 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25799 | /* 72129 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25800 | /* 72133 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 25801 | /* 72137 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25802 | /* 72141 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25803 | /* 72145 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25804 | /* 72150 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25805 | /* 72154 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25806 | /* 72158 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25807 | /* 72161 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25808 | /* 72165 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25809 | /* 72172 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25810 | /* 72176 */ // MIs[0] dst |
| 25811 | /* 72176 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25812 | /* 72181 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25813 | /* 72183 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25814 | /* 72190 */ // (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) |
| 25815 | /* 72190 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mr), |
| 25816 | /* 72193 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25817 | /* 72197 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 25818 | /* 72201 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25819 | /* 72204 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25820 | /* 72210 */ GIR_RootConstrainSelectedInstOperands, |
| 25821 | /* 72211 */ // GIR_Coverage, 26086, |
| 25822 | /* 72211 */ GIR_EraseRootFromParent_Done, |
| 25823 | /* 72212 */ // Label 1646: @72212 |
| 25824 | /* 72212 */ GIM_Try, /*On fail goto*//*Label 1647*/ GIMT_Encode4(72310), // Rule ID 22502 // |
| 25825 | /* 72217 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25826 | /* 72220 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25827 | /* 72227 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25828 | /* 72231 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 25829 | /* 72235 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25830 | /* 72239 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25831 | /* 72243 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25832 | /* 72247 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25833 | /* 72251 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25834 | /* 72254 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25835 | /* 72258 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25836 | /* 72265 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25837 | /* 72269 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25838 | /* 72274 */ // MIs[0] dst |
| 25839 | /* 72274 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25840 | /* 72279 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25841 | /* 72281 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25842 | /* 72288 */ // (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) |
| 25843 | /* 72288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mr), |
| 25844 | /* 72291 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25845 | /* 72295 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 25846 | /* 72299 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25847 | /* 72302 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25848 | /* 72308 */ GIR_RootConstrainSelectedInstOperands, |
| 25849 | /* 72309 */ // GIR_Coverage, 22502, |
| 25850 | /* 72309 */ GIR_EraseRootFromParent_Done, |
| 25851 | /* 72310 */ // Label 1647: @72310 |
| 25852 | /* 72310 */ GIM_Try, /*On fail goto*//*Label 1648*/ GIMT_Encode4(72408), // Rule ID 26090 // |
| 25853 | /* 72315 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25854 | /* 72318 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25855 | /* 72325 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25856 | /* 72329 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 25857 | /* 72333 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25858 | /* 72337 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25859 | /* 72341 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25860 | /* 72346 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25861 | /* 72350 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25862 | /* 72354 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25863 | /* 72357 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25864 | /* 72361 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25865 | /* 72368 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25866 | /* 72372 */ // MIs[0] dst |
| 25867 | /* 72372 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25868 | /* 72377 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25869 | /* 72379 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25870 | /* 72386 */ // (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) |
| 25871 | /* 72386 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mr), |
| 25872 | /* 72389 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25873 | /* 72393 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 25874 | /* 72397 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25875 | /* 72400 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25876 | /* 72406 */ GIR_RootConstrainSelectedInstOperands, |
| 25877 | /* 72407 */ // GIR_Coverage, 26090, |
| 25878 | /* 72407 */ GIR_EraseRootFromParent_Done, |
| 25879 | /* 72408 */ // Label 1648: @72408 |
| 25880 | /* 72408 */ GIM_Try, /*On fail goto*//*Label 1649*/ GIMT_Encode4(72506), // Rule ID 22510 // |
| 25881 | /* 72413 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25882 | /* 72416 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25883 | /* 72423 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25884 | /* 72427 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 25885 | /* 72431 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25886 | /* 72435 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25887 | /* 72439 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25888 | /* 72443 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25889 | /* 72447 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25890 | /* 72450 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25891 | /* 72454 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25892 | /* 72461 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25893 | /* 72465 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25894 | /* 72470 */ // MIs[0] dst |
| 25895 | /* 72470 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25896 | /* 72475 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25897 | /* 72477 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25898 | /* 72484 */ // (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) |
| 25899 | /* 72484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mr), |
| 25900 | /* 72487 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25901 | /* 72491 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 25902 | /* 72495 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25903 | /* 72498 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25904 | /* 72504 */ GIR_RootConstrainSelectedInstOperands, |
| 25905 | /* 72505 */ // GIR_Coverage, 22510, |
| 25906 | /* 72505 */ GIR_EraseRootFromParent_Done, |
| 25907 | /* 72506 */ // Label 1649: @72506 |
| 25908 | /* 72506 */ GIM_Try, /*On fail goto*//*Label 1650*/ GIMT_Encode4(72604), // Rule ID 26094 // |
| 25909 | /* 72511 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25910 | /* 72514 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25911 | /* 72521 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25912 | /* 72525 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 25913 | /* 72529 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25914 | /* 72533 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25915 | /* 72537 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25916 | /* 72542 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25917 | /* 72546 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25918 | /* 72550 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25919 | /* 72553 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25920 | /* 72557 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25921 | /* 72564 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25922 | /* 72568 */ // MIs[0] dst |
| 25923 | /* 72568 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25924 | /* 72573 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25925 | /* 72575 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25926 | /* 72582 */ // (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) |
| 25927 | /* 72582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mr), |
| 25928 | /* 72585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25929 | /* 72589 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 25930 | /* 72593 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25931 | /* 72596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25932 | /* 72602 */ GIR_RootConstrainSelectedInstOperands, |
| 25933 | /* 72603 */ // GIR_Coverage, 26094, |
| 25934 | /* 72603 */ GIR_EraseRootFromParent_Done, |
| 25935 | /* 72604 */ // Label 1650: @72604 |
| 25936 | /* 72604 */ GIM_Try, /*On fail goto*//*Label 1651*/ GIMT_Encode4(72702), // Rule ID 22526 // |
| 25937 | /* 72609 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25938 | /* 72612 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25939 | /* 72619 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25940 | /* 72623 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 25941 | /* 72627 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25942 | /* 72631 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25943 | /* 72635 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25944 | /* 72639 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25945 | /* 72643 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25946 | /* 72646 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25947 | /* 72650 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25948 | /* 72657 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25949 | /* 72661 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25950 | /* 72666 */ // MIs[0] dst |
| 25951 | /* 72666 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25952 | /* 72671 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25953 | /* 72673 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25954 | /* 72680 */ // (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) |
| 25955 | /* 72680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mr), |
| 25956 | /* 72683 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25957 | /* 72687 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 25958 | /* 72691 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25959 | /* 72694 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25960 | /* 72700 */ GIR_RootConstrainSelectedInstOperands, |
| 25961 | /* 72701 */ // GIR_Coverage, 22526, |
| 25962 | /* 72701 */ GIR_EraseRootFromParent_Done, |
| 25963 | /* 72702 */ // Label 1651: @72702 |
| 25964 | /* 72702 */ GIM_Try, /*On fail goto*//*Label 1652*/ GIMT_Encode4(72800), // Rule ID 22518 // |
| 25965 | /* 72707 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25966 | /* 72710 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25967 | /* 72717 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25968 | /* 72721 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25969 | /* 72725 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25970 | /* 72729 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25971 | /* 72733 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25972 | /* 72737 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 25973 | /* 72741 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25974 | /* 72744 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 25975 | /* 72748 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25976 | /* 72755 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 25977 | /* 72759 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 25978 | /* 72764 */ // MIs[0] dst |
| 25979 | /* 72764 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 25980 | /* 72769 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25981 | /* 72771 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 25982 | /* 72778 */ // (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) |
| 25983 | /* 72778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mr), |
| 25984 | /* 72781 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 25985 | /* 72785 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 25986 | /* 72789 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 25987 | /* 72792 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 25988 | /* 72798 */ GIR_RootConstrainSelectedInstOperands, |
| 25989 | /* 72799 */ // GIR_Coverage, 22518, |
| 25990 | /* 72799 */ GIR_EraseRootFromParent_Done, |
| 25991 | /* 72800 */ // Label 1652: @72800 |
| 25992 | /* 72800 */ GIM_Try, /*On fail goto*//*Label 1653*/ GIMT_Encode4(72898), // Rule ID 26098 // |
| 25993 | /* 72805 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 25994 | /* 72808 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 25995 | /* 72815 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 25996 | /* 72819 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 25997 | /* 72823 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25998 | /* 72827 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25999 | /* 72831 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26000 | /* 72836 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26001 | /* 72840 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26002 | /* 72844 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26003 | /* 72847 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26004 | /* 72851 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26005 | /* 72858 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26006 | /* 72862 */ // MIs[0] dst |
| 26007 | /* 72862 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26008 | /* 72867 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26009 | /* 72869 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26010 | /* 72876 */ // (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) |
| 26011 | /* 72876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mr), |
| 26012 | /* 72879 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26013 | /* 72883 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26014 | /* 72887 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26015 | /* 72890 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26016 | /* 72896 */ GIR_RootConstrainSelectedInstOperands, |
| 26017 | /* 72897 */ // GIR_Coverage, 26098, |
| 26018 | /* 72897 */ GIR_EraseRootFromParent_Done, |
| 26019 | /* 72898 */ // Label 1653: @72898 |
| 26020 | /* 72898 */ GIM_Try, /*On fail goto*//*Label 1654*/ GIMT_Encode4(73009), // Rule ID 837 // |
| 26021 | /* 72903 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26022 | /* 72906 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26023 | /* 72910 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26024 | /* 72914 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHL), |
| 26025 | /* 72918 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26026 | /* 72922 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26027 | /* 72926 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 26028 | /* 72930 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26029 | /* 72934 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26030 | /* 72938 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26031 | /* 72941 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26032 | /* 72945 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26033 | /* 72949 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26034 | /* 72954 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26035 | /* 72959 */ // MIs[0] src1 |
| 26036 | /* 72959 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26037 | /* 72964 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26038 | /* 72966 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26039 | /* 72973 */ // (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) |
| 26040 | /* 72973 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26041 | /* 72977 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 26042 | /* 72983 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // CL |
| 26043 | /* 72987 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32mrCL), |
| 26044 | /* 72990 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26045 | /* 72994 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26046 | /* 72998 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26047 | /* 73001 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26048 | /* 73007 */ GIR_RootConstrainSelectedInstOperands, |
| 26049 | /* 73008 */ // GIR_Coverage, 837, |
| 26050 | /* 73008 */ GIR_EraseRootFromParent_Done, |
| 26051 | /* 73009 */ // Label 1654: @73009 |
| 26052 | /* 73009 */ GIM_Try, /*On fail goto*//*Label 1655*/ GIMT_Encode4(73120), // Rule ID 861 // |
| 26053 | /* 73014 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26054 | /* 73017 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26055 | /* 73021 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26056 | /* 73025 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHR), |
| 26057 | /* 73029 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26058 | /* 73033 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26059 | /* 73037 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 26060 | /* 73041 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26061 | /* 73046 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26062 | /* 73050 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26063 | /* 73054 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26064 | /* 73057 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26065 | /* 73061 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26066 | /* 73065 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26067 | /* 73070 */ // MIs[0] src1 |
| 26068 | /* 73070 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26069 | /* 73075 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26070 | /* 73077 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26071 | /* 73084 */ // (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) |
| 26072 | /* 73084 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26073 | /* 73088 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 26074 | /* 73094 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // CL |
| 26075 | /* 73098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32mrCL), |
| 26076 | /* 73101 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26077 | /* 73105 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26078 | /* 73109 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26079 | /* 73112 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26080 | /* 73118 */ GIR_RootConstrainSelectedInstOperands, |
| 26081 | /* 73119 */ // GIR_Coverage, 861, |
| 26082 | /* 73119 */ GIR_EraseRootFromParent_Done, |
| 26083 | /* 73120 */ // Label 1655: @73120 |
| 26084 | /* 73120 */ GIM_Try, /*On fail goto*//*Label 1656*/ GIMT_Encode4(73208), // Rule ID 409 // |
| 26085 | /* 73125 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26086 | /* 73128 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26087 | /* 73132 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26088 | /* 73136 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26089 | /* 73140 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26090 | /* 73144 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26091 | /* 73148 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26092 | /* 73152 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26093 | /* 73156 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26094 | /* 73159 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26095 | /* 73163 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26096 | /* 73167 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26097 | /* 73172 */ // MIs[0] src1 |
| 26098 | /* 73172 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26099 | /* 73177 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26100 | /* 73179 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26101 | /* 73186 */ // (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) |
| 26102 | /* 73186 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mr), |
| 26103 | /* 73189 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26104 | /* 73193 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26105 | /* 73197 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26106 | /* 73200 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26107 | /* 73206 */ GIR_RootConstrainSelectedInstOperands, |
| 26108 | /* 73207 */ // GIR_Coverage, 409, |
| 26109 | /* 73207 */ GIR_EraseRootFromParent_Done, |
| 26110 | /* 73208 */ // Label 1656: @73208 |
| 26111 | /* 73208 */ GIM_Try, /*On fail goto*//*Label 1657*/ GIMT_Encode4(73296), // Rule ID 23306 // |
| 26112 | /* 73213 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26113 | /* 73216 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26114 | /* 73220 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26115 | /* 73224 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26116 | /* 73228 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26117 | /* 73232 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26118 | /* 73236 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26119 | /* 73241 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26120 | /* 73245 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26121 | /* 73249 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26122 | /* 73252 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26123 | /* 73256 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26124 | /* 73260 */ // MIs[0] src1 |
| 26125 | /* 73260 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26126 | /* 73265 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26127 | /* 73267 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26128 | /* 73274 */ // (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) |
| 26129 | /* 73274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32mr), |
| 26130 | /* 73277 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26131 | /* 73281 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26132 | /* 73285 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26133 | /* 73288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26134 | /* 73294 */ GIR_RootConstrainSelectedInstOperands, |
| 26135 | /* 73295 */ // GIR_Coverage, 23306, |
| 26136 | /* 73295 */ GIR_EraseRootFromParent_Done, |
| 26137 | /* 73296 */ // Label 1657: @73296 |
| 26138 | /* 73296 */ GIM_Try, /*On fail goto*//*Label 1658*/ GIMT_Encode4(73384), // Rule ID 301 // |
| 26139 | /* 73301 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26140 | /* 73304 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26141 | /* 73308 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26142 | /* 73312 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 26143 | /* 73316 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26144 | /* 73320 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26145 | /* 73324 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26146 | /* 73328 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26147 | /* 73332 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26148 | /* 73335 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26149 | /* 73339 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26150 | /* 73343 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26151 | /* 73348 */ // MIs[0] src1 |
| 26152 | /* 73348 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26153 | /* 73353 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26154 | /* 73355 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26155 | /* 73362 */ // (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) |
| 26156 | /* 73362 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mr), |
| 26157 | /* 73365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26158 | /* 73369 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26159 | /* 73373 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26160 | /* 73376 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26161 | /* 73382 */ GIR_RootConstrainSelectedInstOperands, |
| 26162 | /* 73383 */ // GIR_Coverage, 301, |
| 26163 | /* 73383 */ GIR_EraseRootFromParent_Done, |
| 26164 | /* 73384 */ // Label 1658: @73384 |
| 26165 | /* 73384 */ GIM_Try, /*On fail goto*//*Label 1659*/ GIMT_Encode4(73472), // Rule ID 23270 // |
| 26166 | /* 73389 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26167 | /* 73392 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26168 | /* 73396 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26169 | /* 73400 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 26170 | /* 73404 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26171 | /* 73408 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26172 | /* 73412 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26173 | /* 73417 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26174 | /* 73421 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26175 | /* 73425 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26176 | /* 73428 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26177 | /* 73432 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26178 | /* 73436 */ // MIs[0] src1 |
| 26179 | /* 73436 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26180 | /* 73441 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26181 | /* 73443 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26182 | /* 73450 */ // (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) |
| 26183 | /* 73450 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND32mr), |
| 26184 | /* 73453 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26185 | /* 73457 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26186 | /* 73461 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26187 | /* 73464 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26188 | /* 73470 */ GIR_RootConstrainSelectedInstOperands, |
| 26189 | /* 73471 */ // GIR_Coverage, 23270, |
| 26190 | /* 73471 */ GIR_EraseRootFromParent_Done, |
| 26191 | /* 73472 */ // Label 1659: @73472 |
| 26192 | /* 73472 */ GIM_Try, /*On fail goto*//*Label 1660*/ GIMT_Encode4(73570), // Rule ID 751 // |
| 26193 | /* 73477 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26194 | /* 73480 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26195 | /* 73484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26196 | /* 73488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 26197 | /* 73492 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26198 | /* 73496 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26199 | /* 73500 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26200 | /* 73504 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26201 | /* 73508 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26202 | /* 73511 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26203 | /* 73515 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26204 | /* 73519 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26205 | /* 73524 */ // MIs[0] src1 |
| 26206 | /* 73524 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26207 | /* 73529 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26208 | /* 73531 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26209 | /* 73538 */ // (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) |
| 26210 | /* 73538 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26211 | /* 73542 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 26212 | /* 73548 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26213 | /* 73552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32mCL), |
| 26214 | /* 73555 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26215 | /* 73559 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26216 | /* 73562 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26217 | /* 73568 */ GIR_RootConstrainSelectedInstOperands, |
| 26218 | /* 73569 */ // GIR_Coverage, 751, |
| 26219 | /* 73569 */ GIR_EraseRootFromParent_Done, |
| 26220 | /* 73570 */ // Label 1660: @73570 |
| 26221 | /* 73570 */ GIM_Try, /*On fail goto*//*Label 1661*/ GIMT_Encode4(73668), // Rule ID 719 // |
| 26222 | /* 73575 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26223 | /* 73578 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26224 | /* 73582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26225 | /* 73586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 26226 | /* 73590 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26227 | /* 73594 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26228 | /* 73598 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26229 | /* 73602 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26230 | /* 73606 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26231 | /* 73609 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26232 | /* 73613 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26233 | /* 73617 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26234 | /* 73622 */ // MIs[0] src1 |
| 26235 | /* 73622 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26236 | /* 73627 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26237 | /* 73629 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26238 | /* 73636 */ // (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) |
| 26239 | /* 73636 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26240 | /* 73640 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 26241 | /* 73646 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26242 | /* 73650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32mCL), |
| 26243 | /* 73653 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26244 | /* 73657 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26245 | /* 73660 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26246 | /* 73666 */ GIR_RootConstrainSelectedInstOperands, |
| 26247 | /* 73667 */ // GIR_Coverage, 719, |
| 26248 | /* 73667 */ GIR_EraseRootFromParent_Done, |
| 26249 | /* 73668 */ // Label 1661: @73668 |
| 26250 | /* 73668 */ GIM_Try, /*On fail goto*//*Label 1662*/ GIMT_Encode4(73756), // Rule ID 337 // |
| 26251 | /* 73673 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26252 | /* 73676 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26253 | /* 73680 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26254 | /* 73684 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 26255 | /* 73688 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26256 | /* 73692 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26257 | /* 73696 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26258 | /* 73700 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26259 | /* 73704 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26260 | /* 73707 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26261 | /* 73711 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26262 | /* 73715 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26263 | /* 73720 */ // MIs[0] src1 |
| 26264 | /* 73720 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26265 | /* 73725 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26266 | /* 73727 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26267 | /* 73734 */ // (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) |
| 26268 | /* 73734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mr), |
| 26269 | /* 73737 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26270 | /* 73741 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26271 | /* 73745 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26272 | /* 73748 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26273 | /* 73754 */ GIR_RootConstrainSelectedInstOperands, |
| 26274 | /* 73755 */ // GIR_Coverage, 337, |
| 26275 | /* 73755 */ GIR_EraseRootFromParent_Done, |
| 26276 | /* 73756 */ // Label 1662: @73756 |
| 26277 | /* 73756 */ GIM_Try, /*On fail goto*//*Label 1663*/ GIMT_Encode4(73844), // Rule ID 23282 // |
| 26278 | /* 73761 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26279 | /* 73764 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26280 | /* 73768 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26281 | /* 73772 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 26282 | /* 73776 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26283 | /* 73780 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26284 | /* 73784 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26285 | /* 73789 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26286 | /* 73793 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26287 | /* 73797 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26288 | /* 73800 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26289 | /* 73804 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26290 | /* 73808 */ // MIs[0] src1 |
| 26291 | /* 73808 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26292 | /* 73813 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26293 | /* 73815 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26294 | /* 73822 */ // (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) |
| 26295 | /* 73822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR32mr), |
| 26296 | /* 73825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26297 | /* 73829 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26298 | /* 73833 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26299 | /* 73836 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26300 | /* 73842 */ GIR_RootConstrainSelectedInstOperands, |
| 26301 | /* 73843 */ // GIR_Coverage, 23282, |
| 26302 | /* 73843 */ GIR_EraseRootFromParent_Done, |
| 26303 | /* 73844 */ // Label 1663: @73844 |
| 26304 | /* 73844 */ GIM_Try, /*On fail goto*//*Label 1664*/ GIMT_Encode4(73942), // Rule ID 783 // |
| 26305 | /* 73849 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26306 | /* 73852 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26307 | /* 73856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26308 | /* 73860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 26309 | /* 73864 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26310 | /* 73868 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26311 | /* 73872 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26312 | /* 73876 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26313 | /* 73880 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26314 | /* 73883 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26315 | /* 73887 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26316 | /* 73891 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26317 | /* 73896 */ // MIs[0] src1 |
| 26318 | /* 73896 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26319 | /* 73901 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26320 | /* 73903 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26321 | /* 73910 */ // (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) |
| 26322 | /* 73910 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26323 | /* 73914 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 26324 | /* 73920 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26325 | /* 73924 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32mCL), |
| 26326 | /* 73927 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26327 | /* 73931 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26328 | /* 73934 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26329 | /* 73940 */ GIR_RootConstrainSelectedInstOperands, |
| 26330 | /* 73941 */ // GIR_Coverage, 783, |
| 26331 | /* 73941 */ GIR_EraseRootFromParent_Done, |
| 26332 | /* 73942 */ // Label 1664: @73942 |
| 26333 | /* 73942 */ GIM_Try, /*On fail goto*//*Label 1665*/ GIMT_Encode4(74040), // Rule ID 815 // |
| 26334 | /* 73947 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26335 | /* 73950 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26336 | /* 73954 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26337 | /* 73958 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 26338 | /* 73962 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26339 | /* 73966 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26340 | /* 73970 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26341 | /* 73974 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26342 | /* 73978 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26343 | /* 73981 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26344 | /* 73985 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26345 | /* 73989 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26346 | /* 73994 */ // MIs[0] src1 |
| 26347 | /* 73994 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26348 | /* 73999 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26349 | /* 74001 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26350 | /* 74008 */ // (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) |
| 26351 | /* 74008 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26352 | /* 74012 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 26353 | /* 74018 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26354 | /* 74022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32mCL), |
| 26355 | /* 74025 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26356 | /* 74029 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26357 | /* 74032 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26358 | /* 74038 */ GIR_RootConstrainSelectedInstOperands, |
| 26359 | /* 74039 */ // GIR_Coverage, 815, |
| 26360 | /* 74039 */ GIR_EraseRootFromParent_Done, |
| 26361 | /* 74040 */ // Label 1665: @74040 |
| 26362 | /* 74040 */ GIM_Try, /*On fail goto*//*Label 1666*/ GIMT_Encode4(74138), // Rule ID 687 // |
| 26363 | /* 74045 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26364 | /* 74048 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26365 | /* 74052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26366 | /* 74056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 26367 | /* 74060 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26368 | /* 74064 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26369 | /* 74068 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26370 | /* 74072 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26371 | /* 74076 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26372 | /* 74079 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26373 | /* 74083 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 26374 | /* 74087 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 26375 | /* 74092 */ // MIs[0] src1 |
| 26376 | /* 74092 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26377 | /* 74097 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26378 | /* 74099 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26379 | /* 74106 */ // (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) |
| 26380 | /* 74106 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 26381 | /* 74110 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 26382 | /* 74116 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 26383 | /* 74120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32mCL), |
| 26384 | /* 74123 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26385 | /* 74127 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26386 | /* 74130 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26387 | /* 74136 */ GIR_RootConstrainSelectedInstOperands, |
| 26388 | /* 74137 */ // GIR_Coverage, 687, |
| 26389 | /* 74137 */ GIR_EraseRootFromParent_Done, |
| 26390 | /* 74138 */ // Label 1666: @74138 |
| 26391 | /* 74138 */ GIM_Try, /*On fail goto*//*Label 1667*/ GIMT_Encode4(74226), // Rule ID 445 // |
| 26392 | /* 74143 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26393 | /* 74146 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26394 | /* 74150 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26395 | /* 74154 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 26396 | /* 74158 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26397 | /* 74162 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26398 | /* 74166 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26399 | /* 74170 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26400 | /* 74174 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26401 | /* 74177 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26402 | /* 74181 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26403 | /* 74185 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26404 | /* 74190 */ // MIs[0] src1 |
| 26405 | /* 74190 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26406 | /* 74195 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26407 | /* 74197 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26408 | /* 74204 */ // (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) |
| 26409 | /* 74204 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB32mr), |
| 26410 | /* 74207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26411 | /* 74211 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26412 | /* 74215 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26413 | /* 74218 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26414 | /* 74224 */ GIR_RootConstrainSelectedInstOperands, |
| 26415 | /* 74225 */ // GIR_Coverage, 445, |
| 26416 | /* 74225 */ GIR_EraseRootFromParent_Done, |
| 26417 | /* 74226 */ // Label 1667: @74226 |
| 26418 | /* 74226 */ GIM_Try, /*On fail goto*//*Label 1668*/ GIMT_Encode4(74314), // Rule ID 373 // |
| 26419 | /* 74231 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26420 | /* 74234 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26421 | /* 74238 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26422 | /* 74242 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 26423 | /* 74246 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26424 | /* 74250 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26425 | /* 74254 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26426 | /* 74258 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26427 | /* 74262 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26428 | /* 74265 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26429 | /* 74269 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26430 | /* 74273 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26431 | /* 74278 */ // MIs[0] src1 |
| 26432 | /* 74278 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26433 | /* 74283 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26434 | /* 74285 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26435 | /* 74292 */ // (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) |
| 26436 | /* 74292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mr), |
| 26437 | /* 74295 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26438 | /* 74299 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 26439 | /* 74303 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26440 | /* 74306 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26441 | /* 74312 */ GIR_RootConstrainSelectedInstOperands, |
| 26442 | /* 74313 */ // GIR_Coverage, 373, |
| 26443 | /* 74313 */ GIR_EraseRootFromParent_Done, |
| 26444 | /* 74314 */ // Label 1668: @74314 |
| 26445 | /* 74314 */ GIM_Try, /*On fail goto*//*Label 1669*/ GIMT_Encode4(74402), // Rule ID 23294 // |
| 26446 | /* 74319 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26447 | /* 74322 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26448 | /* 74326 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26449 | /* 74330 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 26450 | /* 74334 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26451 | /* 74338 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26452 | /* 74342 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26453 | /* 74347 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26454 | /* 74351 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26455 | /* 74355 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26456 | /* 74358 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26457 | /* 74362 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26458 | /* 74366 */ // MIs[0] src1 |
| 26459 | /* 74366 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26460 | /* 74371 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26461 | /* 74373 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26462 | /* 74380 */ // (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) |
| 26463 | /* 74380 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR32mr), |
| 26464 | /* 74383 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26465 | /* 74387 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 26466 | /* 74391 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26467 | /* 74394 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26468 | /* 74400 */ GIR_RootConstrainSelectedInstOperands, |
| 26469 | /* 74401 */ // GIR_Coverage, 23294, |
| 26470 | /* 74401 */ GIR_EraseRootFromParent_Done, |
| 26471 | /* 74402 */ // Label 1669: @74402 |
| 26472 | /* 74402 */ GIM_Try, /*On fail goto*//*Label 1670*/ GIMT_Encode4(74456), // Rule ID 26 // |
| 26473 | /* 74407 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26474 | /* 74410 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26475 | /* 74414 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26476 | /* 74418 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 26477 | /* 74422 */ // MIs[1] Operand 1 |
| 26478 | /* 74422 */ // No operand predicates |
| 26479 | /* 74422 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_imm_su), |
| 26480 | /* 74426 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26481 | /* 74430 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26482 | /* 74432 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26483 | /* 74439 */ // (st (imm:{ *:[i32] })<<P:Predicate_imm_su>>:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV32mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 26484 | /* 74439 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32mi), |
| 26485 | /* 74442 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26486 | /* 74446 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 26487 | /* 74449 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26488 | /* 74454 */ GIR_RootConstrainSelectedInstOperands, |
| 26489 | /* 74455 */ // GIR_Coverage, 26, |
| 26490 | /* 74455 */ GIR_EraseRootFromParent_Done, |
| 26491 | /* 74456 */ // Label 1670: @74456 |
| 26492 | /* 74456 */ GIM_Try, /*On fail goto*//*Label 1671*/ GIMT_Encode4(74522), // Rule ID 22586 // |
| 26493 | /* 74461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 26494 | /* 74464 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26495 | /* 74467 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26496 | /* 74474 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26497 | /* 74478 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 26498 | /* 74482 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26499 | /* 74486 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26500 | /* 74491 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26501 | /* 74495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26502 | /* 74497 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26503 | /* 74504 */ // (atomic_store (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (MOVSSmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26504 | /* 74504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSSmr), |
| 26505 | /* 74507 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26506 | /* 74511 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26507 | /* 74515 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26508 | /* 74520 */ GIR_RootConstrainSelectedInstOperands, |
| 26509 | /* 74521 */ // GIR_Coverage, 22586, |
| 26510 | /* 74521 */ GIR_EraseRootFromParent_Done, |
| 26511 | /* 74522 */ // Label 1671: @74522 |
| 26512 | /* 74522 */ GIM_Try, /*On fail goto*//*Label 1672*/ GIMT_Encode4(74588), // Rule ID 22587 // |
| 26513 | /* 74527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 26514 | /* 74530 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26515 | /* 74533 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26516 | /* 74540 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26517 | /* 74544 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 26518 | /* 74548 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26519 | /* 74552 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26520 | /* 74557 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26521 | /* 74561 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26522 | /* 74563 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26523 | /* 74570 */ // (atomic_store (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (VMOVSSmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26524 | /* 74570 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSmr), |
| 26525 | /* 74573 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26526 | /* 74577 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26527 | /* 74581 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26528 | /* 74586 */ GIR_RootConstrainSelectedInstOperands, |
| 26529 | /* 74587 */ // GIR_Coverage, 22587, |
| 26530 | /* 74587 */ GIR_EraseRootFromParent_Done, |
| 26531 | /* 74588 */ // Label 1672: @74588 |
| 26532 | /* 74588 */ GIM_Try, /*On fail goto*//*Label 1673*/ GIMT_Encode4(74654), // Rule ID 22588 // |
| 26533 | /* 74593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 26534 | /* 74596 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26535 | /* 74599 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26536 | /* 74606 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26537 | /* 74610 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 26538 | /* 74614 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26539 | /* 74618 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26540 | /* 74623 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26541 | /* 74627 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26542 | /* 74629 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26543 | /* 74636 */ // (atomic_store (bitconvert:{ *:[i32] } FR32:{ *:[f32] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (VMOVSSZmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26544 | /* 74636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSZmr), |
| 26545 | /* 74639 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26546 | /* 74643 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 26547 | /* 74647 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26548 | /* 74652 */ GIR_RootConstrainSelectedInstOperands, |
| 26549 | /* 74653 */ // GIR_Coverage, 22588, |
| 26550 | /* 74653 */ GIR_EraseRootFromParent_Done, |
| 26551 | /* 74654 */ // Label 1673: @74654 |
| 26552 | /* 74654 */ GIM_Try, /*On fail goto*//*Label 1674*/ GIMT_Encode4(74707), // Rule ID 22570 // |
| 26553 | /* 74659 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26554 | /* 74662 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26555 | /* 74669 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26556 | /* 74673 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 26557 | /* 74677 */ // MIs[1] Operand 1 |
| 26558 | /* 74677 */ // No operand predicates |
| 26559 | /* 74677 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26560 | /* 74681 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26561 | /* 74683 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26562 | /* 74690 */ // (atomic_store (imm:{ *:[i32] }):$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (MOV32mi addr:{ *:[iPTR] }:$dst, (imm:{ *:[i32] }):$src) |
| 26563 | /* 74690 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32mi), |
| 26564 | /* 74693 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26565 | /* 74697 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 26566 | /* 74700 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26567 | /* 74705 */ GIR_RootConstrainSelectedInstOperands, |
| 26568 | /* 74706 */ // GIR_Coverage, 22570, |
| 26569 | /* 74706 */ GIR_EraseRootFromParent_Done, |
| 26570 | /* 74707 */ // Label 1674: @74707 |
| 26571 | /* 74707 */ GIM_Try, /*On fail goto*//*Label 1675*/ GIMT_Encode4(74770), // Rule ID 52 // |
| 26572 | /* 74712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 26573 | /* 74715 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26574 | /* 74718 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26575 | /* 74722 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26576 | /* 74726 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 26577 | /* 74730 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26578 | /* 74734 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26579 | /* 74739 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26580 | /* 74743 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26581 | /* 74745 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26582 | /* 74752 */ // (st (bswap:{ *:[i32] } GR32:{ *:[i32] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE32mr addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src1) |
| 26583 | /* 74752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE32mr), |
| 26584 | /* 74755 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26585 | /* 74759 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 26586 | /* 74763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26587 | /* 74768 */ GIR_RootConstrainSelectedInstOperands, |
| 26588 | /* 74769 */ // GIR_Coverage, 52, |
| 26589 | /* 74769 */ GIR_EraseRootFromParent_Done, |
| 26590 | /* 74770 */ // Label 1675: @74770 |
| 26591 | /* 74770 */ GIM_Try, /*On fail goto*//*Label 1676*/ GIMT_Encode4(74833), // Rule ID 58 // |
| 26592 | /* 74775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 26593 | /* 74778 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26594 | /* 74781 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26595 | /* 74785 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26596 | /* 74789 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 26597 | /* 74793 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26598 | /* 74797 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26599 | /* 74802 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26600 | /* 74806 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 26601 | /* 74808 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26602 | /* 74815 */ // (st (bswap:{ *:[i32] } GR32:{ *:[i32] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE32mr_EVEX addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src1) |
| 26603 | /* 74815 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE32mr_EVEX), |
| 26604 | /* 74818 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26605 | /* 74822 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 26606 | /* 74826 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 26607 | /* 74831 */ GIR_RootConstrainSelectedInstOperands, |
| 26608 | /* 74832 */ // GIR_Coverage, 58, |
| 26609 | /* 74832 */ GIR_EraseRootFromParent_Done, |
| 26610 | /* 74833 */ // Label 1676: @74833 |
| 26611 | /* 74833 */ GIM_Try, /*On fail goto*//*Label 1677*/ GIMT_Encode4(74878), // Rule ID 22574 // |
| 26612 | /* 74838 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26613 | /* 74841 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 26614 | /* 74848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26615 | /* 74852 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26616 | /* 74856 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26617 | /* 74863 */ // (atomic_store GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_32>> => (MOV32mr addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26618 | /* 74863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32mr), |
| 26619 | /* 74866 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26620 | /* 74870 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26621 | /* 74872 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26622 | /* 74876 */ GIR_RootConstrainSelectedInstOperands, |
| 26623 | /* 74877 */ // GIR_Coverage, 22574, |
| 26624 | /* 74877 */ GIR_EraseRootFromParent_Done, |
| 26625 | /* 74878 */ // Label 1677: @74878 |
| 26626 | /* 74878 */ GIM_Try, /*On fail goto*//*Label 1678*/ GIMT_Encode4(74920), // Rule ID 34 // |
| 26627 | /* 74883 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26628 | /* 74886 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26629 | /* 74890 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 26630 | /* 74894 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26631 | /* 74898 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26632 | /* 74905 */ // (st GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV32mr addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 26633 | /* 74905 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32mr), |
| 26634 | /* 74908 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26635 | /* 74912 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26636 | /* 74914 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26637 | /* 74918 */ GIR_RootConstrainSelectedInstOperands, |
| 26638 | /* 74919 */ // GIR_Coverage, 34, |
| 26639 | /* 74919 */ GIR_EraseRootFromParent_Done, |
| 26640 | /* 74920 */ // Label 1678: @74920 |
| 26641 | /* 74920 */ GIM_Try, /*On fail goto*//*Label 1679*/ GIMT_Encode4(74968), // Rule ID 1095 // |
| 26642 | /* 74925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 26643 | /* 74928 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26644 | /* 74931 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26645 | /* 74935 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 26646 | /* 74939 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26647 | /* 74943 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26648 | /* 74950 */ // (st RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ST_Fp32m:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP32:{ *:[f32] }:$src) |
| 26649 | /* 74950 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp32m), |
| 26650 | /* 74953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 26651 | /* 74957 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26652 | /* 74959 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 26653 | /* 74962 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26654 | /* 74966 */ GIR_RootConstrainSelectedInstOperands, |
| 26655 | /* 74967 */ // GIR_Coverage, 1095, |
| 26656 | /* 74967 */ GIR_EraseRootFromParent_Done, |
| 26657 | /* 74968 */ // Label 1679: @74968 |
| 26658 | /* 74968 */ GIM_Try, /*On fail goto*//*Label 1680*/ GIMT_Encode4(75013), // Rule ID 1688 // |
| 26659 | /* 74973 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 26660 | /* 74976 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26661 | /* 74979 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26662 | /* 74983 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26663 | /* 74987 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26664 | /* 74991 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26665 | /* 74998 */ // (st FR32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSSmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26666 | /* 74998 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSmr), |
| 26667 | /* 75001 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26668 | /* 75005 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26669 | /* 75007 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26670 | /* 75011 */ GIR_RootConstrainSelectedInstOperands, |
| 26671 | /* 75012 */ // GIR_Coverage, 1688, |
| 26672 | /* 75012 */ GIR_EraseRootFromParent_Done, |
| 26673 | /* 75013 */ // Label 1680: @75013 |
| 26674 | /* 75013 */ GIM_Try, /*On fail goto*//*Label 1681*/ GIMT_Encode4(75058), // Rule ID 1690 // |
| 26675 | /* 75018 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 26676 | /* 75021 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26677 | /* 75024 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26678 | /* 75028 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 26679 | /* 75032 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26680 | /* 75036 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26681 | /* 75043 */ // (st FR32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVSSmr addr:{ *:[iPTR] }:$dst, FR32:{ *:[f32] }:$src) |
| 26682 | /* 75043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSSmr), |
| 26683 | /* 75046 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26684 | /* 75050 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26685 | /* 75052 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26686 | /* 75056 */ GIR_RootConstrainSelectedInstOperands, |
| 26687 | /* 75057 */ // GIR_Coverage, 1690, |
| 26688 | /* 75057 */ GIR_EraseRootFromParent_Done, |
| 26689 | /* 75058 */ // Label 1681: @75058 |
| 26690 | /* 75058 */ GIM_Try, /*On fail goto*//*Label 1682*/ GIMT_Encode4(75103), // Rule ID 4614 // |
| 26691 | /* 75063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 26692 | /* 75066 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26693 | /* 75069 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26694 | /* 75073 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 26695 | /* 75077 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 26696 | /* 75081 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26697 | /* 75088 */ // (st FR32X:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSSZmr addr:{ *:[iPTR] }:$dst, FR32X:{ *:[f32] }:$src) |
| 26698 | /* 75088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSSZmr), |
| 26699 | /* 75091 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26700 | /* 75095 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 26701 | /* 75097 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 26702 | /* 75101 */ GIR_RootConstrainSelectedInstOperands, |
| 26703 | /* 75102 */ // GIR_Coverage, 4614, |
| 26704 | /* 75102 */ GIR_EraseRootFromParent_Done, |
| 26705 | /* 75103 */ // Label 1682: @75103 |
| 26706 | /* 75103 */ GIM_Reject, |
| 26707 | /* 75104 */ // Label 1485: @75104 |
| 26708 | /* 75104 */ GIM_Try, /*On fail goto*//*Label 1683*/ GIMT_Encode4(75200), // Rule ID 22555 // |
| 26709 | /* 75109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 26710 | /* 75112 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26711 | /* 75115 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 26712 | /* 75122 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26713 | /* 75126 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26714 | /* 75130 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26715 | /* 75134 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26716 | /* 75138 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26717 | /* 75142 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26718 | /* 75146 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26719 | /* 75149 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26720 | /* 75153 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 26721 | /* 75160 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26722 | /* 75164 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 26723 | /* 75168 */ // MIs[0] dst |
| 26724 | /* 75168 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26725 | /* 75173 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26726 | /* 75175 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26727 | /* 75182 */ // (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) |
| 26728 | /* 75182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC64m), |
| 26729 | /* 75185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26730 | /* 75189 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26731 | /* 75192 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26732 | /* 75198 */ GIR_RootConstrainSelectedInstOperands, |
| 26733 | /* 75199 */ // GIR_Coverage, 22555, |
| 26734 | /* 75199 */ GIR_EraseRootFromParent_Done, |
| 26735 | /* 75200 */ // Label 1683: @75200 |
| 26736 | /* 75200 */ GIM_Try, /*On fail goto*//*Label 1684*/ GIMT_Encode4(75296), // Rule ID 22559 // |
| 26737 | /* 75205 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseIncDec), |
| 26738 | /* 75208 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26739 | /* 75211 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 26740 | /* 75218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26741 | /* 75222 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26742 | /* 75226 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26743 | /* 75230 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26744 | /* 75234 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26745 | /* 75238 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26746 | /* 75242 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26747 | /* 75245 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26748 | /* 75249 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 26749 | /* 75256 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26750 | /* 75260 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 26751 | /* 75264 */ // MIs[0] dst |
| 26752 | /* 75264 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26753 | /* 75269 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26754 | /* 75271 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26755 | /* 75278 */ // (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) |
| 26756 | /* 75278 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC64m), |
| 26757 | /* 75281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26758 | /* 75285 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26759 | /* 75288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26760 | /* 75294 */ GIR_RootConstrainSelectedInstOperands, |
| 26761 | /* 75295 */ // GIR_Coverage, 22559, |
| 26762 | /* 75295 */ GIR_EraseRootFromParent_Done, |
| 26763 | /* 75296 */ // Label 1684: @75296 |
| 26764 | /* 75296 */ GIM_Try, /*On fail goto*//*Label 1685*/ GIMT_Encode4(75389), // Rule ID 22563 // |
| 26765 | /* 75301 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26766 | /* 75304 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 26767 | /* 75311 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26768 | /* 75315 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 26769 | /* 75319 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26770 | /* 75323 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26771 | /* 75327 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 26772 | /* 75331 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26773 | /* 75335 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26774 | /* 75339 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26775 | /* 75342 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26776 | /* 75346 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 26777 | /* 75353 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26778 | /* 75357 */ // MIs[0] dst |
| 26779 | /* 75357 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26780 | /* 75362 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26781 | /* 75364 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26782 | /* 75371 */ // (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) |
| 26783 | /* 75371 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64m), |
| 26784 | /* 75374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26785 | /* 75378 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26786 | /* 75381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26787 | /* 75387 */ GIR_RootConstrainSelectedInstOperands, |
| 26788 | /* 75388 */ // GIR_Coverage, 22563, |
| 26789 | /* 75388 */ GIR_EraseRootFromParent_Done, |
| 26790 | /* 75389 */ // Label 1685: @75389 |
| 26791 | /* 75389 */ GIM_Try, /*On fail goto*//*Label 1686*/ GIMT_Encode4(75479), // Rule ID 22567 // |
| 26792 | /* 75394 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26793 | /* 75397 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 26794 | /* 75404 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26795 | /* 75408 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 26796 | /* 75412 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26797 | /* 75416 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26798 | /* 75420 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26799 | /* 75424 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26800 | /* 75428 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 26801 | /* 75431 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26802 | /* 75435 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 26803 | /* 75442 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26804 | /* 75446 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 26805 | /* 75450 */ // MIs[0] dst |
| 26806 | /* 75450 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26807 | /* 75455 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26808 | /* 75457 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26809 | /* 75464 */ // (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) |
| 26810 | /* 75464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64m), |
| 26811 | /* 75467 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26812 | /* 75471 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26813 | /* 75477 */ GIR_RootConstrainSelectedInstOperands, |
| 26814 | /* 75478 */ // GIR_Coverage, 22567, |
| 26815 | /* 75478 */ GIR_EraseRootFromParent_Done, |
| 26816 | /* 75479 */ // Label 1686: @75479 |
| 26817 | /* 75479 */ GIM_Try, /*On fail goto*//*Label 1687*/ GIMT_Encode4(75565), // Rule ID 229 // |
| 26818 | /* 75484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode_UseIncDec), |
| 26819 | /* 75487 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26820 | /* 75490 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26821 | /* 75494 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26822 | /* 75498 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26823 | /* 75502 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26824 | /* 75506 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26825 | /* 75510 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26826 | /* 75514 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26827 | /* 75518 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26828 | /* 75521 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26829 | /* 75525 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26830 | /* 75529 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 1, |
| 26831 | /* 75533 */ // MIs[0] src1 |
| 26832 | /* 75533 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26833 | /* 75538 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26834 | /* 75540 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26835 | /* 75547 */ // (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) |
| 26836 | /* 75547 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INC64m), |
| 26837 | /* 75550 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26838 | /* 75554 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26839 | /* 75557 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26840 | /* 75563 */ GIR_RootConstrainSelectedInstOperands, |
| 26841 | /* 75564 */ // GIR_Coverage, 229, |
| 26842 | /* 75564 */ GIR_EraseRootFromParent_Done, |
| 26843 | /* 75565 */ // Label 1687: @75565 |
| 26844 | /* 75565 */ GIM_Try, /*On fail goto*//*Label 1688*/ GIMT_Encode4(75651), // Rule ID 230 // |
| 26845 | /* 75570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode_UseIncDec), |
| 26846 | /* 75573 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26847 | /* 75576 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26848 | /* 75580 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26849 | /* 75584 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26850 | /* 75588 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26851 | /* 75592 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26852 | /* 75596 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26853 | /* 75600 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26854 | /* 75604 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26855 | /* 75607 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26856 | /* 75611 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26857 | /* 75615 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 26858 | /* 75619 */ // MIs[0] src1 |
| 26859 | /* 75619 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26860 | /* 75624 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26861 | /* 75626 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26862 | /* 75633 */ // (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) |
| 26863 | /* 75633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DEC64m), |
| 26864 | /* 75636 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 26865 | /* 75640 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26866 | /* 75643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26867 | /* 75649 */ GIR_RootConstrainSelectedInstOperands, |
| 26868 | /* 75650 */ // GIR_Coverage, 230, |
| 26869 | /* 75650 */ GIR_EraseRootFromParent_Done, |
| 26870 | /* 75651 */ // Label 1688: @75651 |
| 26871 | /* 75651 */ GIM_Try, /*On fail goto*//*Label 1689*/ GIMT_Encode4(75744), // Rule ID 22698 // |
| 26872 | /* 75656 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26873 | /* 75659 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26874 | /* 75663 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26875 | /* 75667 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26876 | /* 75671 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26877 | /* 75675 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26878 | /* 75679 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26879 | /* 75683 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26880 | /* 75687 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26881 | /* 75690 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26882 | /* 75694 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26883 | /* 75698 */ GIM_CheckConstantInt, /*MI*/1, /*Op*/2, GIMT_Encode8(128), |
| 26884 | /* 75709 */ // MIs[0] dst |
| 26885 | /* 75709 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26886 | /* 75714 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26887 | /* 75716 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26888 | /* 75723 */ // (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] }) |
| 26889 | /* 75723 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mi32), |
| 26890 | /* 75726 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26891 | /* 75730 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/128, |
| 26892 | /* 75733 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26893 | /* 75736 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26894 | /* 75742 */ GIR_RootConstrainSelectedInstOperands, |
| 26895 | /* 75743 */ // GIR_Coverage, 22698, |
| 26896 | /* 75743 */ GIR_EraseRootFromParent_Done, |
| 26897 | /* 75744 */ // Label 1689: @75744 |
| 26898 | /* 75744 */ GIM_Try, /*On fail goto*//*Label 1690*/ GIMT_Encode4(75844), // Rule ID 22706 // |
| 26899 | /* 75749 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26900 | /* 75752 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26901 | /* 75756 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26902 | /* 75760 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 26903 | /* 75764 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26904 | /* 75768 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26905 | /* 75772 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26906 | /* 75776 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26907 | /* 75780 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26908 | /* 75783 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26909 | /* 75787 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26910 | /* 75791 */ GIM_CheckConstantInt, /*MI*/1, /*Op*/2, GIMT_Encode8(2147483648), |
| 26911 | /* 75802 */ // MIs[0] dst |
| 26912 | /* 75802 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26913 | /* 75807 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26914 | /* 75809 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26915 | /* 75816 */ // (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] }) |
| 26916 | /* 75816 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mi32), |
| 26917 | /* 75819 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26918 | /* 75823 */ GIR_AddImm, /*InsnID*/0, /*Imm*/GIMT_Encode8(18446744071562067968u), |
| 26919 | /* 75833 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26920 | /* 75836 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26921 | /* 75842 */ GIR_RootConstrainSelectedInstOperands, |
| 26922 | /* 75843 */ // GIR_Coverage, 22706, |
| 26923 | /* 75843 */ GIR_EraseRootFromParent_Done, |
| 26924 | /* 75844 */ // Label 1690: @75844 |
| 26925 | /* 75844 */ GIM_Try, /*On fail goto*//*Label 1691*/ GIMT_Encode4(75930), // Rule ID 17605 // |
| 26926 | /* 75849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 26927 | /* 75852 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26928 | /* 75855 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26929 | /* 75859 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26930 | /* 75863 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 26931 | /* 75867 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26932 | /* 75871 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26933 | /* 75875 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26934 | /* 75879 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26935 | /* 75883 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26936 | /* 75886 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26937 | /* 75890 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26938 | /* 75894 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 63, |
| 26939 | /* 75898 */ // MIs[0] dst |
| 26940 | /* 75898 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26941 | /* 75903 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26942 | /* 75905 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26943 | /* 75912 */ // (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) |
| 26944 | /* 75912 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64m1), |
| 26945 | /* 75915 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26946 | /* 75919 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26947 | /* 75922 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26948 | /* 75928 */ GIR_RootConstrainSelectedInstOperands, |
| 26949 | /* 75929 */ // GIR_Coverage, 17605, |
| 26950 | /* 75929 */ GIR_EraseRootFromParent_Done, |
| 26951 | /* 75930 */ // Label 1691: @75930 |
| 26952 | /* 75930 */ GIM_Try, /*On fail goto*//*Label 1692*/ GIMT_Encode4(76016), // Rule ID 17609 // |
| 26953 | /* 75935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 26954 | /* 75938 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26955 | /* 75941 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26956 | /* 75945 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26957 | /* 75949 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 26958 | /* 75953 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26959 | /* 75957 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 26960 | /* 75961 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26961 | /* 75965 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26962 | /* 75969 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26963 | /* 75972 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26964 | /* 75976 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26965 | /* 75980 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 63, |
| 26966 | /* 75984 */ // MIs[0] dst |
| 26967 | /* 75984 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26968 | /* 75989 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26969 | /* 75991 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26970 | /* 75998 */ // (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) |
| 26971 | /* 75998 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64m1), |
| 26972 | /* 76001 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 26973 | /* 76005 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 26974 | /* 76008 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 26975 | /* 76014 */ GIR_RootConstrainSelectedInstOperands, |
| 26976 | /* 76015 */ // GIR_Coverage, 17609, |
| 26977 | /* 76015 */ GIR_EraseRootFromParent_Done, |
| 26978 | /* 76016 */ // Label 1692: @76016 |
| 26979 | /* 76016 */ GIM_Try, /*On fail goto*//*Label 1693*/ GIMT_Encode4(76102), // Rule ID 262 // |
| 26980 | /* 76021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 26981 | /* 76024 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26982 | /* 76027 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 26983 | /* 76031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 26984 | /* 76035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 26985 | /* 76039 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26986 | /* 76043 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26987 | /* 76047 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/1, 0, |
| 26988 | /* 76051 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26989 | /* 76055 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 26990 | /* 76059 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 26991 | /* 76062 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 26992 | /* 76066 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 26993 | /* 76070 */ // MIs[0] src1 |
| 26994 | /* 76070 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 26995 | /* 76075 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26996 | /* 76077 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 26997 | /* 76084 */ // (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) |
| 26998 | /* 76084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NEG64m), |
| 26999 | /* 76087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27000 | /* 76091 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27001 | /* 76094 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27002 | /* 76100 */ GIR_RootConstrainSelectedInstOperands, |
| 27003 | /* 76101 */ // GIR_Coverage, 262, |
| 27004 | /* 76101 */ GIR_EraseRootFromParent_Done, |
| 27005 | /* 76102 */ // Label 1693: @76102 |
| 27006 | /* 76102 */ GIM_Try, /*On fail goto*//*Label 1694*/ GIMT_Encode4(76185), // Rule ID 270 // |
| 27007 | /* 76107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27008 | /* 76110 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27009 | /* 76113 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27010 | /* 76117 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27011 | /* 76121 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27012 | /* 76125 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27013 | /* 76129 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27014 | /* 76133 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27015 | /* 76137 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27016 | /* 76141 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27017 | /* 76144 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27018 | /* 76148 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27019 | /* 76152 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 27020 | /* 76156 */ // MIs[0] src1 |
| 27021 | /* 76156 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27022 | /* 76161 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27023 | /* 76163 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27024 | /* 76170 */ // (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) |
| 27025 | /* 76170 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::NOT64m), |
| 27026 | /* 76173 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27027 | /* 76177 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27028 | /* 76183 */ GIR_RootConstrainSelectedInstOperands, |
| 27029 | /* 76184 */ // GIR_Coverage, 270, |
| 27030 | /* 76184 */ GIR_EraseRootFromParent_Done, |
| 27031 | /* 76185 */ // Label 1694: @76185 |
| 27032 | /* 76185 */ GIM_Try, /*On fail goto*//*Label 1695*/ GIMT_Encode4(76290), // Rule ID 22491 // |
| 27033 | /* 76190 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27034 | /* 76193 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27035 | /* 76200 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27036 | /* 76204 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27037 | /* 76208 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27038 | /* 76212 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27039 | /* 76216 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27040 | /* 76220 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27041 | /* 76224 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27042 | /* 76227 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27043 | /* 76231 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27044 | /* 76238 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27045 | /* 76242 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27046 | /* 76246 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27047 | /* 76250 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27048 | /* 76254 */ // MIs[3] Operand 1 |
| 27049 | /* 76254 */ // No operand predicates |
| 27050 | /* 76254 */ // MIs[0] dst |
| 27051 | /* 76254 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27052 | /* 76259 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27053 | /* 76261 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27054 | /* 76268 */ // (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) |
| 27055 | /* 76268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mi32), |
| 27056 | /* 76271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27057 | /* 76275 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27058 | /* 76278 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27059 | /* 76281 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27060 | /* 76288 */ GIR_RootConstrainSelectedInstOperands, |
| 27061 | /* 76289 */ // GIR_Coverage, 22491, |
| 27062 | /* 76289 */ GIR_EraseRootFromParent_Done, |
| 27063 | /* 76290 */ // Label 1695: @76290 |
| 27064 | /* 76290 */ GIM_Try, /*On fail goto*//*Label 1696*/ GIMT_Encode4(76395), // Rule ID 22499 // |
| 27065 | /* 76295 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27066 | /* 76298 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27067 | /* 76305 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27068 | /* 76309 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 27069 | /* 76313 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27070 | /* 76317 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27071 | /* 76321 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27072 | /* 76325 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27073 | /* 76329 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27074 | /* 76332 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27075 | /* 76336 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27076 | /* 76343 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27077 | /* 76347 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27078 | /* 76351 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27079 | /* 76355 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27080 | /* 76359 */ // MIs[3] Operand 1 |
| 27081 | /* 76359 */ // No operand predicates |
| 27082 | /* 76359 */ // MIs[0] dst |
| 27083 | /* 76359 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27084 | /* 76364 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27085 | /* 76366 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27086 | /* 76373 */ // (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) |
| 27087 | /* 76373 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mi32), |
| 27088 | /* 76376 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27089 | /* 76380 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27090 | /* 76383 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27091 | /* 76386 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27092 | /* 76393 */ GIR_RootConstrainSelectedInstOperands, |
| 27093 | /* 76394 */ // GIR_Coverage, 22499, |
| 27094 | /* 76394 */ GIR_EraseRootFromParent_Done, |
| 27095 | /* 76395 */ // Label 1696: @76395 |
| 27096 | /* 76395 */ GIM_Try, /*On fail goto*//*Label 1697*/ GIMT_Encode4(76500), // Rule ID 22507 // |
| 27097 | /* 76400 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27098 | /* 76403 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27099 | /* 76410 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27100 | /* 76414 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 27101 | /* 76418 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27102 | /* 76422 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27103 | /* 76426 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27104 | /* 76430 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27105 | /* 76434 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27106 | /* 76437 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27107 | /* 76441 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27108 | /* 76448 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27109 | /* 76452 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27110 | /* 76456 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27111 | /* 76460 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27112 | /* 76464 */ // MIs[3] Operand 1 |
| 27113 | /* 76464 */ // No operand predicates |
| 27114 | /* 76464 */ // MIs[0] dst |
| 27115 | /* 76464 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27116 | /* 76469 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27117 | /* 76471 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27118 | /* 76478 */ // (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) |
| 27119 | /* 76478 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mi32), |
| 27120 | /* 76481 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27121 | /* 76485 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27122 | /* 76488 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27123 | /* 76491 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27124 | /* 76498 */ GIR_RootConstrainSelectedInstOperands, |
| 27125 | /* 76499 */ // GIR_Coverage, 22507, |
| 27126 | /* 76499 */ GIR_EraseRootFromParent_Done, |
| 27127 | /* 76500 */ // Label 1697: @76500 |
| 27128 | /* 76500 */ GIM_Try, /*On fail goto*//*Label 1698*/ GIMT_Encode4(76605), // Rule ID 22523 // |
| 27129 | /* 76505 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27130 | /* 76508 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27131 | /* 76515 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27132 | /* 76519 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 27133 | /* 76523 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27134 | /* 76527 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27135 | /* 76531 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27136 | /* 76535 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27137 | /* 76539 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27138 | /* 76542 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27139 | /* 76546 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27140 | /* 76553 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27141 | /* 76557 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27142 | /* 76561 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27143 | /* 76565 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27144 | /* 76569 */ // MIs[3] Operand 1 |
| 27145 | /* 76569 */ // No operand predicates |
| 27146 | /* 76569 */ // MIs[0] dst |
| 27147 | /* 76569 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27148 | /* 76574 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27149 | /* 76576 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27150 | /* 76583 */ // (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) |
| 27151 | /* 76583 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mi32), |
| 27152 | /* 76586 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27153 | /* 76590 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27154 | /* 76593 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27155 | /* 76596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27156 | /* 76603 */ GIR_RootConstrainSelectedInstOperands, |
| 27157 | /* 76604 */ // GIR_Coverage, 22523, |
| 27158 | /* 76604 */ GIR_EraseRootFromParent_Done, |
| 27159 | /* 76605 */ // Label 1698: @76605 |
| 27160 | /* 76605 */ GIM_Try, /*On fail goto*//*Label 1699*/ GIMT_Encode4(76710), // Rule ID 22515 // |
| 27161 | /* 76610 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27162 | /* 76613 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27163 | /* 76620 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27164 | /* 76624 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27165 | /* 76628 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27166 | /* 76632 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27167 | /* 76636 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27168 | /* 76640 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27169 | /* 76644 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27170 | /* 76647 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27171 | /* 76651 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27172 | /* 76658 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27173 | /* 76662 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27174 | /* 76666 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27175 | /* 76670 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 27176 | /* 76674 */ // MIs[3] Operand 1 |
| 27177 | /* 76674 */ // No operand predicates |
| 27178 | /* 76674 */ // MIs[0] dst |
| 27179 | /* 76674 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27180 | /* 76679 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27181 | /* 76681 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27182 | /* 76688 */ // (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) |
| 27183 | /* 76688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mi32), |
| 27184 | /* 76691 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27185 | /* 76695 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src |
| 27186 | /* 76698 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27187 | /* 76701 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27188 | /* 76708 */ GIR_RootConstrainSelectedInstOperands, |
| 27189 | /* 76709 */ // GIR_Coverage, 22515, |
| 27190 | /* 76709 */ GIR_EraseRootFromParent_Done, |
| 27191 | /* 76710 */ // Label 1699: @76710 |
| 27192 | /* 76710 */ GIM_Try, /*On fail goto*//*Label 1700*/ GIMT_Encode4(76814), // Rule ID 835 // |
| 27193 | /* 76715 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27194 | /* 76718 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27195 | /* 76722 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27196 | /* 76726 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHL), |
| 27197 | /* 76730 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27198 | /* 76734 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27199 | /* 76738 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 27200 | /* 76742 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27201 | /* 76746 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27202 | /* 76750 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27203 | /* 76753 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27204 | /* 76757 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27205 | /* 76761 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27206 | /* 76766 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/3, // MIs[3] |
| 27207 | /* 76770 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27208 | /* 76774 */ // MIs[3] Operand 1 |
| 27209 | /* 76774 */ // No operand predicates |
| 27210 | /* 76774 */ // MIs[0] src1 |
| 27211 | /* 76774 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27212 | /* 76779 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27213 | /* 76781 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27214 | /* 76788 */ // (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) |
| 27215 | /* 76788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64mri8), |
| 27216 | /* 76791 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27217 | /* 76795 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 27218 | /* 76799 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src3 |
| 27219 | /* 76802 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27220 | /* 76805 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27221 | /* 76812 */ GIR_RootConstrainSelectedInstOperands, |
| 27222 | /* 76813 */ // GIR_Coverage, 835, |
| 27223 | /* 76813 */ GIR_EraseRootFromParent_Done, |
| 27224 | /* 76814 */ // Label 1700: @76814 |
| 27225 | /* 76814 */ GIM_Try, /*On fail goto*//*Label 1701*/ GIMT_Encode4(76918), // Rule ID 859 // |
| 27226 | /* 76819 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27227 | /* 76822 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27228 | /* 76826 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27229 | /* 76830 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHR), |
| 27230 | /* 76834 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27231 | /* 76838 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27232 | /* 76842 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 27233 | /* 76846 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27234 | /* 76851 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27235 | /* 76855 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27236 | /* 76859 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27237 | /* 76862 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27238 | /* 76866 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27239 | /* 76870 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/3, // MIs[3] |
| 27240 | /* 76874 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27241 | /* 76878 */ // MIs[3] Operand 1 |
| 27242 | /* 76878 */ // No operand predicates |
| 27243 | /* 76878 */ // MIs[0] src1 |
| 27244 | /* 76878 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27245 | /* 76883 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27246 | /* 76885 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27247 | /* 76892 */ // (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) |
| 27248 | /* 76892 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64mri8), |
| 27249 | /* 76895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27250 | /* 76899 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 27251 | /* 76903 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src3 |
| 27252 | /* 76906 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27253 | /* 76909 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27254 | /* 76916 */ GIR_RootConstrainSelectedInstOperands, |
| 27255 | /* 76917 */ // GIR_Coverage, 859, |
| 27256 | /* 76917 */ GIR_EraseRootFromParent_Done, |
| 27257 | /* 76918 */ // Label 1701: @76918 |
| 27258 | /* 76918 */ GIM_Try, /*On fail goto*//*Label 1702*/ GIMT_Encode4(77012), // Rule ID 736 // |
| 27259 | /* 76923 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27260 | /* 76926 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27261 | /* 76929 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27262 | /* 76933 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27263 | /* 76937 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 27264 | /* 76941 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27265 | /* 76945 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27266 | /* 76949 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27267 | /* 76953 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27268 | /* 76957 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27269 | /* 76960 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27270 | /* 76964 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27271 | /* 76968 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27272 | /* 76972 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27273 | /* 76976 */ // MIs[3] Operand 1 |
| 27274 | /* 76976 */ // No operand predicates |
| 27275 | /* 76976 */ // MIs[0] src1 |
| 27276 | /* 76976 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27277 | /* 76981 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27278 | /* 76983 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27279 | /* 76990 */ // (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) |
| 27280 | /* 76990 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64mi), |
| 27281 | /* 76993 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27282 | /* 76997 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27283 | /* 77000 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27284 | /* 77003 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27285 | /* 77010 */ GIR_RootConstrainSelectedInstOperands, |
| 27286 | /* 77011 */ // GIR_Coverage, 736, |
| 27287 | /* 77011 */ GIR_EraseRootFromParent_Done, |
| 27288 | /* 77012 */ // Label 1702: @77012 |
| 27289 | /* 77012 */ GIM_Try, /*On fail goto*//*Label 1703*/ GIMT_Encode4(77106), // Rule ID 704 // |
| 27290 | /* 77017 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27291 | /* 77020 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27292 | /* 77023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27293 | /* 77027 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27294 | /* 77031 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 27295 | /* 77035 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27296 | /* 77039 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27297 | /* 77043 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27298 | /* 77047 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27299 | /* 77051 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27300 | /* 77054 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27301 | /* 77058 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27302 | /* 77062 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27303 | /* 77066 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27304 | /* 77070 */ // MIs[3] Operand 1 |
| 27305 | /* 77070 */ // No operand predicates |
| 27306 | /* 77070 */ // MIs[0] src1 |
| 27307 | /* 77070 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27308 | /* 77075 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27309 | /* 77077 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27310 | /* 77084 */ // (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) |
| 27311 | /* 77084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64mi), |
| 27312 | /* 77087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27313 | /* 77091 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27314 | /* 77094 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27315 | /* 77097 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27316 | /* 77104 */ GIR_RootConstrainSelectedInstOperands, |
| 27317 | /* 77105 */ // GIR_Coverage, 704, |
| 27318 | /* 77105 */ GIR_EraseRootFromParent_Done, |
| 27319 | /* 77106 */ // Label 1703: @77106 |
| 27320 | /* 77106 */ GIM_Try, /*On fail goto*//*Label 1704*/ GIMT_Encode4(77200), // Rule ID 768 // |
| 27321 | /* 77111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27322 | /* 77114 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27323 | /* 77117 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27324 | /* 77121 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27325 | /* 77125 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 27326 | /* 77129 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27327 | /* 77133 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27328 | /* 77137 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27329 | /* 77141 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27330 | /* 77145 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27331 | /* 77148 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27332 | /* 77152 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27333 | /* 77156 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27334 | /* 77160 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27335 | /* 77164 */ // MIs[3] Operand 1 |
| 27336 | /* 77164 */ // No operand predicates |
| 27337 | /* 77164 */ // MIs[0] src1 |
| 27338 | /* 77164 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27339 | /* 77169 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27340 | /* 77171 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27341 | /* 77178 */ // (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) |
| 27342 | /* 77178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64mi), |
| 27343 | /* 77181 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27344 | /* 77185 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27345 | /* 77188 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27346 | /* 77191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27347 | /* 77198 */ GIR_RootConstrainSelectedInstOperands, |
| 27348 | /* 77199 */ // GIR_Coverage, 768, |
| 27349 | /* 77199 */ GIR_EraseRootFromParent_Done, |
| 27350 | /* 77200 */ // Label 1704: @77200 |
| 27351 | /* 77200 */ GIM_Try, /*On fail goto*//*Label 1705*/ GIMT_Encode4(77294), // Rule ID 800 // |
| 27352 | /* 77205 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27353 | /* 77208 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27354 | /* 77211 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27355 | /* 77215 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27356 | /* 77219 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 27357 | /* 77223 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27358 | /* 77227 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27359 | /* 77231 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27360 | /* 77235 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27361 | /* 77239 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27362 | /* 77242 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27363 | /* 77246 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27364 | /* 77250 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27365 | /* 77254 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27366 | /* 77258 */ // MIs[3] Operand 1 |
| 27367 | /* 77258 */ // No operand predicates |
| 27368 | /* 77258 */ // MIs[0] src1 |
| 27369 | /* 77258 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27370 | /* 77263 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27371 | /* 77265 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27372 | /* 77272 */ // (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) |
| 27373 | /* 77272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64mi), |
| 27374 | /* 77275 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27375 | /* 77279 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27376 | /* 77282 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27377 | /* 77285 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27378 | /* 77292 */ GIR_RootConstrainSelectedInstOperands, |
| 27379 | /* 77293 */ // GIR_Coverage, 800, |
| 27380 | /* 77293 */ GIR_EraseRootFromParent_Done, |
| 27381 | /* 77294 */ // Label 1705: @77294 |
| 27382 | /* 77294 */ GIM_Try, /*On fail goto*//*Label 1706*/ GIMT_Encode4(77388), // Rule ID 672 // |
| 27383 | /* 77299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27384 | /* 77302 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27385 | /* 77305 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27386 | /* 77309 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27387 | /* 77313 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 27388 | /* 77317 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27389 | /* 77321 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27390 | /* 77325 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27391 | /* 77329 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27392 | /* 77333 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27393 | /* 77336 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27394 | /* 77340 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27395 | /* 77344 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 27396 | /* 77348 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 27397 | /* 77352 */ // MIs[3] Operand 1 |
| 27398 | /* 77352 */ // No operand predicates |
| 27399 | /* 77352 */ // MIs[0] src1 |
| 27400 | /* 77352 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27401 | /* 77357 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 27402 | /* 77359 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27403 | /* 77366 */ // (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) |
| 27404 | /* 77366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64mi), |
| 27405 | /* 77369 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27406 | /* 77373 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/3, // src2 |
| 27407 | /* 77376 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27408 | /* 77379 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 27409 | /* 77386 */ GIR_RootConstrainSelectedInstOperands, |
| 27410 | /* 77387 */ // GIR_Coverage, 672, |
| 27411 | /* 77387 */ GIR_EraseRootFromParent_Done, |
| 27412 | /* 77388 */ // Label 1706: @77388 |
| 27413 | /* 77388 */ GIM_Try, /*On fail goto*//*Label 1707*/ GIMT_Encode4(77486), // Rule ID 22495 // |
| 27414 | /* 77393 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27415 | /* 77396 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27416 | /* 77403 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27417 | /* 77407 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27418 | /* 77411 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27419 | /* 77415 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27420 | /* 77419 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27421 | /* 77423 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27422 | /* 77427 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27423 | /* 77430 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27424 | /* 77434 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27425 | /* 77441 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27426 | /* 77445 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27427 | /* 77450 */ // MIs[0] dst |
| 27428 | /* 77450 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27429 | /* 77455 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27430 | /* 77457 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27431 | /* 77464 */ // (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) |
| 27432 | /* 77464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mr), |
| 27433 | /* 77467 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27434 | /* 77471 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27435 | /* 77475 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27436 | /* 77478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27437 | /* 77484 */ GIR_RootConstrainSelectedInstOperands, |
| 27438 | /* 77485 */ // GIR_Coverage, 22495, |
| 27439 | /* 77485 */ GIR_EraseRootFromParent_Done, |
| 27440 | /* 77486 */ // Label 1707: @77486 |
| 27441 | /* 77486 */ GIM_Try, /*On fail goto*//*Label 1708*/ GIMT_Encode4(77584), // Rule ID 26087 // |
| 27442 | /* 77491 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27443 | /* 77494 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27444 | /* 77501 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27445 | /* 77505 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27446 | /* 77509 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27447 | /* 77513 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27448 | /* 77517 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27449 | /* 77522 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27450 | /* 77526 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27451 | /* 77530 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27452 | /* 77533 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27453 | /* 77537 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27454 | /* 77544 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27455 | /* 77548 */ // MIs[0] dst |
| 27456 | /* 77548 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27457 | /* 77553 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27458 | /* 77555 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27459 | /* 77562 */ // (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) |
| 27460 | /* 77562 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mr), |
| 27461 | /* 77565 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27462 | /* 77569 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 27463 | /* 77573 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27464 | /* 77576 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27465 | /* 77582 */ GIR_RootConstrainSelectedInstOperands, |
| 27466 | /* 77583 */ // GIR_Coverage, 26087, |
| 27467 | /* 77583 */ GIR_EraseRootFromParent_Done, |
| 27468 | /* 77584 */ // Label 1708: @77584 |
| 27469 | /* 77584 */ GIM_Try, /*On fail goto*//*Label 1709*/ GIMT_Encode4(77682), // Rule ID 22503 // |
| 27470 | /* 77589 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27471 | /* 77592 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27472 | /* 77599 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27473 | /* 77603 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 27474 | /* 77607 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27475 | /* 77611 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27476 | /* 77615 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27477 | /* 77619 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27478 | /* 77623 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27479 | /* 77626 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27480 | /* 77630 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27481 | /* 77637 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27482 | /* 77641 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27483 | /* 77646 */ // MIs[0] dst |
| 27484 | /* 77646 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27485 | /* 77651 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27486 | /* 77653 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27487 | /* 77660 */ // (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) |
| 27488 | /* 77660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mr), |
| 27489 | /* 77663 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27490 | /* 77667 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27491 | /* 77671 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27492 | /* 77674 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27493 | /* 77680 */ GIR_RootConstrainSelectedInstOperands, |
| 27494 | /* 77681 */ // GIR_Coverage, 22503, |
| 27495 | /* 77681 */ GIR_EraseRootFromParent_Done, |
| 27496 | /* 77682 */ // Label 1709: @77682 |
| 27497 | /* 77682 */ GIM_Try, /*On fail goto*//*Label 1710*/ GIMT_Encode4(77780), // Rule ID 26091 // |
| 27498 | /* 77687 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27499 | /* 77690 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27500 | /* 77697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27501 | /* 77701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 27502 | /* 77705 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27503 | /* 77709 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27504 | /* 77713 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27505 | /* 77718 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27506 | /* 77722 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27507 | /* 77726 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27508 | /* 77729 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27509 | /* 77733 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27510 | /* 77740 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27511 | /* 77744 */ // MIs[0] dst |
| 27512 | /* 77744 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27513 | /* 77749 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27514 | /* 77751 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27515 | /* 77758 */ // (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) |
| 27516 | /* 77758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mr), |
| 27517 | /* 77761 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27518 | /* 77765 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 27519 | /* 77769 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27520 | /* 77772 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27521 | /* 77778 */ GIR_RootConstrainSelectedInstOperands, |
| 27522 | /* 77779 */ // GIR_Coverage, 26091, |
| 27523 | /* 77779 */ GIR_EraseRootFromParent_Done, |
| 27524 | /* 77780 */ // Label 1710: @77780 |
| 27525 | /* 77780 */ GIM_Try, /*On fail goto*//*Label 1711*/ GIMT_Encode4(77878), // Rule ID 22511 // |
| 27526 | /* 77785 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27527 | /* 77788 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27528 | /* 77795 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27529 | /* 77799 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 27530 | /* 77803 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27531 | /* 77807 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27532 | /* 77811 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27533 | /* 77815 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27534 | /* 77819 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27535 | /* 77822 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27536 | /* 77826 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27537 | /* 77833 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27538 | /* 77837 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27539 | /* 77842 */ // MIs[0] dst |
| 27540 | /* 77842 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27541 | /* 77847 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27542 | /* 77849 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27543 | /* 77856 */ // (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) |
| 27544 | /* 77856 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mr), |
| 27545 | /* 77859 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27546 | /* 77863 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27547 | /* 77867 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27548 | /* 77870 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27549 | /* 77876 */ GIR_RootConstrainSelectedInstOperands, |
| 27550 | /* 77877 */ // GIR_Coverage, 22511, |
| 27551 | /* 77877 */ GIR_EraseRootFromParent_Done, |
| 27552 | /* 77878 */ // Label 1711: @77878 |
| 27553 | /* 77878 */ GIM_Try, /*On fail goto*//*Label 1712*/ GIMT_Encode4(77976), // Rule ID 26095 // |
| 27554 | /* 77883 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27555 | /* 77886 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27556 | /* 77893 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27557 | /* 77897 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 27558 | /* 77901 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27559 | /* 77905 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27560 | /* 77909 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27561 | /* 77914 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27562 | /* 77918 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27563 | /* 77922 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27564 | /* 77925 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27565 | /* 77929 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27566 | /* 77936 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27567 | /* 77940 */ // MIs[0] dst |
| 27568 | /* 77940 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27569 | /* 77945 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27570 | /* 77947 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27571 | /* 77954 */ // (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) |
| 27572 | /* 77954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mr), |
| 27573 | /* 77957 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27574 | /* 77961 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 27575 | /* 77965 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27576 | /* 77968 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27577 | /* 77974 */ GIR_RootConstrainSelectedInstOperands, |
| 27578 | /* 77975 */ // GIR_Coverage, 26095, |
| 27579 | /* 77975 */ GIR_EraseRootFromParent_Done, |
| 27580 | /* 77976 */ // Label 1712: @77976 |
| 27581 | /* 77976 */ GIM_Try, /*On fail goto*//*Label 1713*/ GIMT_Encode4(78074), // Rule ID 22527 // |
| 27582 | /* 77981 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27583 | /* 77984 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27584 | /* 77991 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27585 | /* 77995 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 27586 | /* 77999 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27587 | /* 78003 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27588 | /* 78007 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27589 | /* 78011 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27590 | /* 78015 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27591 | /* 78018 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27592 | /* 78022 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27593 | /* 78029 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27594 | /* 78033 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27595 | /* 78038 */ // MIs[0] dst |
| 27596 | /* 78038 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27597 | /* 78043 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27598 | /* 78045 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27599 | /* 78052 */ // (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) |
| 27600 | /* 78052 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mr), |
| 27601 | /* 78055 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27602 | /* 78059 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27603 | /* 78063 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27604 | /* 78066 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27605 | /* 78072 */ GIR_RootConstrainSelectedInstOperands, |
| 27606 | /* 78073 */ // GIR_Coverage, 22527, |
| 27607 | /* 78073 */ GIR_EraseRootFromParent_Done, |
| 27608 | /* 78074 */ // Label 1713: @78074 |
| 27609 | /* 78074 */ GIM_Try, /*On fail goto*//*Label 1714*/ GIMT_Encode4(78172), // Rule ID 22519 // |
| 27610 | /* 78079 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27611 | /* 78082 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27612 | /* 78089 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27613 | /* 78093 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27614 | /* 78097 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27615 | /* 78101 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27616 | /* 78105 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27617 | /* 78109 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27618 | /* 78113 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27619 | /* 78116 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27620 | /* 78120 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27621 | /* 78127 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27622 | /* 78131 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27623 | /* 78136 */ // MIs[0] dst |
| 27624 | /* 78136 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27625 | /* 78141 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27626 | /* 78143 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27627 | /* 78150 */ // (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) |
| 27628 | /* 78150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mr), |
| 27629 | /* 78153 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27630 | /* 78157 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src |
| 27631 | /* 78161 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27632 | /* 78164 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27633 | /* 78170 */ GIR_RootConstrainSelectedInstOperands, |
| 27634 | /* 78171 */ // GIR_Coverage, 22519, |
| 27635 | /* 78171 */ GIR_EraseRootFromParent_Done, |
| 27636 | /* 78172 */ // Label 1714: @78172 |
| 27637 | /* 78172 */ GIM_Try, /*On fail goto*//*Label 1715*/ GIMT_Encode4(78270), // Rule ID 26099 // |
| 27638 | /* 78177 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27639 | /* 78180 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27640 | /* 78187 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27641 | /* 78191 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 27642 | /* 78195 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27643 | /* 78199 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27644 | /* 78203 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27645 | /* 78208 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27646 | /* 78212 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27647 | /* 78216 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 27648 | /* 78219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27649 | /* 78223 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 27650 | /* 78230 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27651 | /* 78234 */ // MIs[0] dst |
| 27652 | /* 78234 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27653 | /* 78239 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27654 | /* 78241 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27655 | /* 78248 */ // (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) |
| 27656 | /* 78248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mr), |
| 27657 | /* 78251 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 27658 | /* 78255 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 27659 | /* 78259 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27660 | /* 78262 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27661 | /* 78268 */ GIR_RootConstrainSelectedInstOperands, |
| 27662 | /* 78269 */ // GIR_Coverage, 26099, |
| 27663 | /* 78269 */ GIR_EraseRootFromParent_Done, |
| 27664 | /* 78270 */ // Label 1715: @78270 |
| 27665 | /* 78270 */ GIM_Try, /*On fail goto*//*Label 1716*/ GIMT_Encode4(78381), // Rule ID 838 // |
| 27666 | /* 78275 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27667 | /* 78278 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27668 | /* 78282 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27669 | /* 78286 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHL), |
| 27670 | /* 78290 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27671 | /* 78294 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27672 | /* 78298 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 27673 | /* 78302 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27674 | /* 78306 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27675 | /* 78310 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27676 | /* 78313 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27677 | /* 78317 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27678 | /* 78321 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27679 | /* 78326 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 27680 | /* 78331 */ // MIs[0] src1 |
| 27681 | /* 78331 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27682 | /* 78336 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27683 | /* 78338 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27684 | /* 78345 */ // (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) |
| 27685 | /* 78345 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 27686 | /* 78349 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 27687 | /* 78355 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // CL |
| 27688 | /* 78359 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64mrCL), |
| 27689 | /* 78362 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27690 | /* 78366 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 27691 | /* 78370 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27692 | /* 78373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27693 | /* 78379 */ GIR_RootConstrainSelectedInstOperands, |
| 27694 | /* 78380 */ // GIR_Coverage, 838, |
| 27695 | /* 78380 */ GIR_EraseRootFromParent_Done, |
| 27696 | /* 78381 */ // Label 1716: @78381 |
| 27697 | /* 78381 */ GIM_Try, /*On fail goto*//*Label 1717*/ GIMT_Encode4(78492), // Rule ID 862 // |
| 27698 | /* 78386 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27699 | /* 78389 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27700 | /* 78393 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27701 | /* 78397 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSHR), |
| 27702 | /* 78401 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27703 | /* 78405 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27704 | /* 78409 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s8, |
| 27705 | /* 78413 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27706 | /* 78418 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27707 | /* 78422 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27708 | /* 78426 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27709 | /* 78429 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27710 | /* 78433 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27711 | /* 78437 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 27712 | /* 78442 */ // MIs[0] src1 |
| 27713 | /* 78442 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27714 | /* 78447 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27715 | /* 78449 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27716 | /* 78456 */ // (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) |
| 27717 | /* 78456 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 27718 | /* 78460 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 27719 | /* 78466 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // CL |
| 27720 | /* 78470 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64mrCL), |
| 27721 | /* 78473 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27722 | /* 78477 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 27723 | /* 78481 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27724 | /* 78484 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27725 | /* 78490 */ GIR_RootConstrainSelectedInstOperands, |
| 27726 | /* 78491 */ // GIR_Coverage, 862, |
| 27727 | /* 78491 */ GIR_EraseRootFromParent_Done, |
| 27728 | /* 78492 */ // Label 1717: @78492 |
| 27729 | /* 78492 */ GIM_Try, /*On fail goto*//*Label 1718*/ GIMT_Encode4(78580), // Rule ID 410 // |
| 27730 | /* 78497 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27731 | /* 78500 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27732 | /* 78504 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27733 | /* 78508 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27734 | /* 78512 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27735 | /* 78516 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27736 | /* 78520 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27737 | /* 78524 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27738 | /* 78528 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27739 | /* 78531 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27740 | /* 78535 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27741 | /* 78539 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27742 | /* 78544 */ // MIs[0] src1 |
| 27743 | /* 78544 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27744 | /* 78549 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27745 | /* 78551 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27746 | /* 78558 */ // (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) |
| 27747 | /* 78558 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mr), |
| 27748 | /* 78561 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27749 | /* 78565 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 27750 | /* 78569 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27751 | /* 78572 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27752 | /* 78578 */ GIR_RootConstrainSelectedInstOperands, |
| 27753 | /* 78579 */ // GIR_Coverage, 410, |
| 27754 | /* 78579 */ GIR_EraseRootFromParent_Done, |
| 27755 | /* 78580 */ // Label 1718: @78580 |
| 27756 | /* 78580 */ GIM_Try, /*On fail goto*//*Label 1719*/ GIMT_Encode4(78668), // Rule ID 23307 // |
| 27757 | /* 78585 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27758 | /* 78588 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27759 | /* 78592 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27760 | /* 78596 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 27761 | /* 78600 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27762 | /* 78604 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27763 | /* 78608 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27764 | /* 78613 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27765 | /* 78617 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27766 | /* 78621 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27767 | /* 78624 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27768 | /* 78628 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27769 | /* 78632 */ // MIs[0] src1 |
| 27770 | /* 78632 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27771 | /* 78637 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27772 | /* 78639 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27773 | /* 78646 */ // (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) |
| 27774 | /* 78646 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64mr), |
| 27775 | /* 78649 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27776 | /* 78653 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 27777 | /* 78657 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27778 | /* 78660 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27779 | /* 78666 */ GIR_RootConstrainSelectedInstOperands, |
| 27780 | /* 78667 */ // GIR_Coverage, 23307, |
| 27781 | /* 78667 */ GIR_EraseRootFromParent_Done, |
| 27782 | /* 78668 */ // Label 1719: @78668 |
| 27783 | /* 78668 */ GIM_Try, /*On fail goto*//*Label 1720*/ GIMT_Encode4(78756), // Rule ID 302 // |
| 27784 | /* 78673 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27785 | /* 78676 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27786 | /* 78680 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27787 | /* 78684 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 27788 | /* 78688 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27789 | /* 78692 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27790 | /* 78696 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27791 | /* 78700 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27792 | /* 78704 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27793 | /* 78707 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27794 | /* 78711 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27795 | /* 78715 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27796 | /* 78720 */ // MIs[0] src1 |
| 27797 | /* 78720 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27798 | /* 78725 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27799 | /* 78727 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27800 | /* 78734 */ // (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) |
| 27801 | /* 78734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mr), |
| 27802 | /* 78737 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27803 | /* 78741 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 27804 | /* 78745 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27805 | /* 78748 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27806 | /* 78754 */ GIR_RootConstrainSelectedInstOperands, |
| 27807 | /* 78755 */ // GIR_Coverage, 302, |
| 27808 | /* 78755 */ GIR_EraseRootFromParent_Done, |
| 27809 | /* 78756 */ // Label 1720: @78756 |
| 27810 | /* 78756 */ GIM_Try, /*On fail goto*//*Label 1721*/ GIMT_Encode4(78844), // Rule ID 23271 // |
| 27811 | /* 78761 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27812 | /* 78764 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27813 | /* 78768 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27814 | /* 78772 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 27815 | /* 78776 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27816 | /* 78780 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27817 | /* 78784 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27818 | /* 78789 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27819 | /* 78793 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27820 | /* 78797 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27821 | /* 78800 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27822 | /* 78804 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27823 | /* 78808 */ // MIs[0] src1 |
| 27824 | /* 78808 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27825 | /* 78813 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27826 | /* 78815 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27827 | /* 78822 */ // (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) |
| 27828 | /* 78822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AND64mr), |
| 27829 | /* 78825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27830 | /* 78829 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 27831 | /* 78833 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27832 | /* 78836 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27833 | /* 78842 */ GIR_RootConstrainSelectedInstOperands, |
| 27834 | /* 78843 */ // GIR_Coverage, 23271, |
| 27835 | /* 78843 */ GIR_EraseRootFromParent_Done, |
| 27836 | /* 78844 */ // Label 1721: @78844 |
| 27837 | /* 78844 */ GIM_Try, /*On fail goto*//*Label 1722*/ GIMT_Encode4(78945), // Rule ID 752 // |
| 27838 | /* 78849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27839 | /* 78852 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27840 | /* 78855 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27841 | /* 78859 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27842 | /* 78863 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 27843 | /* 78867 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27844 | /* 78871 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27845 | /* 78875 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27846 | /* 78879 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27847 | /* 78883 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27848 | /* 78886 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27849 | /* 78890 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27850 | /* 78894 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 27851 | /* 78899 */ // MIs[0] src1 |
| 27852 | /* 78899 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27853 | /* 78904 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27854 | /* 78906 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27855 | /* 78913 */ // (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) |
| 27856 | /* 78913 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 27857 | /* 78917 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 27858 | /* 78923 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 27859 | /* 78927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64mCL), |
| 27860 | /* 78930 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27861 | /* 78934 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27862 | /* 78937 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27863 | /* 78943 */ GIR_RootConstrainSelectedInstOperands, |
| 27864 | /* 78944 */ // GIR_Coverage, 752, |
| 27865 | /* 78944 */ GIR_EraseRootFromParent_Done, |
| 27866 | /* 78945 */ // Label 1722: @78945 |
| 27867 | /* 78945 */ GIM_Try, /*On fail goto*//*Label 1723*/ GIMT_Encode4(79046), // Rule ID 720 // |
| 27868 | /* 78950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27869 | /* 78953 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27870 | /* 78956 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27871 | /* 78960 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27872 | /* 78964 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 27873 | /* 78968 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27874 | /* 78972 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27875 | /* 78976 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27876 | /* 78980 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27877 | /* 78984 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27878 | /* 78987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27879 | /* 78991 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27880 | /* 78995 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 27881 | /* 79000 */ // MIs[0] src1 |
| 27882 | /* 79000 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27883 | /* 79005 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27884 | /* 79007 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27885 | /* 79014 */ // (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) |
| 27886 | /* 79014 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 27887 | /* 79018 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 27888 | /* 79024 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 27889 | /* 79028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64mCL), |
| 27890 | /* 79031 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27891 | /* 79035 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27892 | /* 79038 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27893 | /* 79044 */ GIR_RootConstrainSelectedInstOperands, |
| 27894 | /* 79045 */ // GIR_Coverage, 720, |
| 27895 | /* 79045 */ GIR_EraseRootFromParent_Done, |
| 27896 | /* 79046 */ // Label 1723: @79046 |
| 27897 | /* 79046 */ GIM_Try, /*On fail goto*//*Label 1724*/ GIMT_Encode4(79134), // Rule ID 338 // |
| 27898 | /* 79051 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27899 | /* 79054 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27900 | /* 79058 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27901 | /* 79062 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 27902 | /* 79066 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27903 | /* 79070 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27904 | /* 79074 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27905 | /* 79078 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27906 | /* 79082 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27907 | /* 79085 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27908 | /* 79089 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27909 | /* 79093 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27910 | /* 79098 */ // MIs[0] src1 |
| 27911 | /* 79098 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27912 | /* 79103 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27913 | /* 79105 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27914 | /* 79112 */ // (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) |
| 27915 | /* 79112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mr), |
| 27916 | /* 79115 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27917 | /* 79119 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 27918 | /* 79123 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27919 | /* 79126 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27920 | /* 79132 */ GIR_RootConstrainSelectedInstOperands, |
| 27921 | /* 79133 */ // GIR_Coverage, 338, |
| 27922 | /* 79133 */ GIR_EraseRootFromParent_Done, |
| 27923 | /* 79134 */ // Label 1724: @79134 |
| 27924 | /* 79134 */ GIM_Try, /*On fail goto*//*Label 1725*/ GIMT_Encode4(79222), // Rule ID 23283 // |
| 27925 | /* 79139 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27926 | /* 79142 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27927 | /* 79146 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27928 | /* 79150 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 27929 | /* 79154 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27930 | /* 79158 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27931 | /* 79162 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 27932 | /* 79167 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 27933 | /* 79171 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27934 | /* 79175 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27935 | /* 79178 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27936 | /* 79182 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27937 | /* 79186 */ // MIs[0] src1 |
| 27938 | /* 79186 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27939 | /* 79191 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27940 | /* 79193 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27941 | /* 79200 */ // (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) |
| 27942 | /* 79200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::OR64mr), |
| 27943 | /* 79203 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27944 | /* 79207 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 27945 | /* 79211 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27946 | /* 79214 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27947 | /* 79220 */ GIR_RootConstrainSelectedInstOperands, |
| 27948 | /* 79221 */ // GIR_Coverage, 23283, |
| 27949 | /* 79221 */ GIR_EraseRootFromParent_Done, |
| 27950 | /* 79222 */ // Label 1725: @79222 |
| 27951 | /* 79222 */ GIM_Try, /*On fail goto*//*Label 1726*/ GIMT_Encode4(79323), // Rule ID 784 // |
| 27952 | /* 79227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27953 | /* 79230 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27954 | /* 79233 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27955 | /* 79237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27956 | /* 79241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTL), |
| 27957 | /* 79245 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27958 | /* 79249 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27959 | /* 79253 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27960 | /* 79257 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27961 | /* 79261 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27962 | /* 79264 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27963 | /* 79268 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27964 | /* 79272 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 27965 | /* 79277 */ // MIs[0] src1 |
| 27966 | /* 79277 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27967 | /* 79282 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27968 | /* 79284 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27969 | /* 79291 */ // (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) |
| 27970 | /* 79291 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 27971 | /* 79295 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 27972 | /* 79301 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 27973 | /* 79305 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64mCL), |
| 27974 | /* 79308 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 27975 | /* 79312 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 27976 | /* 79315 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 27977 | /* 79321 */ GIR_RootConstrainSelectedInstOperands, |
| 27978 | /* 79322 */ // GIR_Coverage, 784, |
| 27979 | /* 79322 */ GIR_EraseRootFromParent_Done, |
| 27980 | /* 79323 */ // Label 1726: @79323 |
| 27981 | /* 79323 */ GIM_Try, /*On fail goto*//*Label 1727*/ GIMT_Encode4(79424), // Rule ID 816 // |
| 27982 | /* 79328 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 27983 | /* 79331 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27984 | /* 79334 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 27985 | /* 79338 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 27986 | /* 79342 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ROTR), |
| 27987 | /* 79346 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27988 | /* 79350 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 27989 | /* 79354 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27990 | /* 79358 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 27991 | /* 79362 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 27992 | /* 79365 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 27993 | /* 79369 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 27994 | /* 79373 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 27995 | /* 79378 */ // MIs[0] src1 |
| 27996 | /* 79378 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 27997 | /* 79383 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27998 | /* 79385 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 27999 | /* 79392 */ // (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) |
| 28000 | /* 79392 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28001 | /* 79396 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 28002 | /* 79402 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 28003 | /* 79406 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64mCL), |
| 28004 | /* 79409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28005 | /* 79413 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28006 | /* 79416 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28007 | /* 79422 */ GIR_RootConstrainSelectedInstOperands, |
| 28008 | /* 79423 */ // GIR_Coverage, 816, |
| 28009 | /* 79423 */ GIR_EraseRootFromParent_Done, |
| 28010 | /* 79424 */ // Label 1727: @79424 |
| 28011 | /* 79424 */ GIM_Try, /*On fail goto*//*Label 1728*/ GIMT_Encode4(79525), // Rule ID 688 // |
| 28012 | /* 79429 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 28013 | /* 79432 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28014 | /* 79435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28015 | /* 79439 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28016 | /* 79443 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 28017 | /* 79447 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28018 | /* 79451 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s8, |
| 28019 | /* 79455 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28020 | /* 79459 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28021 | /* 79463 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28022 | /* 79466 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28023 | /* 79470 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28024 | /* 79474 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 28025 | /* 79479 */ // MIs[0] src1 |
| 28026 | /* 79479 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28027 | /* 79484 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28028 | /* 79486 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28029 | /* 79493 */ // (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) |
| 28030 | /* 79493 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 28031 | /* 79497 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 28032 | /* 79503 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // CL |
| 28033 | /* 79507 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64mCL), |
| 28034 | /* 79510 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28035 | /* 79514 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28036 | /* 79517 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28037 | /* 79523 */ GIR_RootConstrainSelectedInstOperands, |
| 28038 | /* 79524 */ // GIR_Coverage, 688, |
| 28039 | /* 79524 */ GIR_EraseRootFromParent_Done, |
| 28040 | /* 79525 */ // Label 1728: @79525 |
| 28041 | /* 79525 */ GIM_Try, /*On fail goto*//*Label 1729*/ GIMT_Encode4(79613), // Rule ID 446 // |
| 28042 | /* 79530 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28043 | /* 79533 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28044 | /* 79537 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28045 | /* 79541 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 28046 | /* 79545 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28047 | /* 79549 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28048 | /* 79553 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28049 | /* 79557 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28050 | /* 79561 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28051 | /* 79564 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28052 | /* 79568 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28053 | /* 79572 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28054 | /* 79577 */ // MIs[0] src1 |
| 28055 | /* 79577 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28056 | /* 79582 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28057 | /* 79584 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28058 | /* 79591 */ // (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) |
| 28059 | /* 79591 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB64mr), |
| 28060 | /* 79594 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28061 | /* 79598 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 28062 | /* 79602 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28063 | /* 79605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28064 | /* 79611 */ GIR_RootConstrainSelectedInstOperands, |
| 28065 | /* 79612 */ // GIR_Coverage, 446, |
| 28066 | /* 79612 */ GIR_EraseRootFromParent_Done, |
| 28067 | /* 79613 */ // Label 1729: @79613 |
| 28068 | /* 79613 */ GIM_Try, /*On fail goto*//*Label 1730*/ GIMT_Encode4(79701), // Rule ID 374 // |
| 28069 | /* 79618 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28070 | /* 79621 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28071 | /* 79625 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28072 | /* 79629 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28073 | /* 79633 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28074 | /* 79637 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28075 | /* 79641 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 28076 | /* 79645 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28077 | /* 79649 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28078 | /* 79652 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28079 | /* 79656 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28080 | /* 79660 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28081 | /* 79665 */ // MIs[0] src1 |
| 28082 | /* 79665 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28083 | /* 79670 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28084 | /* 79672 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28085 | /* 79679 */ // (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) |
| 28086 | /* 79679 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mr), |
| 28087 | /* 79682 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28088 | /* 79686 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 28089 | /* 79690 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28090 | /* 79693 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28091 | /* 79699 */ GIR_RootConstrainSelectedInstOperands, |
| 28092 | /* 79700 */ // GIR_Coverage, 374, |
| 28093 | /* 79700 */ GIR_EraseRootFromParent_Done, |
| 28094 | /* 79701 */ // Label 1730: @79701 |
| 28095 | /* 79701 */ GIM_Try, /*On fail goto*//*Label 1731*/ GIMT_Encode4(79789), // Rule ID 23295 // |
| 28096 | /* 79706 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28097 | /* 79709 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28098 | /* 79713 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28099 | /* 79717 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28100 | /* 79721 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28101 | /* 79725 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28102 | /* 79729 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28103 | /* 79734 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 28104 | /* 79738 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 28105 | /* 79742 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28106 | /* 79745 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 28107 | /* 79749 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 28108 | /* 79753 */ // MIs[0] src1 |
| 28109 | /* 79753 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/1, /*OtherMI*/2, /*OtherOpIdx*/1, |
| 28110 | /* 79758 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 28111 | /* 79760 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28112 | /* 79767 */ // (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) |
| 28113 | /* 79767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XOR64mr), |
| 28114 | /* 79770 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 28115 | /* 79774 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src2 |
| 28116 | /* 79778 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 28117 | /* 79781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 28118 | /* 79787 */ GIR_RootConstrainSelectedInstOperands, |
| 28119 | /* 79788 */ // GIR_Coverage, 23295, |
| 28120 | /* 79788 */ GIR_EraseRootFromParent_Done, |
| 28121 | /* 79789 */ // Label 1731: @79789 |
| 28122 | /* 79789 */ GIM_Try, /*On fail goto*//*Label 1732*/ GIMT_Encode4(79846), // Rule ID 22571 // |
| 28123 | /* 79794 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28124 | /* 79797 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28125 | /* 79804 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28126 | /* 79808 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 28127 | /* 79812 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 28128 | /* 79816 */ // MIs[1] Operand 1 |
| 28129 | /* 79816 */ // No operand predicates |
| 28130 | /* 79816 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28131 | /* 79820 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28132 | /* 79822 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28133 | /* 79829 */ // (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) |
| 28134 | /* 79829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64mi32), |
| 28135 | /* 79832 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28136 | /* 79836 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src |
| 28137 | /* 79839 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28138 | /* 79844 */ GIR_RootConstrainSelectedInstOperands, |
| 28139 | /* 79845 */ // GIR_Coverage, 22571, |
| 28140 | /* 79845 */ GIR_EraseRootFromParent_Done, |
| 28141 | /* 79846 */ // Label 1732: @79846 |
| 28142 | /* 79846 */ GIM_Try, /*On fail goto*//*Label 1733*/ GIMT_Encode4(79912), // Rule ID 22589 // |
| 28143 | /* 79851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 28144 | /* 79854 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28145 | /* 79857 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28146 | /* 79864 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28147 | /* 79868 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 28148 | /* 79872 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28149 | /* 79876 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28150 | /* 79881 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28151 | /* 79885 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28152 | /* 79887 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28153 | /* 79894 */ // (atomic_store (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (MOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28154 | /* 79894 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSDmr), |
| 28155 | /* 79897 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28156 | /* 79901 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 28157 | /* 79905 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28158 | /* 79910 */ GIR_RootConstrainSelectedInstOperands, |
| 28159 | /* 79911 */ // GIR_Coverage, 22589, |
| 28160 | /* 79911 */ GIR_EraseRootFromParent_Done, |
| 28161 | /* 79912 */ // Label 1733: @79912 |
| 28162 | /* 79912 */ GIM_Try, /*On fail goto*//*Label 1734*/ GIMT_Encode4(79978), // Rule ID 22590 // |
| 28163 | /* 79917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 28164 | /* 79920 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28165 | /* 79923 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28166 | /* 79930 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28167 | /* 79934 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 28168 | /* 79938 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28169 | /* 79942 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28170 | /* 79947 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28171 | /* 79951 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28172 | /* 79953 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28173 | /* 79960 */ // (atomic_store (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (VMOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28174 | /* 79960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDmr), |
| 28175 | /* 79963 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28176 | /* 79967 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 28177 | /* 79971 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28178 | /* 79976 */ GIR_RootConstrainSelectedInstOperands, |
| 28179 | /* 79977 */ // GIR_Coverage, 22590, |
| 28180 | /* 79977 */ GIR_EraseRootFromParent_Done, |
| 28181 | /* 79978 */ // Label 1734: @79978 |
| 28182 | /* 79978 */ GIM_Try, /*On fail goto*//*Label 1735*/ GIMT_Encode4(80044), // Rule ID 22591 // |
| 28183 | /* 79983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 28184 | /* 79986 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28185 | /* 79989 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28186 | /* 79996 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28187 | /* 80000 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 28188 | /* 80004 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28189 | /* 80008 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28190 | /* 80013 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28191 | /* 80017 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28192 | /* 80019 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28193 | /* 80026 */ // (atomic_store (bitconvert:{ *:[i64] } FR64:{ *:[f64] }:$src), addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (VMOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28194 | /* 80026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDmr), |
| 28195 | /* 80029 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28196 | /* 80033 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 28197 | /* 80037 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28198 | /* 80042 */ GIR_RootConstrainSelectedInstOperands, |
| 28199 | /* 80043 */ // GIR_Coverage, 22591, |
| 28200 | /* 80043 */ GIR_EraseRootFromParent_Done, |
| 28201 | /* 80044 */ // Label 1735: @80044 |
| 28202 | /* 80044 */ GIM_Try, /*On fail goto*//*Label 1736*/ GIMT_Encode4(80107), // Rule ID 54 // |
| 28203 | /* 80049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 28204 | /* 80052 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28205 | /* 80055 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28206 | /* 80059 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28207 | /* 80063 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 28208 | /* 80067 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28209 | /* 80071 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28210 | /* 80076 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28211 | /* 80080 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28212 | /* 80082 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28213 | /* 80089 */ // (st (bswap:{ *:[i64] } GR64:{ *:[i64] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE64mr addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src1) |
| 28214 | /* 80089 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE64mr), |
| 28215 | /* 80092 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28216 | /* 80096 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 28217 | /* 80100 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28218 | /* 80105 */ GIR_RootConstrainSelectedInstOperands, |
| 28219 | /* 80106 */ // GIR_Coverage, 54, |
| 28220 | /* 80106 */ GIR_EraseRootFromParent_Done, |
| 28221 | /* 80107 */ // Label 1736: @80107 |
| 28222 | /* 80107 */ GIM_Try, /*On fail goto*//*Label 1737*/ GIMT_Encode4(80170), // Rule ID 60 // |
| 28223 | /* 80112 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 28224 | /* 80115 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28225 | /* 80118 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28226 | /* 80122 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 28227 | /* 80126 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BSWAP), |
| 28228 | /* 80130 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28229 | /* 80134 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28230 | /* 80139 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28231 | /* 80143 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28232 | /* 80145 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28233 | /* 80152 */ // (st (bswap:{ *:[i64] } GR64:{ *:[i64] }:$src1), addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVBE64mr_EVEX addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src1) |
| 28234 | /* 80152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE64mr_EVEX), |
| 28235 | /* 80155 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28236 | /* 80159 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 28237 | /* 80163 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 28238 | /* 80168 */ GIR_RootConstrainSelectedInstOperands, |
| 28239 | /* 80169 */ // GIR_Coverage, 60, |
| 28240 | /* 80169 */ GIR_EraseRootFromParent_Done, |
| 28241 | /* 80170 */ // Label 1737: @80170 |
| 28242 | /* 80170 */ GIM_Try, /*On fail goto*//*Label 1738*/ GIMT_Encode4(80215), // Rule ID 22575 // |
| 28243 | /* 80175 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 28244 | /* 80178 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28245 | /* 80185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28246 | /* 80189 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28247 | /* 80193 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28248 | /* 80200 */ // (atomic_store GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_atomic_store_64>> => (MOV64mr addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 28249 | /* 80200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64mr), |
| 28250 | /* 80203 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28251 | /* 80207 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28252 | /* 80209 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28253 | /* 80213 */ GIR_RootConstrainSelectedInstOperands, |
| 28254 | /* 80214 */ // GIR_Coverage, 22575, |
| 28255 | /* 80214 */ GIR_EraseRootFromParent_Done, |
| 28256 | /* 80215 */ // Label 1738: @80215 |
| 28257 | /* 80215 */ GIM_Try, /*On fail goto*//*Label 1739*/ GIMT_Encode4(80257), // Rule ID 35 // |
| 28258 | /* 80220 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28259 | /* 80223 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28260 | /* 80227 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 28261 | /* 80231 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28262 | /* 80235 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28263 | /* 80242 */ // (st GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOV64mr addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 28264 | /* 80242 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64mr), |
| 28265 | /* 80245 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28266 | /* 80249 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28267 | /* 80251 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28268 | /* 80255 */ GIR_RootConstrainSelectedInstOperands, |
| 28269 | /* 80256 */ // GIR_Coverage, 35, |
| 28270 | /* 80256 */ GIR_EraseRootFromParent_Done, |
| 28271 | /* 80257 */ // Label 1739: @80257 |
| 28272 | /* 80257 */ GIM_Try, /*On fail goto*//*Label 1740*/ GIMT_Encode4(80312), // Rule ID 1096 // |
| 28273 | /* 80262 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 28274 | /* 80265 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28275 | /* 80268 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28276 | /* 80272 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 28277 | /* 80279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 28278 | /* 80283 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28279 | /* 80287 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28280 | /* 80294 */ // (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) |
| 28281 | /* 80294 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp64m32), |
| 28282 | /* 80297 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28283 | /* 80301 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28284 | /* 80303 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28285 | /* 80306 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28286 | /* 80310 */ GIR_RootConstrainSelectedInstOperands, |
| 28287 | /* 80311 */ // GIR_Coverage, 1096, |
| 28288 | /* 80311 */ GIR_EraseRootFromParent_Done, |
| 28289 | /* 80312 */ // Label 1740: @80312 |
| 28290 | /* 80312 */ GIM_Try, /*On fail goto*//*Label 1741*/ GIMT_Encode4(80360), // Rule ID 1097 // |
| 28291 | /* 80317 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 28292 | /* 80320 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28293 | /* 80323 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28294 | /* 80327 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 28295 | /* 80331 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28296 | /* 80335 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28297 | /* 80342 */ // (st RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ST_Fp64m:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 28298 | /* 80342 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp64m), |
| 28299 | /* 80345 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28300 | /* 80349 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28301 | /* 80351 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28302 | /* 80354 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28303 | /* 80358 */ GIR_RootConstrainSelectedInstOperands, |
| 28304 | /* 80359 */ // GIR_Coverage, 1097, |
| 28305 | /* 80359 */ GIR_EraseRootFromParent_Done, |
| 28306 | /* 80360 */ // Label 1741: @80360 |
| 28307 | /* 80360 */ GIM_Try, /*On fail goto*//*Label 1742*/ GIMT_Encode4(80405), // Rule ID 1692 // |
| 28308 | /* 80365 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 28309 | /* 80368 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28310 | /* 80371 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28311 | /* 80375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28312 | /* 80379 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28313 | /* 80383 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28314 | /* 80390 */ // (st FR64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28315 | /* 80390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDmr), |
| 28316 | /* 80393 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28317 | /* 80397 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28318 | /* 80399 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28319 | /* 80403 */ GIR_RootConstrainSelectedInstOperands, |
| 28320 | /* 80404 */ // GIR_Coverage, 1692, |
| 28321 | /* 80404 */ GIR_EraseRootFromParent_Done, |
| 28322 | /* 80405 */ // Label 1742: @80405 |
| 28323 | /* 80405 */ GIM_Try, /*On fail goto*//*Label 1743*/ GIMT_Encode4(80450), // Rule ID 1694 // |
| 28324 | /* 80410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 28325 | /* 80413 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28326 | /* 80416 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28327 | /* 80420 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 28328 | /* 80424 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28329 | /* 80428 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28330 | /* 80435 */ // (st FR64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVSDmr addr:{ *:[iPTR] }:$dst, FR64:{ *:[f64] }:$src) |
| 28331 | /* 80435 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSDmr), |
| 28332 | /* 80438 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28333 | /* 80442 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28334 | /* 80444 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28335 | /* 80448 */ GIR_RootConstrainSelectedInstOperands, |
| 28336 | /* 80449 */ // GIR_Coverage, 1694, |
| 28337 | /* 80449 */ GIR_EraseRootFromParent_Done, |
| 28338 | /* 80450 */ // Label 1743: @80450 |
| 28339 | /* 80450 */ GIM_Try, /*On fail goto*//*Label 1744*/ GIMT_Encode4(80495), // Rule ID 4620 // |
| 28340 | /* 80455 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 28341 | /* 80458 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28342 | /* 80461 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28343 | /* 80465 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 28344 | /* 80469 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28345 | /* 80473 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28346 | /* 80480 */ // (st FR64X:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVSDZmr addr:{ *:[iPTR] }:$dst, FR64X:{ *:[f64] }:$src) |
| 28347 | /* 80480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVSDZmr), |
| 28348 | /* 80483 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28349 | /* 80487 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28350 | /* 80489 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28351 | /* 80493 */ GIR_RootConstrainSelectedInstOperands, |
| 28352 | /* 80494 */ // GIR_Coverage, 4620, |
| 28353 | /* 80494 */ GIR_EraseRootFromParent_Done, |
| 28354 | /* 80495 */ // Label 1744: @80495 |
| 28355 | /* 80495 */ GIM_Reject, |
| 28356 | /* 80496 */ // Label 1486: @80496 |
| 28357 | /* 80496 */ GIM_Try, /*On fail goto*//*Label 1745*/ GIMT_Encode4(80654), |
| 28358 | /* 80501 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28359 | /* 80504 */ GIM_Try, /*On fail goto*//*Label 1746*/ GIMT_Encode4(80556), // Rule ID 1098 // |
| 28360 | /* 80509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 28361 | /* 80512 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28362 | /* 80516 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 28363 | /* 80523 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 28364 | /* 80527 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28365 | /* 80531 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28366 | /* 80538 */ // (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) |
| 28367 | /* 80538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp80m32), |
| 28368 | /* 80541 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28369 | /* 80545 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28370 | /* 80547 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28371 | /* 80550 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28372 | /* 80554 */ GIR_RootConstrainSelectedInstOperands, |
| 28373 | /* 80555 */ // GIR_Coverage, 1098, |
| 28374 | /* 80555 */ GIR_EraseRootFromParent_Done, |
| 28375 | /* 80556 */ // Label 1746: @80556 |
| 28376 | /* 80556 */ GIM_Try, /*On fail goto*//*Label 1747*/ GIMT_Encode4(80608), // Rule ID 1099 // |
| 28377 | /* 80561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 28378 | /* 80564 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28379 | /* 80568 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 28380 | /* 80575 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 28381 | /* 80579 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28382 | /* 80583 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28383 | /* 80590 */ // (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) |
| 28384 | /* 80590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_Fp80m64), |
| 28385 | /* 80593 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28386 | /* 80597 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28387 | /* 80599 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28388 | /* 80602 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28389 | /* 80606 */ GIR_RootConstrainSelectedInstOperands, |
| 28390 | /* 80607 */ // GIR_Coverage, 1099, |
| 28391 | /* 80607 */ GIR_EraseRootFromParent_Done, |
| 28392 | /* 80608 */ // Label 1747: @80608 |
| 28393 | /* 80608 */ GIM_Try, /*On fail goto*//*Label 1748*/ GIMT_Encode4(80653), // Rule ID 1100 // |
| 28394 | /* 80613 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 28395 | /* 80616 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28396 | /* 80620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 28397 | /* 80624 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28398 | /* 80628 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28399 | /* 80635 */ // (st RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (ST_FpP80m:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 28400 | /* 80635 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ST_FpP80m), |
| 28401 | /* 80638 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 28402 | /* 80642 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28403 | /* 80644 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 28404 | /* 80647 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28405 | /* 80651 */ GIR_RootConstrainSelectedInstOperands, |
| 28406 | /* 80652 */ // GIR_Coverage, 1100, |
| 28407 | /* 80652 */ GIR_EraseRootFromParent_Done, |
| 28408 | /* 80653 */ // Label 1748: @80653 |
| 28409 | /* 80653 */ GIM_Reject, |
| 28410 | /* 80654 */ // Label 1745: @80654 |
| 28411 | /* 80654 */ GIM_Reject, |
| 28412 | /* 80655 */ // Label 1487: @80655 |
| 28413 | /* 80655 */ GIM_Try, /*On fail goto*//*Label 1749*/ GIMT_Encode4(80908), |
| 28414 | /* 80660 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28415 | /* 80663 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28416 | /* 80667 */ GIM_Try, /*On fail goto*//*Label 1750*/ GIMT_Encode4(80709), // Rule ID 23224 // |
| 28417 | /* 80672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoAVX), |
| 28418 | /* 80675 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28419 | /* 80679 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28420 | /* 80683 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28421 | /* 80687 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28422 | /* 80694 */ // (st VR128:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[f128] }:$src) |
| 28423 | /* 80694 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 28424 | /* 80697 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28425 | /* 80701 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28426 | /* 80703 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28427 | /* 80707 */ GIR_RootConstrainSelectedInstOperands, |
| 28428 | /* 80708 */ // GIR_Coverage, 23224, |
| 28429 | /* 80708 */ GIR_EraseRootFromParent_Done, |
| 28430 | /* 80709 */ // Label 1750: @80709 |
| 28431 | /* 80709 */ GIM_Try, /*On fail goto*//*Label 1751*/ GIMT_Encode4(80747), // Rule ID 23225 // |
| 28432 | /* 80714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoAVX), |
| 28433 | /* 80717 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28434 | /* 80721 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28435 | /* 80725 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28436 | /* 80732 */ // (st VR128:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[f128] }:$src) |
| 28437 | /* 80732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 28438 | /* 80735 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28439 | /* 80739 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28440 | /* 80741 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28441 | /* 80745 */ GIR_RootConstrainSelectedInstOperands, |
| 28442 | /* 80746 */ // GIR_Coverage, 23225, |
| 28443 | /* 80746 */ GIR_EraseRootFromParent_Done, |
| 28444 | /* 80747 */ // Label 1751: @80747 |
| 28445 | /* 80747 */ GIM_Try, /*On fail goto*//*Label 1752*/ GIMT_Encode4(80789), // Rule ID 23228 // |
| 28446 | /* 80752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28447 | /* 80755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28448 | /* 80759 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28449 | /* 80763 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28450 | /* 80767 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28451 | /* 80774 */ // (st VR128:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[f128] }:$src) |
| 28452 | /* 80774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSmr), |
| 28453 | /* 80777 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28454 | /* 80781 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28455 | /* 80783 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28456 | /* 80787 */ GIR_RootConstrainSelectedInstOperands, |
| 28457 | /* 80788 */ // GIR_Coverage, 23228, |
| 28458 | /* 80788 */ GIR_EraseRootFromParent_Done, |
| 28459 | /* 80789 */ // Label 1752: @80789 |
| 28460 | /* 80789 */ GIM_Try, /*On fail goto*//*Label 1753*/ GIMT_Encode4(80827), // Rule ID 23229 // |
| 28461 | /* 80794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28462 | /* 80797 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28463 | /* 80801 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28464 | /* 80805 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28465 | /* 80812 */ // (st VR128:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[f128] }:$src) |
| 28466 | /* 80812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSmr), |
| 28467 | /* 80815 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28468 | /* 80819 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28469 | /* 80821 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28470 | /* 80825 */ GIR_RootConstrainSelectedInstOperands, |
| 28471 | /* 80826 */ // GIR_Coverage, 23229, |
| 28472 | /* 80826 */ GIR_EraseRootFromParent_Done, |
| 28473 | /* 80827 */ // Label 1753: @80827 |
| 28474 | /* 80827 */ GIM_Try, /*On fail goto*//*Label 1754*/ GIMT_Encode4(80869), // Rule ID 23232 // |
| 28475 | /* 80832 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 28476 | /* 80835 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28477 | /* 80839 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28478 | /* 80843 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28479 | /* 80847 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28480 | /* 80854 */ // (st VR128X:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[f128] }:$src) |
| 28481 | /* 80854 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128mr), |
| 28482 | /* 80857 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28483 | /* 80861 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28484 | /* 80863 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28485 | /* 80867 */ GIR_RootConstrainSelectedInstOperands, |
| 28486 | /* 80868 */ // GIR_Coverage, 23232, |
| 28487 | /* 80868 */ GIR_EraseRootFromParent_Done, |
| 28488 | /* 80869 */ // Label 1754: @80869 |
| 28489 | /* 80869 */ GIM_Try, /*On fail goto*//*Label 1755*/ GIMT_Encode4(80907), // Rule ID 23233 // |
| 28490 | /* 80874 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 28491 | /* 80877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28492 | /* 80881 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28493 | /* 80885 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28494 | /* 80892 */ // (st VR128X:{ *:[f128] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[f128] }:$src) |
| 28495 | /* 80892 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128mr), |
| 28496 | /* 80895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28497 | /* 80899 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28498 | /* 80901 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28499 | /* 80905 */ GIR_RootConstrainSelectedInstOperands, |
| 28500 | /* 80906 */ // GIR_Coverage, 23233, |
| 28501 | /* 80906 */ GIR_EraseRootFromParent_Done, |
| 28502 | /* 80907 */ // Label 1755: @80907 |
| 28503 | /* 80907 */ GIM_Reject, |
| 28504 | /* 80908 */ // Label 1749: @80908 |
| 28505 | /* 80908 */ GIM_Reject, |
| 28506 | /* 80909 */ // Label 1488: @80909 |
| 28507 | /* 80909 */ GIM_Try, /*On fail goto*//*Label 1756*/ GIMT_Encode4(81402), |
| 28508 | /* 80914 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28509 | /* 80917 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28510 | /* 80921 */ GIM_Try, /*On fail goto*//*Label 1757*/ GIMT_Encode4(80963), // Rule ID 1716 // |
| 28511 | /* 80926 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28512 | /* 80929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28513 | /* 80933 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28514 | /* 80937 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28515 | /* 80941 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28516 | /* 80948 */ // (st VR128:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2f64] }:$src) |
| 28517 | /* 80948 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDmr), |
| 28518 | /* 80951 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28519 | /* 80955 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28520 | /* 80957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28521 | /* 80961 */ GIR_RootConstrainSelectedInstOperands, |
| 28522 | /* 80962 */ // GIR_Coverage, 1716, |
| 28523 | /* 80962 */ GIR_EraseRootFromParent_Done, |
| 28524 | /* 80963 */ // Label 1757: @80963 |
| 28525 | /* 80963 */ GIM_Try, /*On fail goto*//*Label 1758*/ GIMT_Encode4(81001), // Rule ID 1718 // |
| 28526 | /* 80968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28527 | /* 80971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28528 | /* 80975 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28529 | /* 80979 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28530 | /* 80986 */ // (st VR128:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2f64] }:$src) |
| 28531 | /* 80986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDmr), |
| 28532 | /* 80989 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28533 | /* 80993 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28534 | /* 80995 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28535 | /* 80999 */ GIR_RootConstrainSelectedInstOperands, |
| 28536 | /* 81000 */ // GIR_Coverage, 1718, |
| 28537 | /* 81000 */ GIR_EraseRootFromParent_Done, |
| 28538 | /* 81001 */ // Label 1758: @81001 |
| 28539 | /* 81001 */ GIM_Try, /*On fail goto*//*Label 1759*/ GIMT_Encode4(81043), // Rule ID 1724 // |
| 28540 | /* 81006 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 28541 | /* 81009 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28542 | /* 81013 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28543 | /* 81017 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28544 | /* 81021 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28545 | /* 81028 */ // (st VR128:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2f64] }:$src) |
| 28546 | /* 81028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPDmr), |
| 28547 | /* 81031 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28548 | /* 81035 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28549 | /* 81037 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28550 | /* 81041 */ GIR_RootConstrainSelectedInstOperands, |
| 28551 | /* 81042 */ // GIR_Coverage, 1724, |
| 28552 | /* 81042 */ GIR_EraseRootFromParent_Done, |
| 28553 | /* 81043 */ // Label 1759: @81043 |
| 28554 | /* 81043 */ GIM_Try, /*On fail goto*//*Label 1760*/ GIMT_Encode4(81081), // Rule ID 1726 // |
| 28555 | /* 81048 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 28556 | /* 81051 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28557 | /* 81055 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28558 | /* 81059 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28559 | /* 81066 */ // (st VR128:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2f64] }:$src) |
| 28560 | /* 81066 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPDmr), |
| 28561 | /* 81069 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28562 | /* 81073 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28563 | /* 81075 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28564 | /* 81079 */ GIR_RootConstrainSelectedInstOperands, |
| 28565 | /* 81080 */ // GIR_Coverage, 1726, |
| 28566 | /* 81080 */ GIR_EraseRootFromParent_Done, |
| 28567 | /* 81081 */ // Label 1760: @81081 |
| 28568 | /* 81081 */ GIM_Try, /*On fail goto*//*Label 1761*/ GIMT_Encode4(81123), // Rule ID 2520 // |
| 28569 | /* 81086 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28570 | /* 81089 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28571 | /* 81093 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28572 | /* 81097 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28573 | /* 81101 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28574 | /* 81108 */ // (st VR128:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src) |
| 28575 | /* 81108 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 28576 | /* 81111 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28577 | /* 81115 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28578 | /* 81117 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28579 | /* 81121 */ GIR_RootConstrainSelectedInstOperands, |
| 28580 | /* 81122 */ // GIR_Coverage, 2520, |
| 28581 | /* 81122 */ GIR_EraseRootFromParent_Done, |
| 28582 | /* 81123 */ // Label 1761: @81123 |
| 28583 | /* 81123 */ GIM_Try, /*On fail goto*//*Label 1762*/ GIMT_Encode4(81161), // Rule ID 2521 // |
| 28584 | /* 81128 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28585 | /* 81131 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28586 | /* 81135 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28587 | /* 81139 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28588 | /* 81146 */ // (st VR128:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src) |
| 28589 | /* 81146 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 28590 | /* 81149 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28591 | /* 81153 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28592 | /* 81155 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28593 | /* 81159 */ GIR_RootConstrainSelectedInstOperands, |
| 28594 | /* 81160 */ // GIR_Coverage, 2521, |
| 28595 | /* 81160 */ GIR_EraseRootFromParent_Done, |
| 28596 | /* 81161 */ // Label 1762: @81161 |
| 28597 | /* 81161 */ GIM_Try, /*On fail goto*//*Label 1763*/ GIMT_Encode4(81203), // Rule ID 4500 // |
| 28598 | /* 81166 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28599 | /* 81169 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28600 | /* 81173 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28601 | /* 81177 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28602 | /* 81181 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28603 | /* 81188 */ // (st VR128X:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v2f64] }:$src) |
| 28604 | /* 81188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ128mr), |
| 28605 | /* 81191 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28606 | /* 81195 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28607 | /* 81197 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28608 | /* 81201 */ GIR_RootConstrainSelectedInstOperands, |
| 28609 | /* 81202 */ // GIR_Coverage, 4500, |
| 28610 | /* 81202 */ GIR_EraseRootFromParent_Done, |
| 28611 | /* 81203 */ // Label 1763: @81203 |
| 28612 | /* 81203 */ GIM_Try, /*On fail goto*//*Label 1764*/ GIMT_Encode4(81241), // Rule ID 4524 // |
| 28613 | /* 81208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28614 | /* 81211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28615 | /* 81215 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28616 | /* 81219 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28617 | /* 81226 */ // (st VR128X:{ *:[v2f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v2f64] }:$src) |
| 28618 | /* 81226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZ128mr), |
| 28619 | /* 81229 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28620 | /* 81233 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28621 | /* 81235 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28622 | /* 81239 */ GIR_RootConstrainSelectedInstOperands, |
| 28623 | /* 81240 */ // GIR_Coverage, 4524, |
| 28624 | /* 81240 */ GIR_EraseRootFromParent_Done, |
| 28625 | /* 81241 */ // Label 1764: @81241 |
| 28626 | /* 81241 */ GIM_Try, /*On fail goto*//*Label 1765*/ GIMT_Encode4(81283), // Rule ID 4554 // |
| 28627 | /* 81246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28628 | /* 81249 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28629 | /* 81253 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28630 | /* 81257 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28631 | /* 81261 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28632 | /* 81268 */ // (st VR128X:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v2i64] }:$src) |
| 28633 | /* 81268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128mr), |
| 28634 | /* 81271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28635 | /* 81275 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28636 | /* 81277 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28637 | /* 81281 */ GIR_RootConstrainSelectedInstOperands, |
| 28638 | /* 81282 */ // GIR_Coverage, 4554, |
| 28639 | /* 81282 */ GIR_EraseRootFromParent_Done, |
| 28640 | /* 81283 */ // Label 1765: @81283 |
| 28641 | /* 81283 */ GIM_Try, /*On fail goto*//*Label 1766*/ GIMT_Encode4(81321), // Rule ID 4596 // |
| 28642 | /* 81288 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28643 | /* 81291 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28644 | /* 81295 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28645 | /* 81299 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28646 | /* 81306 */ // (st VR128X:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v2i64] }:$src) |
| 28647 | /* 81306 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128mr), |
| 28648 | /* 81309 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28649 | /* 81313 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28650 | /* 81315 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28651 | /* 81319 */ GIR_RootConstrainSelectedInstOperands, |
| 28652 | /* 81320 */ // GIR_Coverage, 4596, |
| 28653 | /* 81320 */ GIR_EraseRootFromParent_Done, |
| 28654 | /* 81321 */ // Label 1766: @81321 |
| 28655 | /* 81321 */ GIM_Try, /*On fail goto*//*Label 1767*/ GIMT_Encode4(81363), // Rule ID 17937 // |
| 28656 | /* 81326 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 28657 | /* 81329 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28658 | /* 81333 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28659 | /* 81337 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28660 | /* 81341 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28661 | /* 81348 */ // (st VR128:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src) |
| 28662 | /* 81348 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 28663 | /* 81351 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28664 | /* 81355 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28665 | /* 81357 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28666 | /* 81361 */ GIR_RootConstrainSelectedInstOperands, |
| 28667 | /* 81362 */ // GIR_Coverage, 17937, |
| 28668 | /* 81362 */ GIR_EraseRootFromParent_Done, |
| 28669 | /* 81363 */ // Label 1767: @81363 |
| 28670 | /* 81363 */ GIM_Try, /*On fail goto*//*Label 1768*/ GIMT_Encode4(81401), // Rule ID 17941 // |
| 28671 | /* 81368 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 28672 | /* 81371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28673 | /* 81375 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28674 | /* 81379 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28675 | /* 81386 */ // (st VR128:{ *:[v2i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src) |
| 28676 | /* 81386 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 28677 | /* 81389 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28678 | /* 81393 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28679 | /* 81395 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28680 | /* 81399 */ GIR_RootConstrainSelectedInstOperands, |
| 28681 | /* 81400 */ // GIR_Coverage, 17941, |
| 28682 | /* 81400 */ GIR_EraseRootFromParent_Done, |
| 28683 | /* 81401 */ // Label 1768: @81401 |
| 28684 | /* 81401 */ GIM_Reject, |
| 28685 | /* 81402 */ // Label 1756: @81402 |
| 28686 | /* 81402 */ GIM_Reject, |
| 28687 | /* 81403 */ // Label 1489: @81403 |
| 28688 | /* 81403 */ GIM_Try, /*On fail goto*//*Label 1769*/ GIMT_Encode4(81896), |
| 28689 | /* 81408 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28690 | /* 81411 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28691 | /* 81415 */ GIM_Try, /*On fail goto*//*Label 1770*/ GIMT_Encode4(81457), // Rule ID 1715 // |
| 28692 | /* 81420 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28693 | /* 81423 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28694 | /* 81427 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28695 | /* 81431 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28696 | /* 81435 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28697 | /* 81442 */ // (st VR128:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4f32] }:$src) |
| 28698 | /* 81442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSmr), |
| 28699 | /* 81445 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28700 | /* 81449 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28701 | /* 81451 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28702 | /* 81455 */ GIR_RootConstrainSelectedInstOperands, |
| 28703 | /* 81456 */ // GIR_Coverage, 1715, |
| 28704 | /* 81456 */ GIR_EraseRootFromParent_Done, |
| 28705 | /* 81457 */ // Label 1770: @81457 |
| 28706 | /* 81457 */ GIM_Try, /*On fail goto*//*Label 1771*/ GIMT_Encode4(81495), // Rule ID 1717 // |
| 28707 | /* 81462 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28708 | /* 81465 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28709 | /* 81469 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28710 | /* 81473 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28711 | /* 81480 */ // (st VR128:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4f32] }:$src) |
| 28712 | /* 81480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSmr), |
| 28713 | /* 81483 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28714 | /* 81487 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28715 | /* 81489 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28716 | /* 81493 */ GIR_RootConstrainSelectedInstOperands, |
| 28717 | /* 81494 */ // GIR_Coverage, 1717, |
| 28718 | /* 81494 */ GIR_EraseRootFromParent_Done, |
| 28719 | /* 81495 */ // Label 1771: @81495 |
| 28720 | /* 81495 */ GIM_Try, /*On fail goto*//*Label 1772*/ GIMT_Encode4(81537), // Rule ID 1723 // |
| 28721 | /* 81500 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 28722 | /* 81503 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28723 | /* 81507 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28724 | /* 81511 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28725 | /* 81515 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28726 | /* 81522 */ // (st VR128:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4f32] }:$src) |
| 28727 | /* 81522 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 28728 | /* 81525 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28729 | /* 81529 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28730 | /* 81531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28731 | /* 81535 */ GIR_RootConstrainSelectedInstOperands, |
| 28732 | /* 81536 */ // GIR_Coverage, 1723, |
| 28733 | /* 81536 */ GIR_EraseRootFromParent_Done, |
| 28734 | /* 81537 */ // Label 1772: @81537 |
| 28735 | /* 81537 */ GIM_Try, /*On fail goto*//*Label 1773*/ GIMT_Encode4(81575), // Rule ID 1725 // |
| 28736 | /* 81542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 28737 | /* 81545 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28738 | /* 81549 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28739 | /* 81553 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28740 | /* 81560 */ // (st VR128:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4f32] }:$src) |
| 28741 | /* 81560 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 28742 | /* 81563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28743 | /* 81567 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28744 | /* 81569 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28745 | /* 81573 */ GIR_RootConstrainSelectedInstOperands, |
| 28746 | /* 81574 */ // GIR_Coverage, 1725, |
| 28747 | /* 81574 */ GIR_EraseRootFromParent_Done, |
| 28748 | /* 81575 */ // Label 1773: @81575 |
| 28749 | /* 81575 */ GIM_Try, /*On fail goto*//*Label 1774*/ GIMT_Encode4(81617), // Rule ID 4482 // |
| 28750 | /* 81580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28751 | /* 81583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28752 | /* 81587 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28753 | /* 81591 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28754 | /* 81595 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28755 | /* 81602 */ // (st VR128X:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v4f32] }:$src) |
| 28756 | /* 81602 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128mr), |
| 28757 | /* 81605 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28758 | /* 81609 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28759 | /* 81611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28760 | /* 81615 */ GIR_RootConstrainSelectedInstOperands, |
| 28761 | /* 81616 */ // GIR_Coverage, 4482, |
| 28762 | /* 81616 */ GIR_EraseRootFromParent_Done, |
| 28763 | /* 81617 */ // Label 1774: @81617 |
| 28764 | /* 81617 */ GIM_Try, /*On fail goto*//*Label 1775*/ GIMT_Encode4(81655), // Rule ID 4512 // |
| 28765 | /* 81622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28766 | /* 81625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28767 | /* 81629 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28768 | /* 81633 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28769 | /* 81640 */ // (st VR128X:{ *:[v4f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v4f32] }:$src) |
| 28770 | /* 81640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128mr), |
| 28771 | /* 81643 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28772 | /* 81647 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28773 | /* 81649 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28774 | /* 81653 */ GIR_RootConstrainSelectedInstOperands, |
| 28775 | /* 81654 */ // GIR_Coverage, 4512, |
| 28776 | /* 81654 */ GIR_EraseRootFromParent_Done, |
| 28777 | /* 81655 */ // Label 1775: @81655 |
| 28778 | /* 81655 */ GIM_Try, /*On fail goto*//*Label 1776*/ GIMT_Encode4(81697), // Rule ID 17938 // |
| 28779 | /* 81660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 28780 | /* 81663 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28781 | /* 81667 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28782 | /* 81671 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28783 | /* 81675 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28784 | /* 81682 */ // (st VR128:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src) |
| 28785 | /* 81682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 28786 | /* 81685 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28787 | /* 81689 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28788 | /* 81691 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28789 | /* 81695 */ GIR_RootConstrainSelectedInstOperands, |
| 28790 | /* 81696 */ // GIR_Coverage, 17938, |
| 28791 | /* 81696 */ GIR_EraseRootFromParent_Done, |
| 28792 | /* 81697 */ // Label 1776: @81697 |
| 28793 | /* 81697 */ GIM_Try, /*On fail goto*//*Label 1777*/ GIMT_Encode4(81735), // Rule ID 17942 // |
| 28794 | /* 81702 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 28795 | /* 81705 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28796 | /* 81709 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28797 | /* 81713 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28798 | /* 81720 */ // (st VR128:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src) |
| 28799 | /* 81720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 28800 | /* 81723 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28801 | /* 81727 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28802 | /* 81729 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28803 | /* 81733 */ GIR_RootConstrainSelectedInstOperands, |
| 28804 | /* 81734 */ // GIR_Coverage, 17942, |
| 28805 | /* 81734 */ GIR_EraseRootFromParent_Done, |
| 28806 | /* 81735 */ // Label 1777: @81735 |
| 28807 | /* 81735 */ GIM_Try, /*On fail goto*//*Label 1778*/ GIMT_Encode4(81777), // Rule ID 18317 // |
| 28808 | /* 81740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28809 | /* 81743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28810 | /* 81747 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28811 | /* 81751 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28812 | /* 81755 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28813 | /* 81762 */ // (st VR128:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src) |
| 28814 | /* 81762 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 28815 | /* 81765 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28816 | /* 81769 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28817 | /* 81771 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28818 | /* 81775 */ GIR_RootConstrainSelectedInstOperands, |
| 28819 | /* 81776 */ // GIR_Coverage, 18317, |
| 28820 | /* 81776 */ GIR_EraseRootFromParent_Done, |
| 28821 | /* 81777 */ // Label 1778: @81777 |
| 28822 | /* 81777 */ GIM_Try, /*On fail goto*//*Label 1779*/ GIMT_Encode4(81815), // Rule ID 18321 // |
| 28823 | /* 81782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28824 | /* 81785 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 28825 | /* 81789 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28826 | /* 81793 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28827 | /* 81800 */ // (st VR128:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src) |
| 28828 | /* 81800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 28829 | /* 81803 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28830 | /* 81807 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28831 | /* 81809 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28832 | /* 81813 */ GIR_RootConstrainSelectedInstOperands, |
| 28833 | /* 81814 */ // GIR_Coverage, 18321, |
| 28834 | /* 81814 */ GIR_EraseRootFromParent_Done, |
| 28835 | /* 81815 */ // Label 1779: @81815 |
| 28836 | /* 81815 */ GIM_Try, /*On fail goto*//*Label 1780*/ GIMT_Encode4(81857), // Rule ID 19829 // |
| 28837 | /* 81820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 28838 | /* 81823 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28839 | /* 81827 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28840 | /* 81831 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28841 | /* 81835 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28842 | /* 81842 */ // (st VR128X:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v4i32] }:$src) |
| 28843 | /* 81842 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128mr), |
| 28844 | /* 81845 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28845 | /* 81849 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28846 | /* 81851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28847 | /* 81855 */ GIR_RootConstrainSelectedInstOperands, |
| 28848 | /* 81856 */ // GIR_Coverage, 19829, |
| 28849 | /* 81856 */ GIR_EraseRootFromParent_Done, |
| 28850 | /* 81857 */ // Label 1780: @81857 |
| 28851 | /* 81857 */ GIM_Try, /*On fail goto*//*Label 1781*/ GIMT_Encode4(81895), // Rule ID 19833 // |
| 28852 | /* 81862 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 28853 | /* 81865 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 28854 | /* 81869 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28855 | /* 81873 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28856 | /* 81880 */ // (st VR128X:{ *:[v4i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v4i32] }:$src) |
| 28857 | /* 81880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128mr), |
| 28858 | /* 81883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28859 | /* 81887 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28860 | /* 81889 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28861 | /* 81893 */ GIR_RootConstrainSelectedInstOperands, |
| 28862 | /* 81894 */ // GIR_Coverage, 19833, |
| 28863 | /* 81894 */ GIR_EraseRootFromParent_Done, |
| 28864 | /* 81895 */ // Label 1781: @81895 |
| 28865 | /* 81895 */ GIM_Reject, |
| 28866 | /* 81896 */ // Label 1769: @81896 |
| 28867 | /* 81896 */ GIM_Reject, |
| 28868 | /* 81897 */ // Label 1490: @81897 |
| 28869 | /* 81897 */ GIM_Try, /*On fail goto*//*Label 1782*/ GIMT_Encode4(82230), |
| 28870 | /* 81902 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28871 | /* 81905 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28872 | /* 81909 */ GIM_Try, /*On fail goto*//*Label 1783*/ GIMT_Encode4(81951), // Rule ID 1720 // |
| 28873 | /* 81914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28874 | /* 81917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 28875 | /* 81921 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28876 | /* 81925 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28877 | /* 81929 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28878 | /* 81936 */ // (st VR256:{ *:[v4f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4f64] }:$src) |
| 28879 | /* 81936 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDYmr), |
| 28880 | /* 81939 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28881 | /* 81943 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28882 | /* 81945 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28883 | /* 81949 */ GIR_RootConstrainSelectedInstOperands, |
| 28884 | /* 81950 */ // GIR_Coverage, 1720, |
| 28885 | /* 81950 */ GIR_EraseRootFromParent_Done, |
| 28886 | /* 81951 */ // Label 1783: @81951 |
| 28887 | /* 81951 */ GIM_Try, /*On fail goto*//*Label 1784*/ GIMT_Encode4(81989), // Rule ID 1722 // |
| 28888 | /* 81956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28889 | /* 81959 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 28890 | /* 81963 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28891 | /* 81967 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28892 | /* 81974 */ // (st VR256:{ *:[v4f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4f64] }:$src) |
| 28893 | /* 81974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDYmr), |
| 28894 | /* 81977 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28895 | /* 81981 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28896 | /* 81983 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28897 | /* 81987 */ GIR_RootConstrainSelectedInstOperands, |
| 28898 | /* 81988 */ // GIR_Coverage, 1722, |
| 28899 | /* 81988 */ GIR_EraseRootFromParent_Done, |
| 28900 | /* 81989 */ // Label 1784: @81989 |
| 28901 | /* 81989 */ GIM_Try, /*On fail goto*//*Label 1785*/ GIMT_Encode4(82031), // Rule ID 4499 // |
| 28902 | /* 81994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28903 | /* 81997 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 28904 | /* 82001 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28905 | /* 82005 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28906 | /* 82009 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28907 | /* 82016 */ // (st VR256X:{ *:[v4f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v4f64] }:$src) |
| 28908 | /* 82016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ256mr), |
| 28909 | /* 82019 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28910 | /* 82023 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28911 | /* 82025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28912 | /* 82029 */ GIR_RootConstrainSelectedInstOperands, |
| 28913 | /* 82030 */ // GIR_Coverage, 4499, |
| 28914 | /* 82030 */ GIR_EraseRootFromParent_Done, |
| 28915 | /* 82031 */ // Label 1785: @82031 |
| 28916 | /* 82031 */ GIM_Try, /*On fail goto*//*Label 1786*/ GIMT_Encode4(82069), // Rule ID 4523 // |
| 28917 | /* 82036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28918 | /* 82039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 28919 | /* 82043 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28920 | /* 82047 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28921 | /* 82054 */ // (st VR256X:{ *:[v4f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v4f64] }:$src) |
| 28922 | /* 82054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZ256mr), |
| 28923 | /* 82057 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28924 | /* 82061 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28925 | /* 82063 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28926 | /* 82067 */ GIR_RootConstrainSelectedInstOperands, |
| 28927 | /* 82068 */ // GIR_Coverage, 4523, |
| 28928 | /* 82068 */ GIR_EraseRootFromParent_Done, |
| 28929 | /* 82069 */ // Label 1786: @82069 |
| 28930 | /* 82069 */ GIM_Try, /*On fail goto*//*Label 1787*/ GIMT_Encode4(82111), // Rule ID 4553 // |
| 28931 | /* 82074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28932 | /* 82077 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 28933 | /* 82081 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28934 | /* 82085 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28935 | /* 82089 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28936 | /* 82096 */ // (st VR256X:{ *:[v4i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v4i64] }:$src) |
| 28937 | /* 82096 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256mr), |
| 28938 | /* 82099 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28939 | /* 82103 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28940 | /* 82105 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28941 | /* 82109 */ GIR_RootConstrainSelectedInstOperands, |
| 28942 | /* 82110 */ // GIR_Coverage, 4553, |
| 28943 | /* 82110 */ GIR_EraseRootFromParent_Done, |
| 28944 | /* 82111 */ // Label 1787: @82111 |
| 28945 | /* 82111 */ GIM_Try, /*On fail goto*//*Label 1788*/ GIMT_Encode4(82149), // Rule ID 4595 // |
| 28946 | /* 82116 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 28947 | /* 82119 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 28948 | /* 82123 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28949 | /* 82127 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28950 | /* 82134 */ // (st VR256X:{ *:[v4i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v4i64] }:$src) |
| 28951 | /* 82134 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256mr), |
| 28952 | /* 82137 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28953 | /* 82141 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28954 | /* 82143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28955 | /* 82147 */ GIR_RootConstrainSelectedInstOperands, |
| 28956 | /* 82148 */ // GIR_Coverage, 4595, |
| 28957 | /* 82148 */ GIR_EraseRootFromParent_Done, |
| 28958 | /* 82149 */ // Label 1788: @82149 |
| 28959 | /* 82149 */ GIM_Try, /*On fail goto*//*Label 1789*/ GIMT_Encode4(82191), // Rule ID 17913 // |
| 28960 | /* 82154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28961 | /* 82157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 28962 | /* 82161 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28963 | /* 82165 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 28964 | /* 82169 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28965 | /* 82176 */ // (st VR256:{ *:[v4i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src) |
| 28966 | /* 82176 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 28967 | /* 82179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28968 | /* 82183 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28969 | /* 82185 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28970 | /* 82189 */ GIR_RootConstrainSelectedInstOperands, |
| 28971 | /* 82190 */ // GIR_Coverage, 17913, |
| 28972 | /* 82190 */ GIR_EraseRootFromParent_Done, |
| 28973 | /* 82191 */ // Label 1789: @82191 |
| 28974 | /* 82191 */ GIM_Try, /*On fail goto*//*Label 1790*/ GIMT_Encode4(82229), // Rule ID 17917 // |
| 28975 | /* 82196 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 28976 | /* 82199 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 28977 | /* 82203 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28978 | /* 82207 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 28979 | /* 82214 */ // (st VR256:{ *:[v4i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src) |
| 28980 | /* 82214 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 28981 | /* 82217 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 28982 | /* 82221 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 28983 | /* 82223 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 28984 | /* 82227 */ GIR_RootConstrainSelectedInstOperands, |
| 28985 | /* 82228 */ // GIR_Coverage, 17917, |
| 28986 | /* 82228 */ GIR_EraseRootFromParent_Done, |
| 28987 | /* 82229 */ // Label 1790: @82229 |
| 28988 | /* 82229 */ GIM_Reject, |
| 28989 | /* 82230 */ // Label 1782: @82230 |
| 28990 | /* 82230 */ GIM_Reject, |
| 28991 | /* 82231 */ // Label 1491: @82231 |
| 28992 | /* 82231 */ GIM_Try, /*On fail goto*//*Label 1791*/ GIMT_Encode4(82312), |
| 28993 | /* 82236 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 28994 | /* 82239 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 28995 | /* 82243 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 28996 | /* 82247 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 28997 | /* 82251 */ GIM_Try, /*On fail goto*//*Label 1792*/ GIMT_Encode4(82281), // Rule ID 4398 // |
| 28998 | /* 82256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoEGPR), |
| 28999 | /* 82259 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29000 | /* 82266 */ // (st VK8:{ *:[v8i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVBmk addr:{ *:[iPTR] }:$dst, VK8:{ *:[v8i1] }:$src) |
| 29001 | /* 82266 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBmk), |
| 29002 | /* 82269 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29003 | /* 82273 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29004 | /* 82275 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29005 | /* 82279 */ GIR_RootConstrainSelectedInstOperands, |
| 29006 | /* 82280 */ // GIR_Coverage, 4398, |
| 29007 | /* 82280 */ GIR_EraseRootFromParent_Done, |
| 29008 | /* 82281 */ // Label 1792: @82281 |
| 29009 | /* 82281 */ GIM_Try, /*On fail goto*//*Label 1793*/ GIMT_Encode4(82311), // Rule ID 4400 // |
| 29010 | /* 82286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasEGPR_In64BitMode), |
| 29011 | /* 82289 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29012 | /* 82296 */ // (st VK8:{ *:[v8i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVBmk_EVEX addr:{ *:[iPTR] }:$dst, VK8:{ *:[v8i1] }:$src) |
| 29013 | /* 82296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBmk_EVEX), |
| 29014 | /* 82299 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29015 | /* 82303 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29016 | /* 82305 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29017 | /* 82309 */ GIR_RootConstrainSelectedInstOperands, |
| 29018 | /* 82310 */ // GIR_Coverage, 4400, |
| 29019 | /* 82310 */ GIR_EraseRootFromParent_Done, |
| 29020 | /* 82311 */ // Label 1793: @82311 |
| 29021 | /* 82311 */ GIM_Reject, |
| 29022 | /* 82312 */ // Label 1791: @82312 |
| 29023 | /* 82312 */ GIM_Reject, |
| 29024 | /* 82313 */ // Label 1492: @82313 |
| 29025 | /* 82313 */ GIM_Try, /*On fail goto*//*Label 1794*/ GIMT_Encode4(82886), |
| 29026 | /* 82318 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29027 | /* 82321 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29028 | /* 82325 */ GIM_Try, /*On fail goto*//*Label 1795*/ GIMT_Encode4(82367), // Rule ID 17923 // |
| 29029 | /* 82330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29030 | /* 82333 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29031 | /* 82337 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29032 | /* 82341 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29033 | /* 82345 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29034 | /* 82352 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29035 | /* 82352 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSmr), |
| 29036 | /* 82355 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29037 | /* 82359 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29038 | /* 82361 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29039 | /* 82365 */ GIR_RootConstrainSelectedInstOperands, |
| 29040 | /* 82366 */ // GIR_Coverage, 17923, |
| 29041 | /* 82366 */ GIR_EraseRootFromParent_Done, |
| 29042 | /* 82367 */ // Label 1795: @82367 |
| 29043 | /* 82367 */ GIM_Try, /*On fail goto*//*Label 1796*/ GIMT_Encode4(82405), // Rule ID 17924 // |
| 29044 | /* 82372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29045 | /* 82375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29046 | /* 82379 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29047 | /* 82383 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29048 | /* 82390 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29049 | /* 82390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSmr), |
| 29050 | /* 82393 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29051 | /* 82397 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29052 | /* 82399 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29053 | /* 82403 */ GIR_RootConstrainSelectedInstOperands, |
| 29054 | /* 82404 */ // GIR_Coverage, 17924, |
| 29055 | /* 82404 */ GIR_EraseRootFromParent_Done, |
| 29056 | /* 82405 */ // Label 1796: @82405 |
| 29057 | /* 82405 */ GIM_Try, /*On fail goto*//*Label 1797*/ GIMT_Encode4(82447), // Rule ID 17939 // |
| 29058 | /* 82410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29059 | /* 82413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29060 | /* 82417 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29061 | /* 82421 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29062 | /* 82425 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29063 | /* 82432 */ // (st VR128:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8i16] }:$src) |
| 29064 | /* 82432 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 29065 | /* 82435 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29066 | /* 82439 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29067 | /* 82441 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29068 | /* 82445 */ GIR_RootConstrainSelectedInstOperands, |
| 29069 | /* 82446 */ // GIR_Coverage, 17939, |
| 29070 | /* 82446 */ GIR_EraseRootFromParent_Done, |
| 29071 | /* 82447 */ // Label 1797: @82447 |
| 29072 | /* 82447 */ GIM_Try, /*On fail goto*//*Label 1798*/ GIMT_Encode4(82485), // Rule ID 17943 // |
| 29073 | /* 82452 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29074 | /* 82455 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29075 | /* 82459 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29076 | /* 82463 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29077 | /* 82470 */ // (st VR128:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8i16] }:$src) |
| 29078 | /* 82470 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 29079 | /* 82473 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29080 | /* 82477 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29081 | /* 82479 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29082 | /* 82483 */ GIR_RootConstrainSelectedInstOperands, |
| 29083 | /* 82484 */ // GIR_Coverage, 17943, |
| 29084 | /* 82484 */ GIR_EraseRootFromParent_Done, |
| 29085 | /* 82485 */ // Label 1798: @82485 |
| 29086 | /* 82485 */ GIM_Try, /*On fail goto*//*Label 1799*/ GIMT_Encode4(82527), // Rule ID 17947 // |
| 29087 | /* 82490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 29088 | /* 82493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29089 | /* 82497 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29090 | /* 82501 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29091 | /* 82505 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29092 | /* 82512 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29093 | /* 82512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 29094 | /* 82515 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29095 | /* 82519 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29096 | /* 82521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29097 | /* 82525 */ GIR_RootConstrainSelectedInstOperands, |
| 29098 | /* 82526 */ // GIR_Coverage, 17947, |
| 29099 | /* 82526 */ GIR_EraseRootFromParent_Done, |
| 29100 | /* 82527 */ // Label 1799: @82527 |
| 29101 | /* 82527 */ GIM_Try, /*On fail goto*//*Label 1800*/ GIMT_Encode4(82565), // Rule ID 17948 // |
| 29102 | /* 82532 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 29103 | /* 82535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29104 | /* 82539 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29105 | /* 82543 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29106 | /* 82550 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29107 | /* 82550 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 29108 | /* 82553 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29109 | /* 82557 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29110 | /* 82559 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29111 | /* 82563 */ GIR_RootConstrainSelectedInstOperands, |
| 29112 | /* 82564 */ // GIR_Coverage, 17948, |
| 29113 | /* 82564 */ GIR_EraseRootFromParent_Done, |
| 29114 | /* 82565 */ // Label 1800: @82565 |
| 29115 | /* 82565 */ GIM_Try, /*On fail goto*//*Label 1801*/ GIMT_Encode4(82607), // Rule ID 18318 // |
| 29116 | /* 82570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29117 | /* 82573 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29118 | /* 82577 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29119 | /* 82581 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29120 | /* 82585 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29121 | /* 82592 */ // (st VR128:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8i16] }:$src) |
| 29122 | /* 82592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 29123 | /* 82595 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29124 | /* 82599 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29125 | /* 82601 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29126 | /* 82605 */ GIR_RootConstrainSelectedInstOperands, |
| 29127 | /* 82606 */ // GIR_Coverage, 18318, |
| 29128 | /* 82606 */ GIR_EraseRootFromParent_Done, |
| 29129 | /* 82607 */ // Label 1801: @82607 |
| 29130 | /* 82607 */ GIM_Try, /*On fail goto*//*Label 1802*/ GIMT_Encode4(82649), // Rule ID 18319 // |
| 29131 | /* 82612 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29132 | /* 82615 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29133 | /* 82619 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29134 | /* 82623 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29135 | /* 82627 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29136 | /* 82634 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29137 | /* 82634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 29138 | /* 82637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29139 | /* 82641 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29140 | /* 82643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29141 | /* 82647 */ GIR_RootConstrainSelectedInstOperands, |
| 29142 | /* 82648 */ // GIR_Coverage, 18319, |
| 29143 | /* 82648 */ GIR_EraseRootFromParent_Done, |
| 29144 | /* 82649 */ // Label 1802: @82649 |
| 29145 | /* 82649 */ GIM_Try, /*On fail goto*//*Label 1803*/ GIMT_Encode4(82687), // Rule ID 18322 // |
| 29146 | /* 82654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29147 | /* 82657 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29148 | /* 82661 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29149 | /* 82665 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29150 | /* 82672 */ // (st VR128:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8i16] }:$src) |
| 29151 | /* 82672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 29152 | /* 82675 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29153 | /* 82679 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29154 | /* 82681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29155 | /* 82685 */ GIR_RootConstrainSelectedInstOperands, |
| 29156 | /* 82686 */ // GIR_Coverage, 18322, |
| 29157 | /* 82686 */ GIR_EraseRootFromParent_Done, |
| 29158 | /* 82687 */ // Label 1803: @82687 |
| 29159 | /* 82687 */ GIM_Try, /*On fail goto*//*Label 1804*/ GIMT_Encode4(82725), // Rule ID 18323 // |
| 29160 | /* 82692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29161 | /* 82695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29162 | /* 82699 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29163 | /* 82703 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29164 | /* 82710 */ // (st VR128:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v8f16] }:$src) |
| 29165 | /* 82710 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 29166 | /* 82713 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29167 | /* 82717 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29168 | /* 82719 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29169 | /* 82723 */ GIR_RootConstrainSelectedInstOperands, |
| 29170 | /* 82724 */ // GIR_Coverage, 18323, |
| 29171 | /* 82724 */ GIR_EraseRootFromParent_Done, |
| 29172 | /* 82725 */ // Label 1804: @82725 |
| 29173 | /* 82725 */ GIM_Try, /*On fail goto*//*Label 1805*/ GIMT_Encode4(82767), // Rule ID 19830 // |
| 29174 | /* 82730 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29175 | /* 82733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29176 | /* 82737 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29177 | /* 82741 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29178 | /* 82745 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29179 | /* 82752 */ // (st VR128X:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v8i16] }:$src) |
| 29180 | /* 82752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128mr), |
| 29181 | /* 82755 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29182 | /* 82759 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29183 | /* 82761 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29184 | /* 82765 */ GIR_RootConstrainSelectedInstOperands, |
| 29185 | /* 82766 */ // GIR_Coverage, 19830, |
| 29186 | /* 82766 */ GIR_EraseRootFromParent_Done, |
| 29187 | /* 82767 */ // Label 1805: @82767 |
| 29188 | /* 82767 */ GIM_Try, /*On fail goto*//*Label 1806*/ GIMT_Encode4(82809), // Rule ID 19831 // |
| 29189 | /* 82772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29190 | /* 82775 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29191 | /* 82779 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29192 | /* 82783 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29193 | /* 82787 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29194 | /* 82794 */ // (st VR128X:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v8f16] }:$src) |
| 29195 | /* 82794 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128mr), |
| 29196 | /* 82797 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29197 | /* 82801 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29198 | /* 82803 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29199 | /* 82807 */ GIR_RootConstrainSelectedInstOperands, |
| 29200 | /* 82808 */ // GIR_Coverage, 19831, |
| 29201 | /* 82808 */ GIR_EraseRootFromParent_Done, |
| 29202 | /* 82809 */ // Label 1806: @82809 |
| 29203 | /* 82809 */ GIM_Try, /*On fail goto*//*Label 1807*/ GIMT_Encode4(82847), // Rule ID 19834 // |
| 29204 | /* 82814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29205 | /* 82817 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29206 | /* 82821 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29207 | /* 82825 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29208 | /* 82832 */ // (st VR128X:{ *:[v8i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v8i16] }:$src) |
| 29209 | /* 82832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128mr), |
| 29210 | /* 82835 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29211 | /* 82839 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29212 | /* 82841 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29213 | /* 82845 */ GIR_RootConstrainSelectedInstOperands, |
| 29214 | /* 82846 */ // GIR_Coverage, 19834, |
| 29215 | /* 82846 */ GIR_EraseRootFromParent_Done, |
| 29216 | /* 82847 */ // Label 1807: @82847 |
| 29217 | /* 82847 */ GIM_Try, /*On fail goto*//*Label 1808*/ GIMT_Encode4(82885), // Rule ID 19835 // |
| 29218 | /* 82852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29219 | /* 82855 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29220 | /* 82859 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29221 | /* 82863 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29222 | /* 82870 */ // (st VR128X:{ *:[v8f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v8f16] }:$src) |
| 29223 | /* 82870 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ128mr), |
| 29224 | /* 82873 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29225 | /* 82877 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29226 | /* 82879 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29227 | /* 82883 */ GIR_RootConstrainSelectedInstOperands, |
| 29228 | /* 82884 */ // GIR_Coverage, 19835, |
| 29229 | /* 82884 */ GIR_EraseRootFromParent_Done, |
| 29230 | /* 82885 */ // Label 1808: @82885 |
| 29231 | /* 82885 */ GIM_Reject, |
| 29232 | /* 82886 */ // Label 1794: @82886 |
| 29233 | /* 82886 */ GIM_Reject, |
| 29234 | /* 82887 */ // Label 1493: @82887 |
| 29235 | /* 82887 */ GIM_Try, /*On fail goto*//*Label 1809*/ GIMT_Encode4(83220), |
| 29236 | /* 82892 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29237 | /* 82895 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29238 | /* 82899 */ GIM_Try, /*On fail goto*//*Label 1810*/ GIMT_Encode4(82941), // Rule ID 1719 // |
| 29239 | /* 82904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29240 | /* 82907 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29241 | /* 82911 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29242 | /* 82915 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29243 | /* 82919 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29244 | /* 82926 */ // (st VR256:{ *:[v8f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8f32] }:$src) |
| 29245 | /* 82926 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29246 | /* 82929 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29247 | /* 82933 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29248 | /* 82935 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29249 | /* 82939 */ GIR_RootConstrainSelectedInstOperands, |
| 29250 | /* 82940 */ // GIR_Coverage, 1719, |
| 29251 | /* 82940 */ GIR_EraseRootFromParent_Done, |
| 29252 | /* 82941 */ // Label 1810: @82941 |
| 29253 | /* 82941 */ GIM_Try, /*On fail goto*//*Label 1811*/ GIMT_Encode4(82979), // Rule ID 1721 // |
| 29254 | /* 82946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29255 | /* 82949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29256 | /* 82953 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29257 | /* 82957 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29258 | /* 82964 */ // (st VR256:{ *:[v8f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8f32] }:$src) |
| 29259 | /* 82964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29260 | /* 82967 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29261 | /* 82971 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29262 | /* 82973 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29263 | /* 82977 */ GIR_RootConstrainSelectedInstOperands, |
| 29264 | /* 82978 */ // GIR_Coverage, 1721, |
| 29265 | /* 82978 */ GIR_EraseRootFromParent_Done, |
| 29266 | /* 82979 */ // Label 1811: @82979 |
| 29267 | /* 82979 */ GIM_Try, /*On fail goto*//*Label 1812*/ GIMT_Encode4(83021), // Rule ID 4481 // |
| 29268 | /* 82984 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29269 | /* 82987 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29270 | /* 82991 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29271 | /* 82995 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29272 | /* 82999 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29273 | /* 83006 */ // (st VR256X:{ *:[v8f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v8f32] }:$src) |
| 29274 | /* 83006 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256mr), |
| 29275 | /* 83009 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29276 | /* 83013 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29277 | /* 83015 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29278 | /* 83019 */ GIR_RootConstrainSelectedInstOperands, |
| 29279 | /* 83020 */ // GIR_Coverage, 4481, |
| 29280 | /* 83020 */ GIR_EraseRootFromParent_Done, |
| 29281 | /* 83021 */ // Label 1812: @83021 |
| 29282 | /* 83021 */ GIM_Try, /*On fail goto*//*Label 1813*/ GIMT_Encode4(83059), // Rule ID 4511 // |
| 29283 | /* 83026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 29284 | /* 83029 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29285 | /* 83033 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29286 | /* 83037 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29287 | /* 83044 */ // (st VR256X:{ *:[v8f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v8f32] }:$src) |
| 29288 | /* 83044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ256mr), |
| 29289 | /* 83047 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29290 | /* 83051 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29291 | /* 83053 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29292 | /* 83057 */ GIR_RootConstrainSelectedInstOperands, |
| 29293 | /* 83058 */ // GIR_Coverage, 4511, |
| 29294 | /* 83058 */ GIR_EraseRootFromParent_Done, |
| 29295 | /* 83059 */ // Label 1813: @83059 |
| 29296 | /* 83059 */ GIM_Try, /*On fail goto*//*Label 1814*/ GIMT_Encode4(83101), // Rule ID 17914 // |
| 29297 | /* 83064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29298 | /* 83067 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29299 | /* 83071 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29300 | /* 83075 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29301 | /* 83079 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29302 | /* 83086 */ // (st VR256:{ *:[v8i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src) |
| 29303 | /* 83086 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29304 | /* 83089 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29305 | /* 83093 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29306 | /* 83095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29307 | /* 83099 */ GIR_RootConstrainSelectedInstOperands, |
| 29308 | /* 83100 */ // GIR_Coverage, 17914, |
| 29309 | /* 83100 */ GIR_EraseRootFromParent_Done, |
| 29310 | /* 83101 */ // Label 1814: @83101 |
| 29311 | /* 83101 */ GIM_Try, /*On fail goto*//*Label 1815*/ GIMT_Encode4(83139), // Rule ID 17918 // |
| 29312 | /* 83106 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29313 | /* 83109 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29314 | /* 83113 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29315 | /* 83117 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29316 | /* 83124 */ // (st VR256:{ *:[v8i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src) |
| 29317 | /* 83124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29318 | /* 83127 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29319 | /* 83131 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29320 | /* 83133 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29321 | /* 83137 */ GIR_RootConstrainSelectedInstOperands, |
| 29322 | /* 83138 */ // GIR_Coverage, 17918, |
| 29323 | /* 83138 */ GIR_EraseRootFromParent_Done, |
| 29324 | /* 83139 */ // Label 1815: @83139 |
| 29325 | /* 83139 */ GIM_Try, /*On fail goto*//*Label 1816*/ GIMT_Encode4(83181), // Rule ID 19845 // |
| 29326 | /* 83144 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29327 | /* 83147 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29328 | /* 83151 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29329 | /* 83155 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29330 | /* 83159 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29331 | /* 83166 */ // (st VR256X:{ *:[v8i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v8i32] }:$src) |
| 29332 | /* 83166 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256mr), |
| 29333 | /* 83169 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29334 | /* 83173 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29335 | /* 83175 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29336 | /* 83179 */ GIR_RootConstrainSelectedInstOperands, |
| 29337 | /* 83180 */ // GIR_Coverage, 19845, |
| 29338 | /* 83180 */ GIR_EraseRootFromParent_Done, |
| 29339 | /* 83181 */ // Label 1816: @83181 |
| 29340 | /* 83181 */ GIM_Try, /*On fail goto*//*Label 1817*/ GIMT_Encode4(83219), // Rule ID 19849 // |
| 29341 | /* 83186 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29342 | /* 83189 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29343 | /* 83193 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29344 | /* 83197 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29345 | /* 83204 */ // (st VR256X:{ *:[v8i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v8i32] }:$src) |
| 29346 | /* 83204 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256mr), |
| 29347 | /* 83207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29348 | /* 83211 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29349 | /* 83213 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29350 | /* 83217 */ GIR_RootConstrainSelectedInstOperands, |
| 29351 | /* 83218 */ // GIR_Coverage, 19849, |
| 29352 | /* 83218 */ GIR_EraseRootFromParent_Done, |
| 29353 | /* 83219 */ // Label 1817: @83219 |
| 29354 | /* 83219 */ GIM_Reject, |
| 29355 | /* 83220 */ // Label 1809: @83220 |
| 29356 | /* 83220 */ GIM_Reject, |
| 29357 | /* 83221 */ // Label 1494: @83221 |
| 29358 | /* 83221 */ GIM_Try, /*On fail goto*//*Label 1818*/ GIMT_Encode4(83394), |
| 29359 | /* 83226 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29360 | /* 83229 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29361 | /* 83233 */ GIM_Try, /*On fail goto*//*Label 1819*/ GIMT_Encode4(83275), // Rule ID 4498 // |
| 29362 | /* 83238 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29363 | /* 83241 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29364 | /* 83245 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29365 | /* 83249 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29366 | /* 83253 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29367 | /* 83260 */ // (st VR512:{ *:[v8f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPDZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v8f64] }:$src) |
| 29368 | /* 83260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZmr), |
| 29369 | /* 83263 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29370 | /* 83267 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29371 | /* 83269 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29372 | /* 83273 */ GIR_RootConstrainSelectedInstOperands, |
| 29373 | /* 83274 */ // GIR_Coverage, 4498, |
| 29374 | /* 83274 */ GIR_EraseRootFromParent_Done, |
| 29375 | /* 83275 */ // Label 1819: @83275 |
| 29376 | /* 83275 */ GIM_Try, /*On fail goto*//*Label 1820*/ GIMT_Encode4(83313), // Rule ID 4522 // |
| 29377 | /* 83280 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29378 | /* 83283 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29379 | /* 83287 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29380 | /* 83291 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29381 | /* 83298 */ // (st VR512:{ *:[v8f64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPDZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v8f64] }:$src) |
| 29382 | /* 83298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPDZmr), |
| 29383 | /* 83301 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29384 | /* 83305 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29385 | /* 83307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29386 | /* 83311 */ GIR_RootConstrainSelectedInstOperands, |
| 29387 | /* 83312 */ // GIR_Coverage, 4522, |
| 29388 | /* 83312 */ GIR_EraseRootFromParent_Done, |
| 29389 | /* 83313 */ // Label 1820: @83313 |
| 29390 | /* 83313 */ GIM_Try, /*On fail goto*//*Label 1821*/ GIMT_Encode4(83355), // Rule ID 4552 // |
| 29391 | /* 83318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29392 | /* 83321 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29393 | /* 83325 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29394 | /* 83329 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29395 | /* 83333 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29396 | /* 83340 */ // (st VR512:{ *:[v8i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v8i64] }:$src) |
| 29397 | /* 83340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zmr), |
| 29398 | /* 83343 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29399 | /* 83347 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29400 | /* 83349 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29401 | /* 83353 */ GIR_RootConstrainSelectedInstOperands, |
| 29402 | /* 83354 */ // GIR_Coverage, 4552, |
| 29403 | /* 83354 */ GIR_EraseRootFromParent_Done, |
| 29404 | /* 83355 */ // Label 1821: @83355 |
| 29405 | /* 83355 */ GIM_Try, /*On fail goto*//*Label 1822*/ GIMT_Encode4(83393), // Rule ID 4594 // |
| 29406 | /* 83360 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29407 | /* 83363 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29408 | /* 83367 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29409 | /* 83371 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29410 | /* 83378 */ // (st VR512:{ *:[v8i64] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v8i64] }:$src) |
| 29411 | /* 83378 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zmr), |
| 29412 | /* 83381 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29413 | /* 83385 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29414 | /* 83387 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29415 | /* 83391 */ GIR_RootConstrainSelectedInstOperands, |
| 29416 | /* 83392 */ // GIR_Coverage, 4594, |
| 29417 | /* 83392 */ GIR_EraseRootFromParent_Done, |
| 29418 | /* 83393 */ // Label 1822: @83393 |
| 29419 | /* 83393 */ GIM_Reject, |
| 29420 | /* 83394 */ // Label 1818: @83394 |
| 29421 | /* 83394 */ GIM_Reject, |
| 29422 | /* 83395 */ // Label 1495: @83395 |
| 29423 | /* 83395 */ GIM_Try, /*On fail goto*//*Label 1823*/ GIMT_Encode4(83476), |
| 29424 | /* 83400 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29425 | /* 83403 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29426 | /* 83407 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 29427 | /* 83411 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29428 | /* 83415 */ GIM_Try, /*On fail goto*//*Label 1824*/ GIMT_Encode4(83445), // Rule ID 4402 // |
| 29429 | /* 83420 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoEGPR), |
| 29430 | /* 83423 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29431 | /* 83430 */ // (st VK16:{ *:[v16i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVWmk addr:{ *:[iPTR] }:$dst, VK16:{ *:[v16i1] }:$src) |
| 29432 | /* 83430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWmk), |
| 29433 | /* 83433 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29434 | /* 83437 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29435 | /* 83439 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29436 | /* 83443 */ GIR_RootConstrainSelectedInstOperands, |
| 29437 | /* 83444 */ // GIR_Coverage, 4402, |
| 29438 | /* 83444 */ GIR_EraseRootFromParent_Done, |
| 29439 | /* 83445 */ // Label 1824: @83445 |
| 29440 | /* 83445 */ GIM_Try, /*On fail goto*//*Label 1825*/ GIMT_Encode4(83475), // Rule ID 4404 // |
| 29441 | /* 83450 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasEGPR_In64BitMode), |
| 29442 | /* 83453 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29443 | /* 83460 */ // (st VK16:{ *:[v16i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVWmk_EVEX addr:{ *:[iPTR] }:$dst, VK16:{ *:[v16i1] }:$src) |
| 29444 | /* 83460 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWmk_EVEX), |
| 29445 | /* 83463 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29446 | /* 83467 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29447 | /* 83469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29448 | /* 83473 */ GIR_RootConstrainSelectedInstOperands, |
| 29449 | /* 83474 */ // GIR_Coverage, 4404, |
| 29450 | /* 83474 */ GIR_EraseRootFromParent_Done, |
| 29451 | /* 83475 */ // Label 1825: @83475 |
| 29452 | /* 83475 */ GIM_Reject, |
| 29453 | /* 83476 */ // Label 1823: @83476 |
| 29454 | /* 83476 */ GIM_Reject, |
| 29455 | /* 83477 */ // Label 1496: @83477 |
| 29456 | /* 83477 */ GIM_Try, /*On fail goto*//*Label 1826*/ GIMT_Encode4(83730), |
| 29457 | /* 83482 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29458 | /* 83485 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29459 | /* 83489 */ GIM_Try, /*On fail goto*//*Label 1827*/ GIMT_Encode4(83531), // Rule ID 17940 // |
| 29460 | /* 83494 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29461 | /* 83497 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29462 | /* 83501 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29463 | /* 83505 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29464 | /* 83509 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29465 | /* 83516 */ // (st VR128:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (MOVAPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v16i8] }:$src) |
| 29466 | /* 83516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVAPSmr), |
| 29467 | /* 83519 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29468 | /* 83523 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29469 | /* 83525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29470 | /* 83529 */ GIR_RootConstrainSelectedInstOperands, |
| 29471 | /* 83530 */ // GIR_Coverage, 17940, |
| 29472 | /* 83530 */ GIR_EraseRootFromParent_Done, |
| 29473 | /* 83531 */ // Label 1827: @83531 |
| 29474 | /* 83531 */ GIM_Try, /*On fail goto*//*Label 1828*/ GIMT_Encode4(83569), // Rule ID 17944 // |
| 29475 | /* 83536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 29476 | /* 83539 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29477 | /* 83543 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29478 | /* 83547 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29479 | /* 83554 */ // (st VR128:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (MOVUPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v16i8] }:$src) |
| 29480 | /* 83554 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVUPSmr), |
| 29481 | /* 83557 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29482 | /* 83561 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29483 | /* 83563 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29484 | /* 83567 */ GIR_RootConstrainSelectedInstOperands, |
| 29485 | /* 83568 */ // GIR_Coverage, 17944, |
| 29486 | /* 83568 */ GIR_EraseRootFromParent_Done, |
| 29487 | /* 83569 */ // Label 1828: @83569 |
| 29488 | /* 83569 */ GIM_Try, /*On fail goto*//*Label 1829*/ GIMT_Encode4(83611), // Rule ID 18320 // |
| 29489 | /* 83574 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29490 | /* 83577 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29491 | /* 83581 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29492 | /* 83585 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29493 | /* 83589 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29494 | /* 83596 */ // (st VR128:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQAmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v16i8] }:$src) |
| 29495 | /* 83596 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQAmr), |
| 29496 | /* 83599 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29497 | /* 83603 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29498 | /* 83605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29499 | /* 83609 */ GIR_RootConstrainSelectedInstOperands, |
| 29500 | /* 83610 */ // GIR_Coverage, 18320, |
| 29501 | /* 83610 */ GIR_EraseRootFromParent_Done, |
| 29502 | /* 83611 */ // Label 1829: @83611 |
| 29503 | /* 83611 */ GIM_Try, /*On fail goto*//*Label 1830*/ GIMT_Encode4(83649), // Rule ID 18324 // |
| 29504 | /* 83616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29505 | /* 83619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 29506 | /* 83623 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29507 | /* 83627 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29508 | /* 83634 */ // (st VR128:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQUmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v16i8] }:$src) |
| 29509 | /* 83634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQUmr), |
| 29510 | /* 83637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29511 | /* 83641 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29512 | /* 83643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29513 | /* 83647 */ GIR_RootConstrainSelectedInstOperands, |
| 29514 | /* 83648 */ // GIR_Coverage, 18324, |
| 29515 | /* 83648 */ GIR_EraseRootFromParent_Done, |
| 29516 | /* 83649 */ // Label 1830: @83649 |
| 29517 | /* 83649 */ GIM_Try, /*On fail goto*//*Label 1831*/ GIMT_Encode4(83691), // Rule ID 19832 // |
| 29518 | /* 83654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29519 | /* 83657 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29520 | /* 83661 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29521 | /* 83665 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29522 | /* 83669 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29523 | /* 83676 */ // (st VR128X:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v16i8] }:$src) |
| 29524 | /* 83676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128mr), |
| 29525 | /* 83679 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29526 | /* 83683 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29527 | /* 83685 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29528 | /* 83689 */ GIR_RootConstrainSelectedInstOperands, |
| 29529 | /* 83690 */ // GIR_Coverage, 19832, |
| 29530 | /* 83690 */ GIR_EraseRootFromParent_Done, |
| 29531 | /* 83691 */ // Label 1831: @83691 |
| 29532 | /* 83691 */ GIM_Try, /*On fail goto*//*Label 1832*/ GIMT_Encode4(83729), // Rule ID 19836 // |
| 29533 | /* 83696 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29534 | /* 83699 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 29535 | /* 83703 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29536 | /* 83707 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29537 | /* 83714 */ // (st VR128X:{ *:[v16i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z128mr addr:{ *:[iPTR] }:$dst, VR128X:{ *:[v16i8] }:$src) |
| 29538 | /* 83714 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z128mr), |
| 29539 | /* 83717 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29540 | /* 83721 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29541 | /* 83723 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29542 | /* 83727 */ GIR_RootConstrainSelectedInstOperands, |
| 29543 | /* 83728 */ // GIR_Coverage, 19836, |
| 29544 | /* 83728 */ GIR_EraseRootFromParent_Done, |
| 29545 | /* 83729 */ // Label 1832: @83729 |
| 29546 | /* 83729 */ GIM_Reject, |
| 29547 | /* 83730 */ // Label 1826: @83730 |
| 29548 | /* 83730 */ GIM_Reject, |
| 29549 | /* 83731 */ // Label 1497: @83731 |
| 29550 | /* 83731 */ GIM_Try, /*On fail goto*//*Label 1833*/ GIMT_Encode4(84064), |
| 29551 | /* 83736 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29552 | /* 83739 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29553 | /* 83743 */ GIM_Try, /*On fail goto*//*Label 1834*/ GIMT_Encode4(83785), // Rule ID 17915 // |
| 29554 | /* 83748 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29555 | /* 83751 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29556 | /* 83755 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29557 | /* 83759 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29558 | /* 83763 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29559 | /* 83770 */ // (st VR256:{ *:[v16i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v16i16] }:$src) |
| 29560 | /* 83770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29561 | /* 83773 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29562 | /* 83777 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29563 | /* 83779 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29564 | /* 83783 */ GIR_RootConstrainSelectedInstOperands, |
| 29565 | /* 83784 */ // GIR_Coverage, 17915, |
| 29566 | /* 83784 */ GIR_EraseRootFromParent_Done, |
| 29567 | /* 83785 */ // Label 1834: @83785 |
| 29568 | /* 83785 */ GIM_Try, /*On fail goto*//*Label 1835*/ GIMT_Encode4(83823), // Rule ID 17919 // |
| 29569 | /* 83790 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29570 | /* 83793 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29571 | /* 83797 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29572 | /* 83801 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29573 | /* 83808 */ // (st VR256:{ *:[v16i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v16i16] }:$src) |
| 29574 | /* 83808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29575 | /* 83811 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29576 | /* 83815 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29577 | /* 83817 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29578 | /* 83821 */ GIR_RootConstrainSelectedInstOperands, |
| 29579 | /* 83822 */ // GIR_Coverage, 17919, |
| 29580 | /* 83822 */ GIR_EraseRootFromParent_Done, |
| 29581 | /* 83823 */ // Label 1835: @83823 |
| 29582 | /* 83823 */ GIM_Try, /*On fail goto*//*Label 1836*/ GIMT_Encode4(83865), // Rule ID 17927 // |
| 29583 | /* 83828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29584 | /* 83831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29585 | /* 83835 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29586 | /* 83839 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29587 | /* 83843 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29588 | /* 83850 */ // (st VR256:{ *:[v16f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v16f16] }:$src) |
| 29589 | /* 83850 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29590 | /* 83853 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29591 | /* 83857 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29592 | /* 83859 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29593 | /* 83863 */ GIR_RootConstrainSelectedInstOperands, |
| 29594 | /* 83864 */ // GIR_Coverage, 17927, |
| 29595 | /* 83864 */ GIR_EraseRootFromParent_Done, |
| 29596 | /* 83865 */ // Label 1836: @83865 |
| 29597 | /* 83865 */ GIM_Try, /*On fail goto*//*Label 1837*/ GIMT_Encode4(83903), // Rule ID 17928 // |
| 29598 | /* 83870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29599 | /* 83873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29600 | /* 83877 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29601 | /* 83881 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29602 | /* 83888 */ // (st VR256:{ *:[v16f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v16f16] }:$src) |
| 29603 | /* 83888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29604 | /* 83891 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29605 | /* 83895 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29606 | /* 83897 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29607 | /* 83901 */ GIR_RootConstrainSelectedInstOperands, |
| 29608 | /* 83902 */ // GIR_Coverage, 17928, |
| 29609 | /* 83902 */ GIR_EraseRootFromParent_Done, |
| 29610 | /* 83903 */ // Label 1837: @83903 |
| 29611 | /* 83903 */ GIM_Try, /*On fail goto*//*Label 1838*/ GIMT_Encode4(83945), // Rule ID 19846 // |
| 29612 | /* 83908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29613 | /* 83911 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29614 | /* 83915 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29615 | /* 83919 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29616 | /* 83923 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29617 | /* 83930 */ // (st VR256X:{ *:[v16i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v16i16] }:$src) |
| 29618 | /* 83930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256mr), |
| 29619 | /* 83933 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29620 | /* 83937 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29621 | /* 83939 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29622 | /* 83943 */ GIR_RootConstrainSelectedInstOperands, |
| 29623 | /* 83944 */ // GIR_Coverage, 19846, |
| 29624 | /* 83944 */ GIR_EraseRootFromParent_Done, |
| 29625 | /* 83945 */ // Label 1838: @83945 |
| 29626 | /* 83945 */ GIM_Try, /*On fail goto*//*Label 1839*/ GIMT_Encode4(83987), // Rule ID 19847 // |
| 29627 | /* 83950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29628 | /* 83953 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29629 | /* 83957 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29630 | /* 83961 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29631 | /* 83965 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29632 | /* 83972 */ // (st VR256X:{ *:[v16f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v16f16] }:$src) |
| 29633 | /* 83972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256mr), |
| 29634 | /* 83975 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29635 | /* 83979 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29636 | /* 83981 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29637 | /* 83985 */ GIR_RootConstrainSelectedInstOperands, |
| 29638 | /* 83986 */ // GIR_Coverage, 19847, |
| 29639 | /* 83986 */ GIR_EraseRootFromParent_Done, |
| 29640 | /* 83987 */ // Label 1839: @83987 |
| 29641 | /* 83987 */ GIM_Try, /*On fail goto*//*Label 1840*/ GIMT_Encode4(84025), // Rule ID 19850 // |
| 29642 | /* 83992 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29643 | /* 83995 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29644 | /* 83999 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29645 | /* 84003 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29646 | /* 84010 */ // (st VR256X:{ *:[v16i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v16i16] }:$src) |
| 29647 | /* 84010 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256mr), |
| 29648 | /* 84013 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29649 | /* 84017 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29650 | /* 84019 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29651 | /* 84023 */ GIR_RootConstrainSelectedInstOperands, |
| 29652 | /* 84024 */ // GIR_Coverage, 19850, |
| 29653 | /* 84024 */ GIR_EraseRootFromParent_Done, |
| 29654 | /* 84025 */ // Label 1840: @84025 |
| 29655 | /* 84025 */ GIM_Try, /*On fail goto*//*Label 1841*/ GIMT_Encode4(84063), // Rule ID 19851 // |
| 29656 | /* 84030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29657 | /* 84033 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29658 | /* 84037 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29659 | /* 84041 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29660 | /* 84048 */ // (st VR256X:{ *:[v16f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZ256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v16f16] }:$src) |
| 29661 | /* 84048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZ256mr), |
| 29662 | /* 84051 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29663 | /* 84055 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29664 | /* 84057 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29665 | /* 84061 */ GIR_RootConstrainSelectedInstOperands, |
| 29666 | /* 84062 */ // GIR_Coverage, 19851, |
| 29667 | /* 84062 */ GIR_EraseRootFromParent_Done, |
| 29668 | /* 84063 */ // Label 1841: @84063 |
| 29669 | /* 84063 */ GIM_Reject, |
| 29670 | /* 84064 */ // Label 1833: @84064 |
| 29671 | /* 84064 */ GIM_Reject, |
| 29672 | /* 84065 */ // Label 1498: @84065 |
| 29673 | /* 84065 */ GIM_Try, /*On fail goto*//*Label 1842*/ GIMT_Encode4(84238), |
| 29674 | /* 84070 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29675 | /* 84073 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29676 | /* 84077 */ GIM_Try, /*On fail goto*//*Label 1843*/ GIMT_Encode4(84119), // Rule ID 4480 // |
| 29677 | /* 84082 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29678 | /* 84085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29679 | /* 84089 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29680 | /* 84093 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29681 | /* 84097 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29682 | /* 84104 */ // (st VR512:{ *:[v16f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v16f32] }:$src) |
| 29683 | /* 84104 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZmr), |
| 29684 | /* 84107 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29685 | /* 84111 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29686 | /* 84113 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29687 | /* 84117 */ GIR_RootConstrainSelectedInstOperands, |
| 29688 | /* 84118 */ // GIR_Coverage, 4480, |
| 29689 | /* 84118 */ GIR_EraseRootFromParent_Done, |
| 29690 | /* 84119 */ // Label 1843: @84119 |
| 29691 | /* 84119 */ GIM_Try, /*On fail goto*//*Label 1844*/ GIMT_Encode4(84157), // Rule ID 4510 // |
| 29692 | /* 84124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29693 | /* 84127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29694 | /* 84131 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29695 | /* 84135 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29696 | /* 84142 */ // (st VR512:{ *:[v16f32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v16f32] }:$src) |
| 29697 | /* 84142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZmr), |
| 29698 | /* 84145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29699 | /* 84149 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29700 | /* 84151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29701 | /* 84155 */ GIR_RootConstrainSelectedInstOperands, |
| 29702 | /* 84156 */ // GIR_Coverage, 4510, |
| 29703 | /* 84156 */ GIR_EraseRootFromParent_Done, |
| 29704 | /* 84157 */ // Label 1844: @84157 |
| 29705 | /* 84157 */ GIM_Try, /*On fail goto*//*Label 1845*/ GIMT_Encode4(84199), // Rule ID 19813 // |
| 29706 | /* 84162 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29707 | /* 84165 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29708 | /* 84169 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29709 | /* 84173 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29710 | /* 84177 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29711 | /* 84184 */ // (st VR512:{ *:[v16i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v16i32] }:$src) |
| 29712 | /* 84184 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zmr), |
| 29713 | /* 84187 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29714 | /* 84191 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29715 | /* 84193 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29716 | /* 84197 */ GIR_RootConstrainSelectedInstOperands, |
| 29717 | /* 84198 */ // GIR_Coverage, 19813, |
| 29718 | /* 84198 */ GIR_EraseRootFromParent_Done, |
| 29719 | /* 84199 */ // Label 1845: @84199 |
| 29720 | /* 84199 */ GIM_Try, /*On fail goto*//*Label 1846*/ GIMT_Encode4(84237), // Rule ID 19817 // |
| 29721 | /* 84204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29722 | /* 84207 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29723 | /* 84211 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29724 | /* 84215 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29725 | /* 84222 */ // (st VR512:{ *:[v16i32] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v16i32] }:$src) |
| 29726 | /* 84222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zmr), |
| 29727 | /* 84225 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29728 | /* 84229 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29729 | /* 84231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29730 | /* 84235 */ GIR_RootConstrainSelectedInstOperands, |
| 29731 | /* 84236 */ // GIR_Coverage, 19817, |
| 29732 | /* 84236 */ GIR_EraseRootFromParent_Done, |
| 29733 | /* 84237 */ // Label 1846: @84237 |
| 29734 | /* 84237 */ GIM_Reject, |
| 29735 | /* 84238 */ // Label 1842: @84238 |
| 29736 | /* 84238 */ GIM_Reject, |
| 29737 | /* 84239 */ // Label 1499: @84239 |
| 29738 | /* 84239 */ GIM_Try, /*On fail goto*//*Label 1847*/ GIMT_Encode4(84320), |
| 29739 | /* 84244 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29740 | /* 84247 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29741 | /* 84251 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 29742 | /* 84255 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29743 | /* 84259 */ GIM_Try, /*On fail goto*//*Label 1848*/ GIMT_Encode4(84289), // Rule ID 4406 // |
| 29744 | /* 84264 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoEGPR), |
| 29745 | /* 84267 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29746 | /* 84274 */ // (st VK32:{ *:[v32i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVDmk addr:{ *:[iPTR] }:$dst, VK32:{ *:[v32i1] }:$src) |
| 29747 | /* 84274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDmk), |
| 29748 | /* 84277 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29749 | /* 84281 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29750 | /* 84283 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29751 | /* 84287 */ GIR_RootConstrainSelectedInstOperands, |
| 29752 | /* 84288 */ // GIR_Coverage, 4406, |
| 29753 | /* 84288 */ GIR_EraseRootFromParent_Done, |
| 29754 | /* 84289 */ // Label 1848: @84289 |
| 29755 | /* 84289 */ GIM_Try, /*On fail goto*//*Label 1849*/ GIMT_Encode4(84319), // Rule ID 4410 // |
| 29756 | /* 84294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEGPR_In64BitMode), |
| 29757 | /* 84297 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29758 | /* 84304 */ // (st VK32:{ *:[v32i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVDmk_EVEX addr:{ *:[iPTR] }:$dst, VK32:{ *:[v32i1] }:$src) |
| 29759 | /* 84304 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVDmk_EVEX), |
| 29760 | /* 84307 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29761 | /* 84311 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29762 | /* 84313 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29763 | /* 84317 */ GIR_RootConstrainSelectedInstOperands, |
| 29764 | /* 84318 */ // GIR_Coverage, 4410, |
| 29765 | /* 84318 */ GIR_EraseRootFromParent_Done, |
| 29766 | /* 84319 */ // Label 1849: @84319 |
| 29767 | /* 84319 */ GIM_Reject, |
| 29768 | /* 84320 */ // Label 1847: @84320 |
| 29769 | /* 84320 */ GIM_Reject, |
| 29770 | /* 84321 */ // Label 1500: @84321 |
| 29771 | /* 84321 */ GIM_Try, /*On fail goto*//*Label 1850*/ GIMT_Encode4(84494), |
| 29772 | /* 84326 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29773 | /* 84329 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29774 | /* 84333 */ GIM_Try, /*On fail goto*//*Label 1851*/ GIMT_Encode4(84375), // Rule ID 17916 // |
| 29775 | /* 84338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29776 | /* 84341 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29777 | /* 84345 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29778 | /* 84349 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29779 | /* 84353 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29780 | /* 84360 */ // (st VR256:{ *:[v32i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v32i8] }:$src) |
| 29781 | /* 84360 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSYmr), |
| 29782 | /* 84363 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29783 | /* 84367 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29784 | /* 84369 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29785 | /* 84373 */ GIR_RootConstrainSelectedInstOperands, |
| 29786 | /* 84374 */ // GIR_Coverage, 17916, |
| 29787 | /* 84374 */ GIR_EraseRootFromParent_Done, |
| 29788 | /* 84375 */ // Label 1851: @84375 |
| 29789 | /* 84375 */ GIM_Try, /*On fail goto*//*Label 1852*/ GIMT_Encode4(84413), // Rule ID 17920 // |
| 29790 | /* 84380 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 29791 | /* 84383 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 29792 | /* 84387 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29793 | /* 84391 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29794 | /* 84398 */ // (st VR256:{ *:[v32i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v32i8] }:$src) |
| 29795 | /* 84398 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSYmr), |
| 29796 | /* 84401 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29797 | /* 84405 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29798 | /* 84407 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29799 | /* 84411 */ GIR_RootConstrainSelectedInstOperands, |
| 29800 | /* 84412 */ // GIR_Coverage, 17920, |
| 29801 | /* 84412 */ GIR_EraseRootFromParent_Done, |
| 29802 | /* 84413 */ // Label 1852: @84413 |
| 29803 | /* 84413 */ GIM_Try, /*On fail goto*//*Label 1853*/ GIMT_Encode4(84455), // Rule ID 19848 // |
| 29804 | /* 84418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29805 | /* 84421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29806 | /* 84425 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29807 | /* 84429 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29808 | /* 84433 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29809 | /* 84440 */ // (st VR256X:{ *:[v32i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v32i8] }:$src) |
| 29810 | /* 84440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256mr), |
| 29811 | /* 84443 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29812 | /* 84447 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29813 | /* 84449 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29814 | /* 84453 */ GIR_RootConstrainSelectedInstOperands, |
| 29815 | /* 84454 */ // GIR_Coverage, 19848, |
| 29816 | /* 84454 */ GIR_EraseRootFromParent_Done, |
| 29817 | /* 84455 */ // Label 1853: @84455 |
| 29818 | /* 84455 */ GIM_Try, /*On fail goto*//*Label 1854*/ GIMT_Encode4(84493), // Rule ID 19852 // |
| 29819 | /* 84460 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 29820 | /* 84463 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 29821 | /* 84467 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29822 | /* 84471 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29823 | /* 84478 */ // (st VR256X:{ *:[v32i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Z256mr addr:{ *:[iPTR] }:$dst, VR256X:{ *:[v32i8] }:$src) |
| 29824 | /* 84478 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Z256mr), |
| 29825 | /* 84481 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29826 | /* 84485 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29827 | /* 84487 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29828 | /* 84491 */ GIR_RootConstrainSelectedInstOperands, |
| 29829 | /* 84492 */ // GIR_Coverage, 19852, |
| 29830 | /* 84492 */ GIR_EraseRootFromParent_Done, |
| 29831 | /* 84493 */ // Label 1854: @84493 |
| 29832 | /* 84493 */ GIM_Reject, |
| 29833 | /* 84494 */ // Label 1850: @84494 |
| 29834 | /* 84494 */ GIM_Reject, |
| 29835 | /* 84495 */ // Label 1501: @84495 |
| 29836 | /* 84495 */ GIM_Try, /*On fail goto*//*Label 1855*/ GIMT_Encode4(84668), |
| 29837 | /* 84500 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29838 | /* 84503 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29839 | /* 84507 */ GIM_Try, /*On fail goto*//*Label 1856*/ GIMT_Encode4(84549), // Rule ID 19814 // |
| 29840 | /* 84512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29841 | /* 84515 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29842 | /* 84519 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29843 | /* 84523 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29844 | /* 84527 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29845 | /* 84534 */ // (st VR512:{ *:[v32i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v32i16] }:$src) |
| 29846 | /* 84534 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zmr), |
| 29847 | /* 84537 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29848 | /* 84541 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29849 | /* 84543 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29850 | /* 84547 */ GIR_RootConstrainSelectedInstOperands, |
| 29851 | /* 84548 */ // GIR_Coverage, 19814, |
| 29852 | /* 84548 */ GIR_EraseRootFromParent_Done, |
| 29853 | /* 84549 */ // Label 1856: @84549 |
| 29854 | /* 84549 */ GIM_Try, /*On fail goto*//*Label 1857*/ GIMT_Encode4(84591), // Rule ID 19815 // |
| 29855 | /* 84554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29856 | /* 84557 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29857 | /* 84561 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29858 | /* 84565 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29859 | /* 84569 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29860 | /* 84576 */ // (st VR512:{ *:[v32f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVAPSZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v32f16] }:$src) |
| 29861 | /* 84576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZmr), |
| 29862 | /* 84579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29863 | /* 84583 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29864 | /* 84585 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29865 | /* 84589 */ GIR_RootConstrainSelectedInstOperands, |
| 29866 | /* 84590 */ // GIR_Coverage, 19815, |
| 29867 | /* 84590 */ GIR_EraseRootFromParent_Done, |
| 29868 | /* 84591 */ // Label 1857: @84591 |
| 29869 | /* 84591 */ GIM_Try, /*On fail goto*//*Label 1858*/ GIMT_Encode4(84629), // Rule ID 19818 // |
| 29870 | /* 84596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29871 | /* 84599 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29872 | /* 84603 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29873 | /* 84607 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29874 | /* 84614 */ // (st VR512:{ *:[v32i16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v32i16] }:$src) |
| 29875 | /* 84614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zmr), |
| 29876 | /* 84617 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29877 | /* 84621 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29878 | /* 84623 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29879 | /* 84627 */ GIR_RootConstrainSelectedInstOperands, |
| 29880 | /* 84628 */ // GIR_Coverage, 19818, |
| 29881 | /* 84628 */ GIR_EraseRootFromParent_Done, |
| 29882 | /* 84629 */ // Label 1858: @84629 |
| 29883 | /* 84629 */ GIM_Try, /*On fail goto*//*Label 1859*/ GIMT_Encode4(84667), // Rule ID 19819 // |
| 29884 | /* 84634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29885 | /* 84637 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29886 | /* 84641 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29887 | /* 84645 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29888 | /* 84652 */ // (st VR512:{ *:[v32f16] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVUPSZmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v32f16] }:$src) |
| 29889 | /* 84652 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVUPSZmr), |
| 29890 | /* 84655 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29891 | /* 84659 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29892 | /* 84661 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29893 | /* 84665 */ GIR_RootConstrainSelectedInstOperands, |
| 29894 | /* 84666 */ // GIR_Coverage, 19819, |
| 29895 | /* 84666 */ GIR_EraseRootFromParent_Done, |
| 29896 | /* 84667 */ // Label 1859: @84667 |
| 29897 | /* 84667 */ GIM_Reject, |
| 29898 | /* 84668 */ // Label 1855: @84668 |
| 29899 | /* 84668 */ GIM_Reject, |
| 29900 | /* 84669 */ // Label 1502: @84669 |
| 29901 | /* 84669 */ GIM_Try, /*On fail goto*//*Label 1860*/ GIMT_Encode4(84750), |
| 29902 | /* 84674 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29903 | /* 84677 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29904 | /* 84681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 29905 | /* 84685 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29906 | /* 84689 */ GIM_Try, /*On fail goto*//*Label 1861*/ GIMT_Encode4(84719), // Rule ID 4408 // |
| 29907 | /* 84694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoEGPR), |
| 29908 | /* 84697 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29909 | /* 84704 */ // (st VK64:{ *:[v64i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVQmk addr:{ *:[iPTR] }:$dst, VK64:{ *:[v64i1] }:$src) |
| 29910 | /* 84704 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQmk), |
| 29911 | /* 84707 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29912 | /* 84711 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29913 | /* 84713 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29914 | /* 84717 */ GIR_RootConstrainSelectedInstOperands, |
| 29915 | /* 84718 */ // GIR_Coverage, 4408, |
| 29916 | /* 84718 */ GIR_EraseRootFromParent_Done, |
| 29917 | /* 84719 */ // Label 1861: @84719 |
| 29918 | /* 84719 */ GIM_Try, /*On fail goto*//*Label 1862*/ GIMT_Encode4(84749), // Rule ID 4412 // |
| 29919 | /* 84724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasEGPR_In64BitMode), |
| 29920 | /* 84727 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29921 | /* 84734 */ // (st VK64:{ *:[v64i1] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (KMOVQmk_EVEX addr:{ *:[iPTR] }:$dst, VK64:{ *:[v64i1] }:$src) |
| 29922 | /* 84734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVQmk_EVEX), |
| 29923 | /* 84737 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29924 | /* 84741 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29925 | /* 84743 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29926 | /* 84747 */ GIR_RootConstrainSelectedInstOperands, |
| 29927 | /* 84748 */ // GIR_Coverage, 4412, |
| 29928 | /* 84748 */ GIR_EraseRootFromParent_Done, |
| 29929 | /* 84749 */ // Label 1862: @84749 |
| 29930 | /* 84749 */ GIM_Reject, |
| 29931 | /* 84750 */ // Label 1860: @84750 |
| 29932 | /* 84750 */ GIM_Reject, |
| 29933 | /* 84751 */ // Label 1503: @84751 |
| 29934 | /* 84751 */ GIM_Try, /*On fail goto*//*Label 1863*/ GIMT_Encode4(84844), |
| 29935 | /* 84756 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 29936 | /* 84759 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 29937 | /* 84763 */ GIM_Try, /*On fail goto*//*Label 1864*/ GIMT_Encode4(84805), // Rule ID 19816 // |
| 29938 | /* 84768 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29939 | /* 84771 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29940 | /* 84775 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29941 | /* 84779 */ GIM_CheckCxxInsnPredicate, /*MI*/0, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedstore), |
| 29942 | /* 84783 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29943 | /* 84790 */ // (st VR512:{ *:[v64i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_alignedstore>> => (VMOVDQA64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v64i8] }:$src) |
| 29944 | /* 84790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zmr), |
| 29945 | /* 84793 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29946 | /* 84797 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29947 | /* 84799 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29948 | /* 84803 */ GIR_RootConstrainSelectedInstOperands, |
| 29949 | /* 84804 */ // GIR_Coverage, 19816, |
| 29950 | /* 84804 */ GIR_EraseRootFromParent_Done, |
| 29951 | /* 84805 */ // Label 1864: @84805 |
| 29952 | /* 84805 */ GIM_Try, /*On fail goto*//*Label 1865*/ GIMT_Encode4(84843), // Rule ID 19820 // |
| 29953 | /* 84810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 29954 | /* 84813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 29955 | /* 84817 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29956 | /* 84821 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29957 | /* 84828 */ // (st VR512:{ *:[v64i8] }:$src, addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> => (VMOVDQU64Zmr addr:{ *:[iPTR] }:$dst, VR512:{ *:[v64i8] }:$src) |
| 29958 | /* 84828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU64Zmr), |
| 29959 | /* 84831 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 29960 | /* 84835 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 29961 | /* 84837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29962 | /* 84841 */ GIR_RootConstrainSelectedInstOperands, |
| 29963 | /* 84842 */ // GIR_Coverage, 19820, |
| 29964 | /* 84842 */ GIR_EraseRootFromParent_Done, |
| 29965 | /* 84843 */ // Label 1865: @84843 |
| 29966 | /* 84843 */ GIM_Reject, |
| 29967 | /* 84844 */ // Label 1863: @84844 |
| 29968 | /* 84844 */ GIM_Reject, |
| 29969 | /* 84845 */ // Label 1504: @84845 |
| 29970 | /* 84845 */ GIM_Reject, |
| 29971 | /* 84846 */ // Label 15: @84846 |
| 29972 | /* 84846 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 1870*/ GIMT_Encode4(85081), |
| 29973 | /* 84857 */ /*GILLT_s8*//*Label 1866*/ GIMT_Encode4(84873), |
| 29974 | /* 84861 */ /*GILLT_s16*//*Label 1867*/ GIMT_Encode4(84925), |
| 29975 | /* 84865 */ /*GILLT_s32*//*Label 1868*/ GIMT_Encode4(84977), |
| 29976 | /* 84869 */ /*GILLT_s64*//*Label 1869*/ GIMT_Encode4(85029), |
| 29977 | /* 84873 */ // Label 1866: @84873 |
| 29978 | /* 84873 */ GIM_Try, /*On fail goto*//*Label 1871*/ GIMT_Encode4(84924), // Rule ID 45 // |
| 29979 | /* 84878 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 29980 | /* 84881 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 29981 | /* 84888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 29982 | /* 84892 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 29983 | /* 84896 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 29984 | /* 84900 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 29985 | /* 84907 */ // (atomic_swap:{ *:[i8] } addr:{ *:[iPTR] }:$ptr, GR8:{ *:[i8] }:$val)<<P:Predicate_atomic_swap_i8>> => (XCHG8rm:{ *:[i8] } GR8:{ *:[i8] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 29986 | /* 84907 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XCHG8rm), |
| 29987 | /* 84910 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 29988 | /* 84912 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 29989 | /* 84914 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 29990 | /* 84918 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 29991 | /* 84922 */ GIR_RootConstrainSelectedInstOperands, |
| 29992 | /* 84923 */ // GIR_Coverage, 45, |
| 29993 | /* 84923 */ GIR_EraseRootFromParent_Done, |
| 29994 | /* 84924 */ // Label 1871: @84924 |
| 29995 | /* 84924 */ GIM_Reject, |
| 29996 | /* 84925 */ // Label 1867: @84925 |
| 29997 | /* 84925 */ GIM_Try, /*On fail goto*//*Label 1872*/ GIMT_Encode4(84976), // Rule ID 46 // |
| 29998 | /* 84930 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 29999 | /* 84933 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 30000 | /* 84940 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 30001 | /* 84944 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30002 | /* 84948 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 30003 | /* 84952 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30004 | /* 84959 */ // (atomic_swap:{ *:[i16] } addr:{ *:[iPTR] }:$ptr, GR16:{ *:[i16] }:$val)<<P:Predicate_atomic_swap_i16>> => (XCHG16rm:{ *:[i16] } GR16:{ *:[i16] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30005 | /* 84959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XCHG16rm), |
| 30006 | /* 84962 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30007 | /* 84964 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30008 | /* 84966 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30009 | /* 84970 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30010 | /* 84974 */ GIR_RootConstrainSelectedInstOperands, |
| 30011 | /* 84975 */ // GIR_Coverage, 46, |
| 30012 | /* 84975 */ GIR_EraseRootFromParent_Done, |
| 30013 | /* 84976 */ // Label 1872: @84976 |
| 30014 | /* 84976 */ GIM_Reject, |
| 30015 | /* 84977 */ // Label 1868: @84977 |
| 30016 | /* 84977 */ GIM_Try, /*On fail goto*//*Label 1873*/ GIMT_Encode4(85028), // Rule ID 47 // |
| 30017 | /* 84982 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30018 | /* 84985 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 30019 | /* 84992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 30020 | /* 84996 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30021 | /* 85000 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 30022 | /* 85004 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30023 | /* 85011 */ // (atomic_swap:{ *:[i32] } addr:{ *:[iPTR] }:$ptr, GR32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_i32>> => (XCHG32rm:{ *:[i32] } GR32:{ *:[i32] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30024 | /* 85011 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XCHG32rm), |
| 30025 | /* 85014 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30026 | /* 85016 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30027 | /* 85018 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30028 | /* 85022 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30029 | /* 85026 */ GIR_RootConstrainSelectedInstOperands, |
| 30030 | /* 85027 */ // GIR_Coverage, 47, |
| 30031 | /* 85027 */ GIR_EraseRootFromParent_Done, |
| 30032 | /* 85028 */ // Label 1873: @85028 |
| 30033 | /* 85028 */ GIM_Reject, |
| 30034 | /* 85029 */ // Label 1869: @85029 |
| 30035 | /* 85029 */ GIM_Try, /*On fail goto*//*Label 1874*/ GIMT_Encode4(85080), // Rule ID 48 // |
| 30036 | /* 85034 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 30037 | /* 85037 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 30038 | /* 85044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 30039 | /* 85048 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30040 | /* 85052 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 30041 | /* 85056 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30042 | /* 85063 */ // (atomic_swap:{ *:[i64] } addr:{ *:[iPTR] }:$ptr, GR64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_i64>> => (XCHG64rm:{ *:[i64] } GR64:{ *:[i64] }:$val, addr:{ *:[iPTR] }:$ptr) |
| 30043 | /* 85063 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XCHG64rm), |
| 30044 | /* 85066 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30045 | /* 85068 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30046 | /* 85070 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30047 | /* 85074 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30048 | /* 85078 */ GIR_RootConstrainSelectedInstOperands, |
| 30049 | /* 85079 */ // GIR_Coverage, 48, |
| 30050 | /* 85079 */ GIR_EraseRootFromParent_Done, |
| 30051 | /* 85080 */ // Label 1874: @85080 |
| 30052 | /* 85080 */ GIM_Reject, |
| 30053 | /* 85081 */ // Label 1870: @85081 |
| 30054 | /* 85081 */ GIM_Reject, |
| 30055 | /* 85082 */ // Label 16: @85082 |
| 30056 | /* 85082 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 1879*/ GIMT_Encode4(85329), |
| 30057 | /* 85093 */ /*GILLT_s8*//*Label 1875*/ GIMT_Encode4(85109), |
| 30058 | /* 85097 */ /*GILLT_s16*//*Label 1876*/ GIMT_Encode4(85164), |
| 30059 | /* 85101 */ /*GILLT_s32*//*Label 1877*/ GIMT_Encode4(85219), |
| 30060 | /* 85105 */ /*GILLT_s64*//*Label 1878*/ GIMT_Encode4(85274), |
| 30061 | /* 85109 */ // Label 1875: @85109 |
| 30062 | /* 85109 */ GIM_Try, /*On fail goto*//*Label 1880*/ GIMT_Encode4(85163), // Rule ID 17286 // |
| 30063 | /* 85114 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 30064 | /* 85117 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 30065 | /* 85124 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 30066 | /* 85128 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30067 | /* 85132 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 30068 | /* 85136 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30069 | /* 85143 */ // (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) |
| 30070 | /* 85143 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LXADD8), |
| 30071 | /* 85146 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30072 | /* 85148 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30073 | /* 85150 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30074 | /* 85154 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 30075 | /* 85157 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30076 | /* 85161 */ GIR_RootConstrainSelectedInstOperands, |
| 30077 | /* 85162 */ // GIR_Coverage, 17286, |
| 30078 | /* 85162 */ GIR_EraseRootFromParent_Done, |
| 30079 | /* 85163 */ // Label 1880: @85163 |
| 30080 | /* 85163 */ GIM_Reject, |
| 30081 | /* 85164 */ // Label 1876: @85164 |
| 30082 | /* 85164 */ GIM_Try, /*On fail goto*//*Label 1881*/ GIMT_Encode4(85218), // Rule ID 17287 // |
| 30083 | /* 85169 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 30084 | /* 85172 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 30085 | /* 85179 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 30086 | /* 85183 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30087 | /* 85187 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 30088 | /* 85191 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30089 | /* 85198 */ // (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) |
| 30090 | /* 85198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LXADD16), |
| 30091 | /* 85201 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30092 | /* 85203 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30093 | /* 85205 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30094 | /* 85209 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 30095 | /* 85212 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30096 | /* 85216 */ GIR_RootConstrainSelectedInstOperands, |
| 30097 | /* 85217 */ // GIR_Coverage, 17287, |
| 30098 | /* 85217 */ GIR_EraseRootFromParent_Done, |
| 30099 | /* 85218 */ // Label 1881: @85218 |
| 30100 | /* 85218 */ GIM_Reject, |
| 30101 | /* 85219 */ // Label 1877: @85219 |
| 30102 | /* 85219 */ GIM_Try, /*On fail goto*//*Label 1882*/ GIMT_Encode4(85273), // Rule ID 17288 // |
| 30103 | /* 85224 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30104 | /* 85227 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 30105 | /* 85234 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 30106 | /* 85238 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30107 | /* 85242 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 30108 | /* 85246 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30109 | /* 85253 */ // (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) |
| 30110 | /* 85253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LXADD32), |
| 30111 | /* 85256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30112 | /* 85258 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30113 | /* 85260 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30114 | /* 85264 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 30115 | /* 85267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30116 | /* 85271 */ GIR_RootConstrainSelectedInstOperands, |
| 30117 | /* 85272 */ // GIR_Coverage, 17288, |
| 30118 | /* 85272 */ GIR_EraseRootFromParent_Done, |
| 30119 | /* 85273 */ // Label 1882: @85273 |
| 30120 | /* 85273 */ GIM_Reject, |
| 30121 | /* 85274 */ // Label 1878: @85274 |
| 30122 | /* 85274 */ GIM_Try, /*On fail goto*//*Label 1883*/ GIMT_Encode4(85328), // Rule ID 17289 // |
| 30123 | /* 85279 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 30124 | /* 85282 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 30125 | /* 85289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 30126 | /* 85293 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 30127 | /* 85297 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 30128 | /* 85301 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30129 | /* 85308 */ // (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) |
| 30130 | /* 85308 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LXADD64), |
| 30131 | /* 85311 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30132 | /* 85313 */ GIR_RootToRootCopy, /*OpIdx*/2, // val |
| 30133 | /* 85315 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // ptr |
| 30134 | /* 85319 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 30135 | /* 85322 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30136 | /* 85326 */ GIR_RootConstrainSelectedInstOperands, |
| 30137 | /* 85327 */ // GIR_Coverage, 17289, |
| 30138 | /* 85327 */ GIR_EraseRootFromParent_Done, |
| 30139 | /* 85328 */ // Label 1883: @85328 |
| 30140 | /* 85328 */ GIM_Reject, |
| 30141 | /* 85329 */ // Label 1879: @85329 |
| 30142 | /* 85329 */ GIM_Reject, |
| 30143 | /* 85330 */ // Label 17: @85330 |
| 30144 | /* 85330 */ GIM_Try, /*On fail goto*//*Label 1884*/ GIMT_Encode4(85485), |
| 30145 | /* 85335 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 30146 | /* 85338 */ GIM_Try, /*On fail goto*//*Label 1885*/ GIMT_Encode4(85388), // Rule ID 156 // |
| 30147 | /* 85343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPREFETCHI_In64BitMode), |
| 30148 | /* 85346 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30149 | /* 85349 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 30150 | /* 85352 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 30151 | /* 85356 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 30152 | /* 85360 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 3, |
| 30153 | /* 85364 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 30154 | /* 85368 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30155 | /* 85375 */ // (prefetch addr:{ *:[iPTR] }:$src, 0:{ *:[i32] }, 3:{ *:[i32] }, 0:{ *:[i32] }) => (PREFETCHIT0 addr:{ *:[iPTR] }:$src) |
| 30156 | /* 85375 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHIT0), |
| 30157 | /* 85378 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30158 | /* 85382 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30159 | /* 85386 */ GIR_RootConstrainSelectedInstOperands, |
| 30160 | /* 85387 */ // GIR_Coverage, 156, |
| 30161 | /* 85387 */ GIR_EraseRootFromParent_Done, |
| 30162 | /* 85388 */ // Label 1885: @85388 |
| 30163 | /* 85388 */ GIM_Try, /*On fail goto*//*Label 1886*/ GIMT_Encode4(85438), // Rule ID 157 // |
| 30164 | /* 85393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPREFETCHI_In64BitMode), |
| 30165 | /* 85396 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30166 | /* 85399 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 30167 | /* 85402 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 30168 | /* 85406 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 30169 | /* 85410 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 2, |
| 30170 | /* 85414 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 30171 | /* 85418 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30172 | /* 85425 */ // (prefetch addr:{ *:[iPTR] }:$src, 0:{ *:[i32] }, 2:{ *:[i32] }, 0:{ *:[i32] }) => (PREFETCHIT1 addr:{ *:[iPTR] }:$src) |
| 30173 | /* 85425 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHIT1), |
| 30174 | /* 85428 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30175 | /* 85432 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30176 | /* 85436 */ GIR_RootConstrainSelectedInstOperands, |
| 30177 | /* 85437 */ // GIR_Coverage, 157, |
| 30178 | /* 85437 */ GIR_EraseRootFromParent_Done, |
| 30179 | /* 85438 */ // Label 1886: @85438 |
| 30180 | /* 85438 */ GIM_Try, /*On fail goto*//*Label 1887*/ GIMT_Encode4(85484), // Rule ID 16987 // |
| 30181 | /* 85443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPrefetchW), |
| 30182 | /* 85446 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 30183 | /* 85449 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 30184 | /* 85453 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 1, |
| 30185 | /* 85457 */ // MIs[0] Operand 2 |
| 30186 | /* 85457 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 30187 | /* 85460 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30188 | /* 85464 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30189 | /* 85471 */ // (prefetch addr:{ *:[iPTR] }:$addr, 1:{ *:[i32] }, (timm:{ *:[i32] })<<P:Predicate_PrefetchWLevel>>, 1:{ *:[i32] }) => (PREFETCHW addr:{ *:[iPTR] }:$addr) |
| 30190 | /* 85471 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHW), |
| 30191 | /* 85474 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // addr |
| 30192 | /* 85478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30193 | /* 85482 */ GIR_RootConstrainSelectedInstOperands, |
| 30194 | /* 85483 */ // GIR_Coverage, 16987, |
| 30195 | /* 85483 */ GIR_EraseRootFromParent_Done, |
| 30196 | /* 85484 */ // Label 1887: @85484 |
| 30197 | /* 85484 */ GIM_Reject, |
| 30198 | /* 85485 */ // Label 1884: @85485 |
| 30199 | /* 85485 */ GIM_Try, /*On fail goto*//*Label 1888*/ GIMT_Encode4(85648), |
| 30200 | /* 85490 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 30201 | /* 85493 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 30202 | /* 85496 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 30203 | /* 85500 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 30204 | /* 85503 */ GIM_Try, /*On fail goto*//*Label 1889*/ GIMT_Encode4(85539), // Rule ID 2505 // |
| 30205 | /* 85508 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSEPrefetch), |
| 30206 | /* 85511 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 3, |
| 30207 | /* 85515 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30208 | /* 85519 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30209 | /* 85526 */ // (prefetch addr:{ *:[iPTR] }:$src, (timm:{ *:[i32] }), 3:{ *:[i32] }, 1:{ *:[i32] }) => (PREFETCHT0 addr:{ *:[iPTR] }:$src) |
| 30210 | /* 85526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHT0), |
| 30211 | /* 85529 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30212 | /* 85533 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30213 | /* 85537 */ GIR_RootConstrainSelectedInstOperands, |
| 30214 | /* 85538 */ // GIR_Coverage, 2505, |
| 30215 | /* 85538 */ GIR_EraseRootFromParent_Done, |
| 30216 | /* 85539 */ // Label 1889: @85539 |
| 30217 | /* 85539 */ GIM_Try, /*On fail goto*//*Label 1890*/ GIMT_Encode4(85575), // Rule ID 2506 // |
| 30218 | /* 85544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSEPrefetch), |
| 30219 | /* 85547 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 2, |
| 30220 | /* 85551 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30221 | /* 85555 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30222 | /* 85562 */ // (prefetch addr:{ *:[iPTR] }:$src, (timm:{ *:[i32] }), 2:{ *:[i32] }, 1:{ *:[i32] }) => (PREFETCHT1 addr:{ *:[iPTR] }:$src) |
| 30223 | /* 85562 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHT1), |
| 30224 | /* 85565 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30225 | /* 85569 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30226 | /* 85573 */ GIR_RootConstrainSelectedInstOperands, |
| 30227 | /* 85574 */ // GIR_Coverage, 2506, |
| 30228 | /* 85574 */ GIR_EraseRootFromParent_Done, |
| 30229 | /* 85575 */ // Label 1890: @85575 |
| 30230 | /* 85575 */ GIM_Try, /*On fail goto*//*Label 1891*/ GIMT_Encode4(85611), // Rule ID 2507 // |
| 30231 | /* 85580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSEPrefetch), |
| 30232 | /* 85583 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 30233 | /* 85587 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30234 | /* 85591 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30235 | /* 85598 */ // (prefetch addr:{ *:[iPTR] }:$src, (timm:{ *:[i32] }), 1:{ *:[i32] }, 1:{ *:[i32] }) => (PREFETCHT2 addr:{ *:[iPTR] }:$src) |
| 30236 | /* 85598 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHT2), |
| 30237 | /* 85601 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30238 | /* 85605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30239 | /* 85609 */ GIR_RootConstrainSelectedInstOperands, |
| 30240 | /* 85610 */ // GIR_Coverage, 2507, |
| 30241 | /* 85610 */ GIR_EraseRootFromParent_Done, |
| 30242 | /* 85611 */ // Label 1891: @85611 |
| 30243 | /* 85611 */ GIM_Try, /*On fail goto*//*Label 1892*/ GIMT_Encode4(85647), // Rule ID 2508 // |
| 30244 | /* 85616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSEPrefetch), |
| 30245 | /* 85619 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 0, |
| 30246 | /* 85623 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 1, |
| 30247 | /* 85627 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30248 | /* 85634 */ // (prefetch addr:{ *:[iPTR] }:$src, (timm:{ *:[i32] }), 0:{ *:[i32] }, 1:{ *:[i32] }) => (PREFETCHNTA addr:{ *:[iPTR] }:$src) |
| 30249 | /* 85634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHNTA), |
| 30250 | /* 85637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30251 | /* 85641 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 30252 | /* 85645 */ GIR_RootConstrainSelectedInstOperands, |
| 30253 | /* 85646 */ // GIR_Coverage, 2508, |
| 30254 | /* 85646 */ GIR_EraseRootFromParent_Done, |
| 30255 | /* 85647 */ // Label 1892: @85647 |
| 30256 | /* 85647 */ GIM_Reject, |
| 30257 | /* 85648 */ // Label 1888: @85648 |
| 30258 | /* 85648 */ GIM_Reject, |
| 30259 | /* 85649 */ // Label 18: @85649 |
| 30260 | /* 85649 */ GIM_Try, /*On fail goto*//*Label 1893*/ GIMT_Encode4(87978), |
| 30261 | /* 85654 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 30262 | /* 85657 */ GIM_Try, /*On fail goto*//*Label 1894*/ GIMT_Encode4(85724), // Rule ID 1530 // |
| 30263 | /* 85662 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30264 | /* 85665 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubwd), |
| 30265 | /* 85670 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30266 | /* 85673 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30267 | /* 85676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30268 | /* 85680 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30269 | /* 85684 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30270 | /* 85688 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30271 | /* 85691 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30272 | /* 85695 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30273 | /* 85699 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30274 | /* 85701 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30275 | /* 85708 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16177:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHSUBWDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30276 | /* 85708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBWDrm), |
| 30277 | /* 85711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30278 | /* 85713 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30279 | /* 85717 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30280 | /* 85722 */ GIR_RootConstrainSelectedInstOperands, |
| 30281 | /* 85723 */ // GIR_Coverage, 1530, |
| 30282 | /* 85723 */ GIR_EraseRootFromParent_Done, |
| 30283 | /* 85724 */ // Label 1894: @85724 |
| 30284 | /* 85724 */ GIM_Try, /*On fail goto*//*Label 1895*/ GIMT_Encode4(85791), // Rule ID 1532 // |
| 30285 | /* 85729 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30286 | /* 85732 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubdq), |
| 30287 | /* 85737 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30288 | /* 85740 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30289 | /* 85743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30290 | /* 85747 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30291 | /* 85751 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30292 | /* 85755 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30293 | /* 85758 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30294 | /* 85762 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30295 | /* 85766 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30296 | /* 85768 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30297 | /* 85775 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16176:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHSUBDQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30298 | /* 85775 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBDQrm), |
| 30299 | /* 85778 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30300 | /* 85780 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30301 | /* 85784 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30302 | /* 85789 */ GIR_RootConstrainSelectedInstOperands, |
| 30303 | /* 85790 */ // GIR_Coverage, 1532, |
| 30304 | /* 85790 */ GIR_EraseRootFromParent_Done, |
| 30305 | /* 85791 */ // Label 1895: @85791 |
| 30306 | /* 85791 */ GIM_Try, /*On fail goto*//*Label 1896*/ GIMT_Encode4(85858), // Rule ID 1534 // |
| 30307 | /* 85796 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30308 | /* 85799 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubbw), |
| 30309 | /* 85804 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30310 | /* 85807 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30311 | /* 85810 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30312 | /* 85814 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30313 | /* 85818 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30314 | /* 85822 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30315 | /* 85825 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30316 | /* 85829 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30317 | /* 85833 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30318 | /* 85835 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30319 | /* 85842 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16175:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHSUBBWrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 30320 | /* 85842 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBBWrm), |
| 30321 | /* 85845 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30322 | /* 85847 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30323 | /* 85851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30324 | /* 85856 */ GIR_RootConstrainSelectedInstOperands, |
| 30325 | /* 85857 */ // GIR_Coverage, 1534, |
| 30326 | /* 85857 */ GIR_EraseRootFromParent_Done, |
| 30327 | /* 85858 */ // Label 1896: @85858 |
| 30328 | /* 85858 */ GIM_Try, /*On fail goto*//*Label 1897*/ GIMT_Encode4(85925), // Rule ID 1536 // |
| 30329 | /* 85863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30330 | /* 85866 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddwq), |
| 30331 | /* 85871 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30332 | /* 85874 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30333 | /* 85877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30334 | /* 85881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30335 | /* 85885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30336 | /* 85889 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30337 | /* 85892 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30338 | /* 85896 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30339 | /* 85900 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30340 | /* 85902 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30341 | /* 85909 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16174:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDWQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30342 | /* 85909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDWQrm), |
| 30343 | /* 85912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30344 | /* 85914 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30345 | /* 85918 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30346 | /* 85923 */ GIR_RootConstrainSelectedInstOperands, |
| 30347 | /* 85924 */ // GIR_Coverage, 1536, |
| 30348 | /* 85924 */ GIR_EraseRootFromParent_Done, |
| 30349 | /* 85925 */ // Label 1897: @85925 |
| 30350 | /* 85925 */ GIM_Try, /*On fail goto*//*Label 1898*/ GIMT_Encode4(85992), // Rule ID 1538 // |
| 30351 | /* 85930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30352 | /* 85933 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddwd), |
| 30353 | /* 85938 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30354 | /* 85941 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30355 | /* 85944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30356 | /* 85948 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30357 | /* 85952 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30358 | /* 85956 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30359 | /* 85959 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30360 | /* 85963 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30361 | /* 85967 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30362 | /* 85969 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30363 | /* 85976 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16173:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDWDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30364 | /* 85976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDWDrm), |
| 30365 | /* 85979 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30366 | /* 85981 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30367 | /* 85985 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30368 | /* 85990 */ GIR_RootConstrainSelectedInstOperands, |
| 30369 | /* 85991 */ // GIR_Coverage, 1538, |
| 30370 | /* 85991 */ GIR_EraseRootFromParent_Done, |
| 30371 | /* 85992 */ // Label 1898: @85992 |
| 30372 | /* 85992 */ GIM_Try, /*On fail goto*//*Label 1899*/ GIMT_Encode4(86059), // Rule ID 1540 // |
| 30373 | /* 85997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30374 | /* 86000 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadduwq), |
| 30375 | /* 86005 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30376 | /* 86008 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30377 | /* 86011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30378 | /* 86015 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30379 | /* 86019 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30380 | /* 86023 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30381 | /* 86026 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30382 | /* 86030 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30383 | /* 86034 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30384 | /* 86036 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30385 | /* 86043 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16172:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUWQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30386 | /* 86043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUWQrm), |
| 30387 | /* 86046 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30388 | /* 86048 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30389 | /* 86052 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30390 | /* 86057 */ GIR_RootConstrainSelectedInstOperands, |
| 30391 | /* 86058 */ // GIR_Coverage, 1540, |
| 30392 | /* 86058 */ GIR_EraseRootFromParent_Done, |
| 30393 | /* 86059 */ // Label 1899: @86059 |
| 30394 | /* 86059 */ GIM_Try, /*On fail goto*//*Label 1900*/ GIMT_Encode4(86126), // Rule ID 1542 // |
| 30395 | /* 86064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30396 | /* 86067 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadduwd), |
| 30397 | /* 86072 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30398 | /* 86075 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30399 | /* 86078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30400 | /* 86082 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30401 | /* 86086 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30402 | /* 86090 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30403 | /* 86093 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30404 | /* 86097 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30405 | /* 86101 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30406 | /* 86103 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30407 | /* 86110 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16171:{ *:[iPTR] }, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUWDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30408 | /* 86110 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUWDrm), |
| 30409 | /* 86113 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30410 | /* 86115 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30411 | /* 86119 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30412 | /* 86124 */ GIR_RootConstrainSelectedInstOperands, |
| 30413 | /* 86125 */ // GIR_Coverage, 1542, |
| 30414 | /* 86125 */ GIR_EraseRootFromParent_Done, |
| 30415 | /* 86126 */ // Label 1900: @86126 |
| 30416 | /* 86126 */ GIM_Try, /*On fail goto*//*Label 1901*/ GIMT_Encode4(86193), // Rule ID 1544 // |
| 30417 | /* 86131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30418 | /* 86134 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddudq), |
| 30419 | /* 86139 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30420 | /* 86142 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30421 | /* 86145 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30422 | /* 86149 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30423 | /* 86153 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30424 | /* 86157 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30425 | /* 86160 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30426 | /* 86164 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30427 | /* 86168 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30428 | /* 86170 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30429 | /* 86177 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16170:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUDQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30430 | /* 86177 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUDQrm), |
| 30431 | /* 86180 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30432 | /* 86182 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30433 | /* 86186 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30434 | /* 86191 */ GIR_RootConstrainSelectedInstOperands, |
| 30435 | /* 86192 */ // GIR_Coverage, 1544, |
| 30436 | /* 86192 */ GIR_EraseRootFromParent_Done, |
| 30437 | /* 86193 */ // Label 1901: @86193 |
| 30438 | /* 86193 */ GIM_Try, /*On fail goto*//*Label 1902*/ GIMT_Encode4(86260), // Rule ID 1546 // |
| 30439 | /* 86198 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30440 | /* 86201 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubw), |
| 30441 | /* 86206 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30442 | /* 86209 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30443 | /* 86212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30444 | /* 86216 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30445 | /* 86220 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30446 | /* 86224 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30447 | /* 86227 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30448 | /* 86231 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30449 | /* 86235 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30450 | /* 86237 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30451 | /* 86244 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16169:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUBWrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 30452 | /* 86244 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBWrm), |
| 30453 | /* 86247 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30454 | /* 86249 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30455 | /* 86253 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30456 | /* 86258 */ GIR_RootConstrainSelectedInstOperands, |
| 30457 | /* 86259 */ // GIR_Coverage, 1546, |
| 30458 | /* 86259 */ GIR_EraseRootFromParent_Done, |
| 30459 | /* 86260 */ // Label 1902: @86260 |
| 30460 | /* 86260 */ GIM_Try, /*On fail goto*//*Label 1903*/ GIMT_Encode4(86327), // Rule ID 1548 // |
| 30461 | /* 86265 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30462 | /* 86268 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubq), |
| 30463 | /* 86273 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30464 | /* 86276 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30465 | /* 86279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30466 | /* 86283 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30467 | /* 86287 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30468 | /* 86291 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30469 | /* 86294 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30470 | /* 86298 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30471 | /* 86302 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30472 | /* 86304 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30473 | /* 86311 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16168:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUBQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30474 | /* 86311 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBQrm), |
| 30475 | /* 86314 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30476 | /* 86316 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30477 | /* 86320 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30478 | /* 86325 */ GIR_RootConstrainSelectedInstOperands, |
| 30479 | /* 86326 */ // GIR_Coverage, 1548, |
| 30480 | /* 86326 */ GIR_EraseRootFromParent_Done, |
| 30481 | /* 86327 */ // Label 1903: @86327 |
| 30482 | /* 86327 */ GIM_Try, /*On fail goto*//*Label 1904*/ GIMT_Encode4(86394), // Rule ID 1550 // |
| 30483 | /* 86332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30484 | /* 86335 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubd), |
| 30485 | /* 86340 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30486 | /* 86343 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30487 | /* 86346 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30488 | /* 86350 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30489 | /* 86354 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30490 | /* 86358 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30491 | /* 86361 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30492 | /* 86365 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30493 | /* 86369 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30494 | /* 86371 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30495 | /* 86378 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16167:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDUBDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30496 | /* 86378 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBDrm), |
| 30497 | /* 86381 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30498 | /* 86383 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30499 | /* 86387 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30500 | /* 86392 */ GIR_RootConstrainSelectedInstOperands, |
| 30501 | /* 86393 */ // GIR_Coverage, 1550, |
| 30502 | /* 86393 */ GIR_EraseRootFromParent_Done, |
| 30503 | /* 86394 */ // Label 1904: @86394 |
| 30504 | /* 86394 */ GIM_Try, /*On fail goto*//*Label 1905*/ GIMT_Encode4(86461), // Rule ID 1552 // |
| 30505 | /* 86399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30506 | /* 86402 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadddq), |
| 30507 | /* 86407 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30508 | /* 86410 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30509 | /* 86413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30510 | /* 86417 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30511 | /* 86421 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30512 | /* 86425 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30513 | /* 86428 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30514 | /* 86432 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30515 | /* 86436 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30516 | /* 86438 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30517 | /* 86445 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16166:{ *:[iPTR] }, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDDQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30518 | /* 86445 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDDQrm), |
| 30519 | /* 86448 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30520 | /* 86450 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30521 | /* 86454 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30522 | /* 86459 */ GIR_RootConstrainSelectedInstOperands, |
| 30523 | /* 86460 */ // GIR_Coverage, 1552, |
| 30524 | /* 86460 */ GIR_EraseRootFromParent_Done, |
| 30525 | /* 86461 */ // Label 1905: @86461 |
| 30526 | /* 86461 */ GIM_Try, /*On fail goto*//*Label 1906*/ GIMT_Encode4(86528), // Rule ID 1554 // |
| 30527 | /* 86466 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30528 | /* 86469 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbw), |
| 30529 | /* 86474 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30530 | /* 86477 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30531 | /* 86480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30532 | /* 86484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30533 | /* 86488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30534 | /* 86492 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30535 | /* 86495 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30536 | /* 86499 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30537 | /* 86503 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30538 | /* 86505 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30539 | /* 86512 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16165:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDBWrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 30540 | /* 86512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBWrm), |
| 30541 | /* 86515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30542 | /* 86517 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30543 | /* 86521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30544 | /* 86526 */ GIR_RootConstrainSelectedInstOperands, |
| 30545 | /* 86527 */ // GIR_Coverage, 1554, |
| 30546 | /* 86527 */ GIR_EraseRootFromParent_Done, |
| 30547 | /* 86528 */ // Label 1906: @86528 |
| 30548 | /* 86528 */ GIM_Try, /*On fail goto*//*Label 1907*/ GIMT_Encode4(86595), // Rule ID 1556 // |
| 30549 | /* 86533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30550 | /* 86536 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbq), |
| 30551 | /* 86541 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30552 | /* 86544 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30553 | /* 86547 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30554 | /* 86551 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30555 | /* 86555 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30556 | /* 86559 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30557 | /* 86562 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30558 | /* 86566 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30559 | /* 86570 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30560 | /* 86572 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30561 | /* 86579 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16164:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDBQrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 30562 | /* 86579 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBQrm), |
| 30563 | /* 86582 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30564 | /* 86584 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30565 | /* 86588 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30566 | /* 86593 */ GIR_RootConstrainSelectedInstOperands, |
| 30567 | /* 86594 */ // GIR_Coverage, 1556, |
| 30568 | /* 86594 */ GIR_EraseRootFromParent_Done, |
| 30569 | /* 86595 */ // Label 1907: @86595 |
| 30570 | /* 86595 */ GIM_Try, /*On fail goto*//*Label 1908*/ GIMT_Encode4(86662), // Rule ID 1558 // |
| 30571 | /* 86600 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30572 | /* 86603 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbd), |
| 30573 | /* 86608 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30574 | /* 86611 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30575 | /* 86614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30576 | /* 86618 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30577 | /* 86622 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30578 | /* 86626 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30579 | /* 86629 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30580 | /* 86633 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30581 | /* 86637 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30582 | /* 86639 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30583 | /* 86646 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16163:{ *:[iPTR] }, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPHADDBDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 30584 | /* 86646 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBDrm), |
| 30585 | /* 86649 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30586 | /* 86651 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30587 | /* 86655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30588 | /* 86660 */ GIR_RootConstrainSelectedInstOperands, |
| 30589 | /* 86661 */ // GIR_Coverage, 1558, |
| 30590 | /* 86661 */ GIR_EraseRootFromParent_Done, |
| 30591 | /* 86662 */ // Label 1908: @86662 |
| 30592 | /* 86662 */ GIM_Try, /*On fail goto*//*Label 1909*/ GIMT_Encode4(86729), // Rule ID 1564 // |
| 30593 | /* 86667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30594 | /* 86670 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ps), |
| 30595 | /* 86675 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30596 | /* 86678 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30597 | /* 86681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30598 | /* 86685 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30599 | /* 86689 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30600 | /* 86693 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30601 | /* 86696 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30602 | /* 86700 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30603 | /* 86704 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30604 | /* 86706 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30605 | /* 86713 */ // (intrinsic_wo_chain:{ *:[v4f32] } 16155:{ *:[iPTR] }, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFRCZPSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 30606 | /* 86713 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPSrm), |
| 30607 | /* 86716 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30608 | /* 86718 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30609 | /* 86722 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30610 | /* 86727 */ GIR_RootConstrainSelectedInstOperands, |
| 30611 | /* 86728 */ // GIR_Coverage, 1564, |
| 30612 | /* 86728 */ GIR_EraseRootFromParent_Done, |
| 30613 | /* 86729 */ // Label 1909: @86729 |
| 30614 | /* 86729 */ GIM_Try, /*On fail goto*//*Label 1910*/ GIMT_Encode4(86796), // Rule ID 1566 // |
| 30615 | /* 86734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30616 | /* 86737 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ps_256), |
| 30617 | /* 86742 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 30618 | /* 86745 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 30619 | /* 86748 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 30620 | /* 86752 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30621 | /* 86756 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30622 | /* 86760 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30623 | /* 86763 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30624 | /* 86767 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30625 | /* 86771 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30626 | /* 86773 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30627 | /* 86780 */ // (intrinsic_wo_chain:{ *:[v8f32] } 16156:{ *:[iPTR] }, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFRCZPSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 30628 | /* 86780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPSYrm), |
| 30629 | /* 86783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30630 | /* 86785 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30631 | /* 86789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30632 | /* 86794 */ GIR_RootConstrainSelectedInstOperands, |
| 30633 | /* 86795 */ // GIR_Coverage, 1566, |
| 30634 | /* 86795 */ GIR_EraseRootFromParent_Done, |
| 30635 | /* 86796 */ // Label 1910: @86796 |
| 30636 | /* 86796 */ GIM_Try, /*On fail goto*//*Label 1911*/ GIMT_Encode4(86863), // Rule ID 1572 // |
| 30637 | /* 86801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30638 | /* 86804 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_pd), |
| 30639 | /* 86809 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30640 | /* 86812 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 30641 | /* 86815 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30642 | /* 86819 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30643 | /* 86823 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30644 | /* 86827 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30645 | /* 86830 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30646 | /* 86834 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30647 | /* 86838 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30648 | /* 86840 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30649 | /* 86847 */ // (intrinsic_wo_chain:{ *:[v2f64] } 16153:{ *:[iPTR] }, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFRCZPDrm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 30650 | /* 86847 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPDrm), |
| 30651 | /* 86850 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30652 | /* 86852 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30653 | /* 86856 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30654 | /* 86861 */ GIR_RootConstrainSelectedInstOperands, |
| 30655 | /* 86862 */ // GIR_Coverage, 1572, |
| 30656 | /* 86862 */ GIR_EraseRootFromParent_Done, |
| 30657 | /* 86863 */ // Label 1911: @86863 |
| 30658 | /* 86863 */ GIM_Try, /*On fail goto*//*Label 1912*/ GIMT_Encode4(86930), // Rule ID 1574 // |
| 30659 | /* 86868 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30660 | /* 86871 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_pd_256), |
| 30661 | /* 86876 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 30662 | /* 86879 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 30663 | /* 86882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 30664 | /* 86886 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30665 | /* 86890 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30666 | /* 86894 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30667 | /* 86897 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30668 | /* 86901 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30669 | /* 86905 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30670 | /* 86907 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30671 | /* 86914 */ // (intrinsic_wo_chain:{ *:[v4f64] } 16154:{ *:[iPTR] }, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VFRCZPDYrm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 30672 | /* 86914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPDYrm), |
| 30673 | /* 86917 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30674 | /* 86919 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 30675 | /* 86923 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30676 | /* 86928 */ GIR_RootConstrainSelectedInstOperands, |
| 30677 | /* 86929 */ // GIR_Coverage, 1574, |
| 30678 | /* 86929 */ GIR_EraseRootFromParent_Done, |
| 30679 | /* 86930 */ // Label 1912: @86930 |
| 30680 | /* 86930 */ GIM_Try, /*On fail goto*//*Label 1913*/ GIMT_Encode4(86997), // Rule ID 3364 // |
| 30681 | /* 86935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX), |
| 30682 | /* 86938 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesimc), |
| 30683 | /* 86943 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30684 | /* 86946 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 30685 | /* 86949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30686 | /* 86953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 30687 | /* 86957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 30688 | /* 86961 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 30689 | /* 86964 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 30690 | /* 86968 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 30691 | /* 86972 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 30692 | /* 86974 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 30693 | /* 86981 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14554:{ *:[iPTR] }, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESIMCrm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1) |
| 30694 | /* 86981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESIMCrm), |
| 30695 | /* 86984 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30696 | /* 86986 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 30697 | /* 86990 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 30698 | /* 86995 */ GIR_RootConstrainSelectedInstOperands, |
| 30699 | /* 86996 */ // GIR_Coverage, 3364, |
| 30700 | /* 86996 */ GIR_EraseRootFromParent_Done, |
| 30701 | /* 86997 */ // Label 1913: @86997 |
| 30702 | /* 86997 */ GIM_Try, /*On fail goto*//*Label 1914*/ GIMT_Encode4(87033), // Rule ID 1529 // |
| 30703 | /* 87002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30704 | /* 87005 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubwd), |
| 30705 | /* 87010 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30706 | /* 87013 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30707 | /* 87016 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30708 | /* 87020 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30709 | /* 87024 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16177:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHSUBWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src) |
| 30710 | /* 87024 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBWDrr), |
| 30711 | /* 87027 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30712 | /* 87029 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30713 | /* 87031 */ GIR_RootConstrainSelectedInstOperands, |
| 30714 | /* 87032 */ // GIR_Coverage, 1529, |
| 30715 | /* 87032 */ GIR_EraseRootFromParent_Done, |
| 30716 | /* 87033 */ // Label 1914: @87033 |
| 30717 | /* 87033 */ GIM_Try, /*On fail goto*//*Label 1915*/ GIMT_Encode4(87069), // Rule ID 1531 // |
| 30718 | /* 87038 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30719 | /* 87041 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubdq), |
| 30720 | /* 87046 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30721 | /* 87049 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30722 | /* 87052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30723 | /* 87056 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30724 | /* 87060 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16176:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src) => (VPHSUBDQrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src) |
| 30725 | /* 87060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBDQrr), |
| 30726 | /* 87063 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30727 | /* 87065 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30728 | /* 87067 */ GIR_RootConstrainSelectedInstOperands, |
| 30729 | /* 87068 */ // GIR_Coverage, 1531, |
| 30730 | /* 87068 */ GIR_EraseRootFromParent_Done, |
| 30731 | /* 87069 */ // Label 1915: @87069 |
| 30732 | /* 87069 */ GIM_Try, /*On fail goto*//*Label 1916*/ GIMT_Encode4(87105), // Rule ID 1533 // |
| 30733 | /* 87074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30734 | /* 87077 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphsubbw), |
| 30735 | /* 87082 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30736 | /* 87085 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30737 | /* 87088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30738 | /* 87092 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30739 | /* 87096 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16175:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHSUBBWrr:{ *:[v8i16] } VR128:{ *:[v16i8] }:$src) |
| 30740 | /* 87096 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHSUBBWrr), |
| 30741 | /* 87099 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30742 | /* 87101 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30743 | /* 87103 */ GIR_RootConstrainSelectedInstOperands, |
| 30744 | /* 87104 */ // GIR_Coverage, 1533, |
| 30745 | /* 87104 */ GIR_EraseRootFromParent_Done, |
| 30746 | /* 87105 */ // Label 1916: @87105 |
| 30747 | /* 87105 */ GIM_Try, /*On fail goto*//*Label 1917*/ GIMT_Encode4(87141), // Rule ID 1535 // |
| 30748 | /* 87110 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30749 | /* 87113 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddwq), |
| 30750 | /* 87118 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30751 | /* 87121 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30752 | /* 87124 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30753 | /* 87128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30754 | /* 87132 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16174:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHADDWQrr:{ *:[v2i64] } VR128:{ *:[v8i16] }:$src) |
| 30755 | /* 87132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDWQrr), |
| 30756 | /* 87135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30757 | /* 87137 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30758 | /* 87139 */ GIR_RootConstrainSelectedInstOperands, |
| 30759 | /* 87140 */ // GIR_Coverage, 1535, |
| 30760 | /* 87140 */ GIR_EraseRootFromParent_Done, |
| 30761 | /* 87141 */ // Label 1917: @87141 |
| 30762 | /* 87141 */ GIM_Try, /*On fail goto*//*Label 1918*/ GIMT_Encode4(87177), // Rule ID 1537 // |
| 30763 | /* 87146 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30764 | /* 87149 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddwd), |
| 30765 | /* 87154 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30766 | /* 87157 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30767 | /* 87160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30768 | /* 87164 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30769 | /* 87168 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16173:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHADDWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src) |
| 30770 | /* 87168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDWDrr), |
| 30771 | /* 87171 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30772 | /* 87173 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30773 | /* 87175 */ GIR_RootConstrainSelectedInstOperands, |
| 30774 | /* 87176 */ // GIR_Coverage, 1537, |
| 30775 | /* 87176 */ GIR_EraseRootFromParent_Done, |
| 30776 | /* 87177 */ // Label 1918: @87177 |
| 30777 | /* 87177 */ GIM_Try, /*On fail goto*//*Label 1919*/ GIMT_Encode4(87213), // Rule ID 1539 // |
| 30778 | /* 87182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30779 | /* 87185 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadduwq), |
| 30780 | /* 87190 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30781 | /* 87193 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30782 | /* 87196 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30783 | /* 87200 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30784 | /* 87204 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16172:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHADDUWQrr:{ *:[v2i64] } VR128:{ *:[v8i16] }:$src) |
| 30785 | /* 87204 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUWQrr), |
| 30786 | /* 87207 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30787 | /* 87209 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30788 | /* 87211 */ GIR_RootConstrainSelectedInstOperands, |
| 30789 | /* 87212 */ // GIR_Coverage, 1539, |
| 30790 | /* 87212 */ GIR_EraseRootFromParent_Done, |
| 30791 | /* 87213 */ // Label 1919: @87213 |
| 30792 | /* 87213 */ GIM_Try, /*On fail goto*//*Label 1920*/ GIMT_Encode4(87249), // Rule ID 1541 // |
| 30793 | /* 87218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30794 | /* 87221 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadduwd), |
| 30795 | /* 87226 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30796 | /* 87229 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 30797 | /* 87232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30798 | /* 87236 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30799 | /* 87240 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16171:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src) => (VPHADDUWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src) |
| 30800 | /* 87240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUWDrr), |
| 30801 | /* 87243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30802 | /* 87245 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30803 | /* 87247 */ GIR_RootConstrainSelectedInstOperands, |
| 30804 | /* 87248 */ // GIR_Coverage, 1541, |
| 30805 | /* 87248 */ GIR_EraseRootFromParent_Done, |
| 30806 | /* 87249 */ // Label 1920: @87249 |
| 30807 | /* 87249 */ GIM_Try, /*On fail goto*//*Label 1921*/ GIMT_Encode4(87285), // Rule ID 1543 // |
| 30808 | /* 87254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30809 | /* 87257 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddudq), |
| 30810 | /* 87262 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30811 | /* 87265 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30812 | /* 87268 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30813 | /* 87272 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30814 | /* 87276 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16170:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src) => (VPHADDUDQrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src) |
| 30815 | /* 87276 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUDQrr), |
| 30816 | /* 87279 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30817 | /* 87281 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30818 | /* 87283 */ GIR_RootConstrainSelectedInstOperands, |
| 30819 | /* 87284 */ // GIR_Coverage, 1543, |
| 30820 | /* 87284 */ GIR_EraseRootFromParent_Done, |
| 30821 | /* 87285 */ // Label 1921: @87285 |
| 30822 | /* 87285 */ GIM_Try, /*On fail goto*//*Label 1922*/ GIMT_Encode4(87321), // Rule ID 1545 // |
| 30823 | /* 87290 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30824 | /* 87293 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubw), |
| 30825 | /* 87298 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30826 | /* 87301 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30827 | /* 87304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30828 | /* 87308 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30829 | /* 87312 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16169:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDUBWrr:{ *:[v8i16] } VR128:{ *:[v16i8] }:$src) |
| 30830 | /* 87312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBWrr), |
| 30831 | /* 87315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30832 | /* 87317 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30833 | /* 87319 */ GIR_RootConstrainSelectedInstOperands, |
| 30834 | /* 87320 */ // GIR_Coverage, 1545, |
| 30835 | /* 87320 */ GIR_EraseRootFromParent_Done, |
| 30836 | /* 87321 */ // Label 1922: @87321 |
| 30837 | /* 87321 */ GIM_Try, /*On fail goto*//*Label 1923*/ GIMT_Encode4(87357), // Rule ID 1547 // |
| 30838 | /* 87326 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30839 | /* 87329 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubq), |
| 30840 | /* 87334 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30841 | /* 87337 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30842 | /* 87340 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30843 | /* 87344 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30844 | /* 87348 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16168:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDUBQrr:{ *:[v2i64] } VR128:{ *:[v16i8] }:$src) |
| 30845 | /* 87348 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBQrr), |
| 30846 | /* 87351 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30847 | /* 87353 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30848 | /* 87355 */ GIR_RootConstrainSelectedInstOperands, |
| 30849 | /* 87356 */ // GIR_Coverage, 1547, |
| 30850 | /* 87356 */ GIR_EraseRootFromParent_Done, |
| 30851 | /* 87357 */ // Label 1923: @87357 |
| 30852 | /* 87357 */ GIM_Try, /*On fail goto*//*Label 1924*/ GIMT_Encode4(87393), // Rule ID 1549 // |
| 30853 | /* 87362 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30854 | /* 87365 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddubd), |
| 30855 | /* 87370 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30856 | /* 87373 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30857 | /* 87376 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30858 | /* 87380 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30859 | /* 87384 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16167:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDUBDrr:{ *:[v4i32] } VR128:{ *:[v16i8] }:$src) |
| 30860 | /* 87384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDUBDrr), |
| 30861 | /* 87387 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30862 | /* 87389 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30863 | /* 87391 */ GIR_RootConstrainSelectedInstOperands, |
| 30864 | /* 87392 */ // GIR_Coverage, 1549, |
| 30865 | /* 87392 */ GIR_EraseRootFromParent_Done, |
| 30866 | /* 87393 */ // Label 1924: @87393 |
| 30867 | /* 87393 */ GIM_Try, /*On fail goto*//*Label 1925*/ GIMT_Encode4(87429), // Rule ID 1551 // |
| 30868 | /* 87398 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30869 | /* 87401 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphadddq), |
| 30870 | /* 87406 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30871 | /* 87409 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30872 | /* 87412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30873 | /* 87416 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30874 | /* 87420 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16166:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src) => (VPHADDDQrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src) |
| 30875 | /* 87420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDDQrr), |
| 30876 | /* 87423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30877 | /* 87425 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30878 | /* 87427 */ GIR_RootConstrainSelectedInstOperands, |
| 30879 | /* 87428 */ // GIR_Coverage, 1551, |
| 30880 | /* 87428 */ GIR_EraseRootFromParent_Done, |
| 30881 | /* 87429 */ // Label 1925: @87429 |
| 30882 | /* 87429 */ GIM_Try, /*On fail goto*//*Label 1926*/ GIMT_Encode4(87465), // Rule ID 1553 // |
| 30883 | /* 87434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30884 | /* 87437 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbw), |
| 30885 | /* 87442 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 30886 | /* 87445 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30887 | /* 87448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30888 | /* 87452 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30889 | /* 87456 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16165:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDBWrr:{ *:[v8i16] } VR128:{ *:[v16i8] }:$src) |
| 30890 | /* 87456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBWrr), |
| 30891 | /* 87459 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30892 | /* 87461 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30893 | /* 87463 */ GIR_RootConstrainSelectedInstOperands, |
| 30894 | /* 87464 */ // GIR_Coverage, 1553, |
| 30895 | /* 87464 */ GIR_EraseRootFromParent_Done, |
| 30896 | /* 87465 */ // Label 1926: @87465 |
| 30897 | /* 87465 */ GIM_Try, /*On fail goto*//*Label 1927*/ GIMT_Encode4(87501), // Rule ID 1555 // |
| 30898 | /* 87470 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30899 | /* 87473 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbq), |
| 30900 | /* 87478 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30901 | /* 87481 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30902 | /* 87484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30903 | /* 87488 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30904 | /* 87492 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16164:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDBQrr:{ *:[v2i64] } VR128:{ *:[v16i8] }:$src) |
| 30905 | /* 87492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBQrr), |
| 30906 | /* 87495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30907 | /* 87497 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30908 | /* 87499 */ GIR_RootConstrainSelectedInstOperands, |
| 30909 | /* 87500 */ // GIR_Coverage, 1555, |
| 30910 | /* 87500 */ GIR_EraseRootFromParent_Done, |
| 30911 | /* 87501 */ // Label 1927: @87501 |
| 30912 | /* 87501 */ GIM_Try, /*On fail goto*//*Label 1928*/ GIMT_Encode4(87537), // Rule ID 1557 // |
| 30913 | /* 87506 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30914 | /* 87509 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vphaddbd), |
| 30915 | /* 87514 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30916 | /* 87517 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 30917 | /* 87520 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30918 | /* 87524 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30919 | /* 87528 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16163:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src) => (VPHADDBDrr:{ *:[v4i32] } VR128:{ *:[v16i8] }:$src) |
| 30920 | /* 87528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPHADDBDrr), |
| 30921 | /* 87531 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30922 | /* 87533 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30923 | /* 87535 */ GIR_RootConstrainSelectedInstOperands, |
| 30924 | /* 87536 */ // GIR_Coverage, 1557, |
| 30925 | /* 87536 */ GIR_EraseRootFromParent_Done, |
| 30926 | /* 87537 */ // Label 1928: @87537 |
| 30927 | /* 87537 */ GIM_Try, /*On fail goto*//*Label 1929*/ GIMT_Encode4(87573), // Rule ID 1559 // |
| 30928 | /* 87542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30929 | /* 87545 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ss), |
| 30930 | /* 87550 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30931 | /* 87553 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30932 | /* 87556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30933 | /* 87560 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30934 | /* 87564 */ // (intrinsic_wo_chain:{ *:[v4f32] } 16158:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (VFRCZSSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 30935 | /* 87564 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZSSrr), |
| 30936 | /* 87567 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30937 | /* 87569 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30938 | /* 87571 */ GIR_RootConstrainSelectedInstOperands, |
| 30939 | /* 87572 */ // GIR_Coverage, 1559, |
| 30940 | /* 87572 */ GIR_EraseRootFromParent_Done, |
| 30941 | /* 87573 */ // Label 1929: @87573 |
| 30942 | /* 87573 */ GIM_Try, /*On fail goto*//*Label 1930*/ GIMT_Encode4(87609), // Rule ID 1563 // |
| 30943 | /* 87578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30944 | /* 87581 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ps), |
| 30945 | /* 87586 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 30946 | /* 87589 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 30947 | /* 87592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30948 | /* 87596 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30949 | /* 87600 */ // (intrinsic_wo_chain:{ *:[v4f32] } 16155:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (VFRCZPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 30950 | /* 87600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPSrr), |
| 30951 | /* 87603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30952 | /* 87605 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30953 | /* 87607 */ GIR_RootConstrainSelectedInstOperands, |
| 30954 | /* 87608 */ // GIR_Coverage, 1563, |
| 30955 | /* 87608 */ GIR_EraseRootFromParent_Done, |
| 30956 | /* 87609 */ // Label 1930: @87609 |
| 30957 | /* 87609 */ GIM_Try, /*On fail goto*//*Label 1931*/ GIMT_Encode4(87645), // Rule ID 1565 // |
| 30958 | /* 87614 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30959 | /* 87617 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_ps_256), |
| 30960 | /* 87622 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 30961 | /* 87625 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 30962 | /* 87628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 30963 | /* 87632 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 30964 | /* 87636 */ // (intrinsic_wo_chain:{ *:[v8f32] } 16156:{ *:[iPTR] }, VR256:{ *:[v8f32] }:$src) => (VFRCZPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) |
| 30965 | /* 87636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPSYrr), |
| 30966 | /* 87639 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30967 | /* 87641 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30968 | /* 87643 */ GIR_RootConstrainSelectedInstOperands, |
| 30969 | /* 87644 */ // GIR_Coverage, 1565, |
| 30970 | /* 87644 */ GIR_EraseRootFromParent_Done, |
| 30971 | /* 87645 */ // Label 1931: @87645 |
| 30972 | /* 87645 */ GIM_Try, /*On fail goto*//*Label 1932*/ GIMT_Encode4(87681), // Rule ID 1567 // |
| 30973 | /* 87650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30974 | /* 87653 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_sd), |
| 30975 | /* 87658 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30976 | /* 87661 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 30977 | /* 87664 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30978 | /* 87668 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30979 | /* 87672 */ // (intrinsic_wo_chain:{ *:[v2f64] } 16157:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src) => (VFRCZSDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 30980 | /* 87672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZSDrr), |
| 30981 | /* 87675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30982 | /* 87677 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30983 | /* 87679 */ GIR_RootConstrainSelectedInstOperands, |
| 30984 | /* 87680 */ // GIR_Coverage, 1567, |
| 30985 | /* 87680 */ GIR_EraseRootFromParent_Done, |
| 30986 | /* 87681 */ // Label 1932: @87681 |
| 30987 | /* 87681 */ GIM_Try, /*On fail goto*//*Label 1933*/ GIMT_Encode4(87717), // Rule ID 1571 // |
| 30988 | /* 87686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 30989 | /* 87689 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_pd), |
| 30990 | /* 87694 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 30991 | /* 87697 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 30992 | /* 87700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30993 | /* 87704 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 30994 | /* 87708 */ // (intrinsic_wo_chain:{ *:[v2f64] } 16153:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src) => (VFRCZPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 30995 | /* 87708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPDrr), |
| 30996 | /* 87711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 30997 | /* 87713 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 30998 | /* 87715 */ GIR_RootConstrainSelectedInstOperands, |
| 30999 | /* 87716 */ // GIR_Coverage, 1571, |
| 31000 | /* 87716 */ GIR_EraseRootFromParent_Done, |
| 31001 | /* 87717 */ // Label 1933: @87717 |
| 31002 | /* 87717 */ GIM_Try, /*On fail goto*//*Label 1934*/ GIMT_Encode4(87753), // Rule ID 1573 // |
| 31003 | /* 87722 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 31004 | /* 87725 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vfrcz_pd_256), |
| 31005 | /* 87730 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 31006 | /* 87733 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 31007 | /* 87736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31008 | /* 87740 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31009 | /* 87744 */ // (intrinsic_wo_chain:{ *:[v4f64] } 16154:{ *:[iPTR] }, VR256:{ *:[v4f64] }:$src) => (VFRCZPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) |
| 31010 | /* 87744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFRCZPDYrr), |
| 31011 | /* 87747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31012 | /* 87749 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31013 | /* 87751 */ GIR_RootConstrainSelectedInstOperands, |
| 31014 | /* 87752 */ // GIR_Coverage, 1573, |
| 31015 | /* 87752 */ GIR_EraseRootFromParent_Done, |
| 31016 | /* 87753 */ // Label 1934: @87753 |
| 31017 | /* 87753 */ GIM_Try, /*On fail goto*//*Label 1935*/ GIMT_Encode4(87789), // Rule ID 3363 // |
| 31018 | /* 87758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX), |
| 31019 | /* 87761 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesimc), |
| 31020 | /* 87766 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31021 | /* 87769 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31022 | /* 87772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31023 | /* 87776 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31024 | /* 87780 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14554:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1) => (VAESIMCrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1) |
| 31025 | /* 87780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESIMCrr), |
| 31026 | /* 87783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31027 | /* 87785 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31028 | /* 87787 */ GIR_RootConstrainSelectedInstOperands, |
| 31029 | /* 87788 */ // GIR_Coverage, 3363, |
| 31030 | /* 87788 */ GIR_EraseRootFromParent_Done, |
| 31031 | /* 87789 */ // Label 1935: @87789 |
| 31032 | /* 87789 */ GIM_Try, /*On fail goto*//*Label 1936*/ GIMT_Encode4(87825), // Rule ID 3365 // |
| 31033 | /* 87794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 31034 | /* 87797 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesimc), |
| 31035 | /* 87802 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31036 | /* 87805 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31037 | /* 87808 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31038 | /* 87812 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31039 | /* 87816 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14554:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1) => (AESIMCrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1) |
| 31040 | /* 87816 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESIMCrr), |
| 31041 | /* 87819 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31042 | /* 87821 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31043 | /* 87823 */ GIR_RootConstrainSelectedInstOperands, |
| 31044 | /* 87824 */ // GIR_Coverage, 3365, |
| 31045 | /* 87824 */ GIR_EraseRootFromParent_Done, |
| 31046 | /* 87825 */ // Label 1936: @87825 |
| 31047 | /* 87825 */ GIM_Try, /*On fail goto*//*Label 1937*/ GIMT_Encode4(87863), // Rule ID 18256 // |
| 31048 | /* 87830 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 31049 | /* 87833 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse_rsqrt_ss), |
| 31050 | /* 87838 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31051 | /* 87841 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31052 | /* 87844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31053 | /* 87848 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31054 | /* 87852 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15889:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (RSQRTSSr_Int:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src, VR128:{ *:[v4f32] }:$src) |
| 31055 | /* 87852 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RSQRTSSr_Int), |
| 31056 | /* 87855 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31057 | /* 87857 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31058 | /* 87859 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31059 | /* 87861 */ GIR_RootConstrainSelectedInstOperands, |
| 31060 | /* 87862 */ // GIR_Coverage, 18256, |
| 31061 | /* 87862 */ GIR_EraseRootFromParent_Done, |
| 31062 | /* 87863 */ // Label 1937: @87863 |
| 31063 | /* 87863 */ GIM_Try, /*On fail goto*//*Label 1938*/ GIMT_Encode4(87901), // Rule ID 18260 // |
| 31064 | /* 87868 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31065 | /* 87871 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse_rsqrt_ss), |
| 31066 | /* 87876 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31067 | /* 87879 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31068 | /* 87882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31069 | /* 87886 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31070 | /* 87890 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15889:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (VRSQRTSSr_Int:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src, VR128:{ *:[v4f32] }:$src) |
| 31071 | /* 87890 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VRSQRTSSr_Int), |
| 31072 | /* 87893 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31073 | /* 87895 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31074 | /* 87897 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31075 | /* 87899 */ GIR_RootConstrainSelectedInstOperands, |
| 31076 | /* 87900 */ // GIR_Coverage, 18260, |
| 31077 | /* 87900 */ GIR_EraseRootFromParent_Done, |
| 31078 | /* 87901 */ // Label 1938: @87901 |
| 31079 | /* 87901 */ GIM_Try, /*On fail goto*//*Label 1939*/ GIMT_Encode4(87939), // Rule ID 18276 // |
| 31080 | /* 87906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 31081 | /* 87909 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse_rcp_ss), |
| 31082 | /* 87914 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31083 | /* 87917 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31084 | /* 87920 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31085 | /* 87924 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31086 | /* 87928 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15887:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (RCPSSr_Int:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src, VR128:{ *:[v4f32] }:$src) |
| 31087 | /* 87928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RCPSSr_Int), |
| 31088 | /* 87931 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31089 | /* 87933 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31090 | /* 87935 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31091 | /* 87937 */ GIR_RootConstrainSelectedInstOperands, |
| 31092 | /* 87938 */ // GIR_Coverage, 18276, |
| 31093 | /* 87938 */ GIR_EraseRootFromParent_Done, |
| 31094 | /* 87939 */ // Label 1939: @87939 |
| 31095 | /* 87939 */ GIM_Try, /*On fail goto*//*Label 1940*/ GIMT_Encode4(87977), // Rule ID 18280 // |
| 31096 | /* 87944 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31097 | /* 87947 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse_rcp_ss), |
| 31098 | /* 87952 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31099 | /* 87955 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31100 | /* 87958 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31101 | /* 87962 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31102 | /* 87966 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15887:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src) => (VRCPSSr_Int:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src, VR128:{ *:[v4f32] }:$src) |
| 31103 | /* 87966 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VRCPSSr_Int), |
| 31104 | /* 87969 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31105 | /* 87971 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31106 | /* 87973 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 31107 | /* 87975 */ GIR_RootConstrainSelectedInstOperands, |
| 31108 | /* 87976 */ // GIR_Coverage, 18280, |
| 31109 | /* 87976 */ GIR_EraseRootFromParent_Done, |
| 31110 | /* 87977 */ // Label 1940: @87977 |
| 31111 | /* 87977 */ GIM_Reject, |
| 31112 | /* 87978 */ // Label 1893: @87978 |
| 31113 | /* 87978 */ GIM_Try, /*On fail goto*//*Label 1941*/ GIMT_Encode4(94185), |
| 31114 | /* 87983 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/4, |
| 31115 | /* 87986 */ GIM_Try, /*On fail goto*//*Label 1942*/ GIMT_Encode4(88058), // Rule ID 3368 // |
| 31116 | /* 87991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX), |
| 31117 | /* 87994 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aeskeygenassist), |
| 31118 | /* 87999 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31119 | /* 88002 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31120 | /* 88005 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31121 | /* 88009 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 31122 | /* 88013 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31123 | /* 88017 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31124 | /* 88020 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31125 | /* 88024 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31126 | /* 88028 */ // MIs[0] src2 |
| 31127 | /* 88028 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 31128 | /* 88031 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31129 | /* 88033 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31130 | /* 88040 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14555:{ *:[iPTR] }, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (timm:{ *:[i8] }):$src2) => (VAESKEYGENASSISTrmi:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1, (timm:{ *:[i8] }):$src2) |
| 31131 | /* 88040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESKEYGENASSISTrmi), |
| 31132 | /* 88043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31133 | /* 88045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 31134 | /* 88049 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 31135 | /* 88051 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31136 | /* 88056 */ GIR_RootConstrainSelectedInstOperands, |
| 31137 | /* 88057 */ // GIR_Coverage, 3368, |
| 31138 | /* 88057 */ GIR_EraseRootFromParent_Done, |
| 31139 | /* 88058 */ // Label 1942: @88058 |
| 31140 | /* 88058 */ GIM_Try, /*On fail goto*//*Label 1943*/ GIMT_Encode4(88134), // Rule ID 16794 // |
| 31141 | /* 88063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 31142 | /* 88066 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4128), |
| 31143 | /* 88071 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31144 | /* 88074 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31145 | /* 88077 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 31146 | /* 88080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31147 | /* 88084 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31148 | /* 88088 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31149 | /* 88092 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31150 | /* 88096 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31151 | /* 88099 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31152 | /* 88103 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31153 | /* 88107 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31154 | /* 88109 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31155 | /* 88116 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16132:{ *:[iPTR] }, VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4Z128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31156 | /* 88116 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Z128rm), |
| 31157 | /* 88119 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31158 | /* 88121 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31159 | /* 88123 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31160 | /* 88127 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31161 | /* 88132 */ GIR_RootConstrainSelectedInstOperands, |
| 31162 | /* 88133 */ // GIR_Coverage, 16794, |
| 31163 | /* 88133 */ GIR_EraseRootFromParent_Done, |
| 31164 | /* 88134 */ // Label 1943: @88134 |
| 31165 | /* 88134 */ GIM_Try, /*On fail goto*//*Label 1944*/ GIMT_Encode4(88210), // Rule ID 16796 // |
| 31166 | /* 88139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 31167 | /* 88142 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4256), |
| 31168 | /* 88147 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31169 | /* 88150 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31170 | /* 88153 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 31171 | /* 88156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31172 | /* 88160 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31173 | /* 88164 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31174 | /* 88168 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31175 | /* 88172 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31176 | /* 88175 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31177 | /* 88179 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31178 | /* 88183 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31179 | /* 88185 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31180 | /* 88192 */ // (intrinsic_wo_chain:{ *:[v8i32] } 16133:{ *:[iPTR] }, VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4Z256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31181 | /* 88192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Z256rm), |
| 31182 | /* 88195 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31183 | /* 88197 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31184 | /* 88199 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31185 | /* 88203 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31186 | /* 88208 */ GIR_RootConstrainSelectedInstOperands, |
| 31187 | /* 88209 */ // GIR_Coverage, 16796, |
| 31188 | /* 88209 */ GIR_EraseRootFromParent_Done, |
| 31189 | /* 88210 */ // Label 1944: @88210 |
| 31190 | /* 88210 */ GIM_Try, /*On fail goto*//*Label 1945*/ GIMT_Encode4(88286), // Rule ID 16800 // |
| 31191 | /* 88215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 31192 | /* 88218 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4128), |
| 31193 | /* 88223 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31194 | /* 88226 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31195 | /* 88229 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 31196 | /* 88232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31197 | /* 88236 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31198 | /* 88240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31199 | /* 88244 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31200 | /* 88248 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31201 | /* 88251 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31202 | /* 88255 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31203 | /* 88259 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31204 | /* 88261 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31205 | /* 88268 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16135:{ *:[iPTR] }, VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4Z128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31206 | /* 88268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Z128rm), |
| 31207 | /* 88271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31208 | /* 88273 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31209 | /* 88275 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31210 | /* 88279 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31211 | /* 88284 */ GIR_RootConstrainSelectedInstOperands, |
| 31212 | /* 88285 */ // GIR_Coverage, 16800, |
| 31213 | /* 88285 */ GIR_EraseRootFromParent_Done, |
| 31214 | /* 88286 */ // Label 1945: @88286 |
| 31215 | /* 88286 */ GIM_Try, /*On fail goto*//*Label 1946*/ GIMT_Encode4(88362), // Rule ID 16802 // |
| 31216 | /* 88291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 31217 | /* 88294 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4256), |
| 31218 | /* 88299 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31219 | /* 88302 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31220 | /* 88305 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 31221 | /* 88308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31222 | /* 88312 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31223 | /* 88316 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31224 | /* 88320 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31225 | /* 88324 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31226 | /* 88327 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31227 | /* 88331 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31228 | /* 88335 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31229 | /* 88337 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31230 | /* 88344 */ // (intrinsic_wo_chain:{ *:[v8i32] } 16136:{ *:[iPTR] }, VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4Z256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31231 | /* 88344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Z256rm), |
| 31232 | /* 88347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31233 | /* 88349 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31234 | /* 88351 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31235 | /* 88355 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31236 | /* 88360 */ GIR_RootConstrainSelectedInstOperands, |
| 31237 | /* 88361 */ // GIR_Coverage, 16802, |
| 31238 | /* 88361 */ GIR_EraseRootFromParent_Done, |
| 31239 | /* 88362 */ // Label 1946: @88362 |
| 31240 | /* 88362 */ GIM_Try, /*On fail goto*//*Label 1947*/ GIMT_Encode4(88438), // Rule ID 3023 // |
| 31241 | /* 88367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31242 | /* 88370 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_b_128), |
| 31243 | /* 88375 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 31244 | /* 88378 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 31245 | /* 88381 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 31246 | /* 88384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31247 | /* 88388 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31248 | /* 88392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31249 | /* 88396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31250 | /* 88400 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31251 | /* 88403 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31252 | /* 88407 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31253 | /* 88411 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31254 | /* 88413 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31255 | /* 88420 */ // (intrinsic_wo_chain:{ *:[v16i8] } 16027:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31256 | /* 88420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNBrm), |
| 31257 | /* 88423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31258 | /* 88425 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31259 | /* 88427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31260 | /* 88431 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31261 | /* 88436 */ GIR_RootConstrainSelectedInstOperands, |
| 31262 | /* 88437 */ // GIR_Coverage, 3023, |
| 31263 | /* 88437 */ GIR_EraseRootFromParent_Done, |
| 31264 | /* 88438 */ // Label 1947: @88438 |
| 31265 | /* 88438 */ GIM_Try, /*On fail goto*//*Label 1948*/ GIMT_Encode4(88514), // Rule ID 3025 // |
| 31266 | /* 88443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31267 | /* 88446 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_w_128), |
| 31268 | /* 88451 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 31269 | /* 88454 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 31270 | /* 88457 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 31271 | /* 88460 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31272 | /* 88464 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31273 | /* 88468 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31274 | /* 88472 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31275 | /* 88476 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31276 | /* 88479 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31277 | /* 88483 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31278 | /* 88487 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31279 | /* 88489 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31280 | /* 88496 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16031:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31281 | /* 88496 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNWrm), |
| 31282 | /* 88499 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31283 | /* 88501 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31284 | /* 88503 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31285 | /* 88507 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31286 | /* 88512 */ GIR_RootConstrainSelectedInstOperands, |
| 31287 | /* 88513 */ // GIR_Coverage, 3025, |
| 31288 | /* 88513 */ GIR_EraseRootFromParent_Done, |
| 31289 | /* 88514 */ // Label 1948: @88514 |
| 31290 | /* 88514 */ GIM_Try, /*On fail goto*//*Label 1949*/ GIMT_Encode4(88590), // Rule ID 3027 // |
| 31291 | /* 88519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 31292 | /* 88522 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_d_128), |
| 31293 | /* 88527 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31294 | /* 88530 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31295 | /* 88533 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 31296 | /* 88536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31297 | /* 88540 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31298 | /* 88544 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31299 | /* 88548 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31300 | /* 88552 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31301 | /* 88555 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31302 | /* 88559 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31303 | /* 88563 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31304 | /* 88565 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31305 | /* 88572 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16029:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31306 | /* 88572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNDrm), |
| 31307 | /* 88575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31308 | /* 88577 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31309 | /* 88579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31310 | /* 88583 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31311 | /* 88588 */ GIR_RootConstrainSelectedInstOperands, |
| 31312 | /* 88589 */ // GIR_Coverage, 3027, |
| 31313 | /* 88589 */ GIR_EraseRootFromParent_Done, |
| 31314 | /* 88590 */ // Label 1949: @88590 |
| 31315 | /* 88590 */ GIM_Try, /*On fail goto*//*Label 1950*/ GIMT_Encode4(88666), // Rule ID 3047 // |
| 31316 | /* 88595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 31317 | /* 88598 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_b), |
| 31318 | /* 88603 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s8, |
| 31319 | /* 88606 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 31320 | /* 88609 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 31321 | /* 88612 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31322 | /* 88616 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31323 | /* 88620 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31324 | /* 88624 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31325 | /* 88628 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31326 | /* 88631 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31327 | /* 88635 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31328 | /* 88639 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31329 | /* 88641 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31330 | /* 88648 */ // (intrinsic_wo_chain:{ *:[v32i8] } 14918:{ *:[iPTR] }, VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31331 | /* 88648 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNBYrm), |
| 31332 | /* 88651 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31333 | /* 88653 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31334 | /* 88655 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31335 | /* 88659 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31336 | /* 88664 */ GIR_RootConstrainSelectedInstOperands, |
| 31337 | /* 88665 */ // GIR_Coverage, 3047, |
| 31338 | /* 88665 */ GIR_EraseRootFromParent_Done, |
| 31339 | /* 88666 */ // Label 1950: @88666 |
| 31340 | /* 88666 */ GIM_Try, /*On fail goto*//*Label 1951*/ GIMT_Encode4(88742), // Rule ID 3049 // |
| 31341 | /* 88671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 31342 | /* 88674 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_w), |
| 31343 | /* 88679 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 31344 | /* 88682 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 31345 | /* 88685 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 31346 | /* 88688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31347 | /* 88692 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31348 | /* 88696 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31349 | /* 88700 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31350 | /* 88704 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31351 | /* 88707 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31352 | /* 88711 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31353 | /* 88715 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31354 | /* 88717 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31355 | /* 88724 */ // (intrinsic_wo_chain:{ *:[v16i16] } 14920:{ *:[iPTR] }, VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31356 | /* 88724 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNWYrm), |
| 31357 | /* 88727 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31358 | /* 88729 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31359 | /* 88731 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31360 | /* 88735 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31361 | /* 88740 */ GIR_RootConstrainSelectedInstOperands, |
| 31362 | /* 88741 */ // GIR_Coverage, 3049, |
| 31363 | /* 88741 */ GIR_EraseRootFromParent_Done, |
| 31364 | /* 88742 */ // Label 1951: @88742 |
| 31365 | /* 88742 */ GIM_Try, /*On fail goto*//*Label 1952*/ GIMT_Encode4(88818), // Rule ID 3051 // |
| 31366 | /* 88747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 31367 | /* 88750 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_d), |
| 31368 | /* 88755 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31369 | /* 88758 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31370 | /* 88761 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 31371 | /* 88764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31372 | /* 88768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31373 | /* 88772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31374 | /* 88776 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31375 | /* 88780 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31376 | /* 88783 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31377 | /* 88787 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31378 | /* 88791 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31379 | /* 88793 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31380 | /* 88800 */ // (intrinsic_wo_chain:{ *:[v8i32] } 14919:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSIGNDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31381 | /* 88800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNDYrm), |
| 31382 | /* 88803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31383 | /* 88805 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31384 | /* 88807 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31385 | /* 88811 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31386 | /* 88816 */ GIR_RootConstrainSelectedInstOperands, |
| 31387 | /* 88817 */ // GIR_Coverage, 3051, |
| 31388 | /* 88817 */ GIR_EraseRootFromParent_Done, |
| 31389 | /* 88818 */ // Label 1952: @88818 |
| 31390 | /* 88818 */ GIM_Try, /*On fail goto*//*Label 1953*/ GIMT_Encode4(88894), // Rule ID 3310 // |
| 31391 | /* 88823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 31392 | /* 88826 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_8), |
| 31393 | /* 88831 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31394 | /* 88834 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31395 | /* 88837 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 31396 | /* 88840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31397 | /* 88844 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31398 | /* 88848 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31399 | /* 88852 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31400 | /* 88856 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31401 | /* 88859 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31402 | /* 88863 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31403 | /* 88867 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31404 | /* 88869 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31405 | /* 88876 */ // (intrinsic_wo_chain:{ *:[i32] } 15985:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m8:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31406 | /* 88876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m8), |
| 31407 | /* 88879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31408 | /* 88881 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31409 | /* 88883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31410 | /* 88887 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31411 | /* 88892 */ GIR_RootConstrainSelectedInstOperands, |
| 31412 | /* 88893 */ // GIR_Coverage, 3310, |
| 31413 | /* 88893 */ GIR_EraseRootFromParent_Done, |
| 31414 | /* 88894 */ // Label 1953: @88894 |
| 31415 | /* 88894 */ GIM_Try, /*On fail goto*//*Label 1954*/ GIMT_Encode4(88970), // Rule ID 3312 // |
| 31416 | /* 88899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 31417 | /* 88902 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_16), |
| 31418 | /* 88907 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31419 | /* 88910 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31420 | /* 88913 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 31421 | /* 88916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31422 | /* 88920 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31423 | /* 88924 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31424 | /* 88928 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31425 | /* 88932 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31426 | /* 88935 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31427 | /* 88939 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31428 | /* 88943 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31429 | /* 88945 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31430 | /* 88952 */ // (intrinsic_wo_chain:{ *:[i32] } 15983:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m16:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31431 | /* 88952 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m16), |
| 31432 | /* 88955 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31433 | /* 88957 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31434 | /* 88959 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31435 | /* 88963 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31436 | /* 88968 */ GIR_RootConstrainSelectedInstOperands, |
| 31437 | /* 88969 */ // GIR_Coverage, 3312, |
| 31438 | /* 88969 */ GIR_EraseRootFromParent_Done, |
| 31439 | /* 88970 */ // Label 1954: @88970 |
| 31440 | /* 88970 */ GIM_Try, /*On fail goto*//*Label 1955*/ GIMT_Encode4(89046), // Rule ID 3314 // |
| 31441 | /* 88975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 31442 | /* 88978 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_32), |
| 31443 | /* 88983 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31444 | /* 88986 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31445 | /* 88989 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 31446 | /* 88992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31447 | /* 88996 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31448 | /* 89000 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31449 | /* 89004 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31450 | /* 89008 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31451 | /* 89011 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31452 | /* 89015 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31453 | /* 89019 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31454 | /* 89021 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31455 | /* 89028 */ // (intrinsic_wo_chain:{ *:[i32] } 15984:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m32:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31456 | /* 89028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m32), |
| 31457 | /* 89031 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31458 | /* 89033 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31459 | /* 89035 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31460 | /* 89039 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31461 | /* 89044 */ GIR_RootConstrainSelectedInstOperands, |
| 31462 | /* 89045 */ // GIR_Coverage, 3314, |
| 31463 | /* 89045 */ GIR_EraseRootFromParent_Done, |
| 31464 | /* 89046 */ // Label 1955: @89046 |
| 31465 | /* 89046 */ GIM_Try, /*On fail goto*//*Label 1956*/ GIMT_Encode4(89122), // Rule ID 3316 // |
| 31466 | /* 89051 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 31467 | /* 89054 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_64_64), |
| 31468 | /* 89059 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 31469 | /* 89062 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 31470 | /* 89065 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 31471 | /* 89068 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 31472 | /* 89072 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 31473 | /* 89076 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31474 | /* 89080 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31475 | /* 89084 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31476 | /* 89087 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31477 | /* 89091 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31478 | /* 89095 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31479 | /* 89097 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31480 | /* 89104 */ // (intrinsic_wo_chain:{ *:[i64] } 15986:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r64m64:{ *:[i64] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31481 | /* 89104 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r64m64), |
| 31482 | /* 89107 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31483 | /* 89109 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31484 | /* 89111 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31485 | /* 89115 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31486 | /* 89120 */ GIR_RootConstrainSelectedInstOperands, |
| 31487 | /* 89121 */ // GIR_Coverage, 3316, |
| 31488 | /* 89121 */ GIR_EraseRootFromParent_Done, |
| 31489 | /* 89122 */ // Label 1956: @89122 |
| 31490 | /* 89122 */ GIM_Try, /*On fail goto*//*Label 1957*/ GIMT_Encode4(89198), // Rule ID 3318 // |
| 31491 | /* 89127 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 31492 | /* 89130 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_8), |
| 31493 | /* 89135 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31494 | /* 89138 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31495 | /* 89141 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 31496 | /* 89144 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31497 | /* 89148 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31498 | /* 89152 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31499 | /* 89156 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31500 | /* 89160 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31501 | /* 89163 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31502 | /* 89167 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31503 | /* 89171 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31504 | /* 89173 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31505 | /* 89180 */ // (intrinsic_wo_chain:{ *:[i32] } 15985:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m8_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31506 | /* 89180 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m8_EVEX), |
| 31507 | /* 89183 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31508 | /* 89185 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31509 | /* 89187 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31510 | /* 89191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31511 | /* 89196 */ GIR_RootConstrainSelectedInstOperands, |
| 31512 | /* 89197 */ // GIR_Coverage, 3318, |
| 31513 | /* 89197 */ GIR_EraseRootFromParent_Done, |
| 31514 | /* 89198 */ // Label 1957: @89198 |
| 31515 | /* 89198 */ GIM_Try, /*On fail goto*//*Label 1958*/ GIMT_Encode4(89274), // Rule ID 3320 // |
| 31516 | /* 89203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 31517 | /* 89206 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_16), |
| 31518 | /* 89211 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31519 | /* 89214 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31520 | /* 89217 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 31521 | /* 89220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31522 | /* 89224 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31523 | /* 89228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31524 | /* 89232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31525 | /* 89236 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31526 | /* 89239 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31527 | /* 89243 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31528 | /* 89247 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31529 | /* 89249 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31530 | /* 89256 */ // (intrinsic_wo_chain:{ *:[i32] } 15983:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m16_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31531 | /* 89256 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m16_EVEX), |
| 31532 | /* 89259 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31533 | /* 89261 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31534 | /* 89263 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31535 | /* 89267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31536 | /* 89272 */ GIR_RootConstrainSelectedInstOperands, |
| 31537 | /* 89273 */ // GIR_Coverage, 3320, |
| 31538 | /* 89273 */ GIR_EraseRootFromParent_Done, |
| 31539 | /* 89274 */ // Label 1958: @89274 |
| 31540 | /* 89274 */ GIM_Try, /*On fail goto*//*Label 1959*/ GIMT_Encode4(89350), // Rule ID 3322 // |
| 31541 | /* 89279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 31542 | /* 89282 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_32), |
| 31543 | /* 89287 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 31544 | /* 89290 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 31545 | /* 89293 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 31546 | /* 89296 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31547 | /* 89300 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 31548 | /* 89304 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31549 | /* 89308 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31550 | /* 89312 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31551 | /* 89315 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31552 | /* 89319 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31553 | /* 89323 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31554 | /* 89325 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31555 | /* 89332 */ // (intrinsic_wo_chain:{ *:[i32] } 15984:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r32m32_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31556 | /* 89332 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32m32_EVEX), |
| 31557 | /* 89335 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31558 | /* 89337 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31559 | /* 89339 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31560 | /* 89343 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31561 | /* 89348 */ GIR_RootConstrainSelectedInstOperands, |
| 31562 | /* 89349 */ // GIR_Coverage, 3322, |
| 31563 | /* 89349 */ GIR_EraseRootFromParent_Done, |
| 31564 | /* 89350 */ // Label 1959: @89350 |
| 31565 | /* 89350 */ GIM_Try, /*On fail goto*//*Label 1960*/ GIMT_Encode4(89426), // Rule ID 3324 // |
| 31566 | /* 89355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 31567 | /* 89358 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_64_64), |
| 31568 | /* 89363 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 31569 | /* 89366 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 31570 | /* 89369 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 31571 | /* 89372 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 31572 | /* 89376 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 31573 | /* 89380 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31574 | /* 89384 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31575 | /* 89388 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31576 | /* 89391 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31577 | /* 89395 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31578 | /* 89399 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31579 | /* 89401 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31580 | /* 89408 */ // (intrinsic_wo_chain:{ *:[i64] } 15986:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CRC32r64m64_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31581 | /* 89408 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r64m64_EVEX), |
| 31582 | /* 89411 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31583 | /* 89413 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31584 | /* 89415 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31585 | /* 89419 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31586 | /* 89424 */ GIR_RootConstrainSelectedInstOperands, |
| 31587 | /* 89425 */ // GIR_Coverage, 3324, |
| 31588 | /* 89425 */ GIR_EraseRootFromParent_Done, |
| 31589 | /* 89426 */ // Label 1960: @89426 |
| 31590 | /* 89426 */ GIM_Try, /*On fail goto*//*Label 1961*/ GIMT_Encode4(89502), // Rule ID 3340 // |
| 31591 | /* 89431 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 31592 | /* 89434 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 31593 | /* 89439 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31594 | /* 89442 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31595 | /* 89445 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 31596 | /* 89448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31597 | /* 89452 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31598 | /* 89456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31599 | /* 89460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31600 | /* 89464 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31601 | /* 89467 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31602 | /* 89471 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31603 | /* 89475 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31604 | /* 89477 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31605 | /* 89484 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14548:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31606 | /* 89484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCrm), |
| 31607 | /* 89487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31608 | /* 89489 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31609 | /* 89491 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31610 | /* 89495 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31611 | /* 89500 */ GIR_RootConstrainSelectedInstOperands, |
| 31612 | /* 89501 */ // GIR_Coverage, 3340, |
| 31613 | /* 89501 */ GIR_EraseRootFromParent_Done, |
| 31614 | /* 89502 */ // Label 1961: @89502 |
| 31615 | /* 89502 */ GIM_Try, /*On fail goto*//*Label 1962*/ GIMT_Encode4(89578), // Rule ID 3342 // |
| 31616 | /* 89507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 31617 | /* 89510 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 31618 | /* 89515 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31619 | /* 89518 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31620 | /* 89521 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 31621 | /* 89524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31622 | /* 89528 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31623 | /* 89532 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31624 | /* 89536 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31625 | /* 89540 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31626 | /* 89543 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31627 | /* 89547 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31628 | /* 89551 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31629 | /* 89553 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31630 | /* 89560 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14551:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31631 | /* 89560 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTrm), |
| 31632 | /* 89563 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31633 | /* 89565 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31634 | /* 89567 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31635 | /* 89571 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31636 | /* 89576 */ GIR_RootConstrainSelectedInstOperands, |
| 31637 | /* 89577 */ // GIR_Coverage, 3342, |
| 31638 | /* 89577 */ GIR_EraseRootFromParent_Done, |
| 31639 | /* 89578 */ // Label 1962: @89578 |
| 31640 | /* 89578 */ GIM_Try, /*On fail goto*//*Label 1963*/ GIMT_Encode4(89654), // Rule ID 3344 // |
| 31641 | /* 89583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 31642 | /* 89586 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 31643 | /* 89591 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31644 | /* 89594 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31645 | /* 89597 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 31646 | /* 89600 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31647 | /* 89604 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31648 | /* 89608 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31649 | /* 89612 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31650 | /* 89616 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31651 | /* 89619 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31652 | /* 89623 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31653 | /* 89627 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31654 | /* 89629 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31655 | /* 89636 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14542:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31656 | /* 89636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECrm), |
| 31657 | /* 89639 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31658 | /* 89641 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31659 | /* 89643 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31660 | /* 89647 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31661 | /* 89652 */ GIR_RootConstrainSelectedInstOperands, |
| 31662 | /* 89653 */ // GIR_Coverage, 3344, |
| 31663 | /* 89653 */ GIR_EraseRootFromParent_Done, |
| 31664 | /* 89654 */ // Label 1963: @89654 |
| 31665 | /* 89654 */ GIM_Try, /*On fail goto*//*Label 1964*/ GIMT_Encode4(89730), // Rule ID 3346 // |
| 31666 | /* 89659 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 31667 | /* 89662 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 31668 | /* 89667 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31669 | /* 89670 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31670 | /* 89673 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 31671 | /* 89676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31672 | /* 89680 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31673 | /* 89684 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31674 | /* 89688 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31675 | /* 89692 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31676 | /* 89695 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31677 | /* 89699 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31678 | /* 89703 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31679 | /* 89705 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31680 | /* 89712 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14545:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31681 | /* 89712 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTrm), |
| 31682 | /* 89715 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31683 | /* 89717 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31684 | /* 89719 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31685 | /* 89723 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31686 | /* 89728 */ GIR_RootConstrainSelectedInstOperands, |
| 31687 | /* 89729 */ // GIR_Coverage, 3346, |
| 31688 | /* 89729 */ GIR_EraseRootFromParent_Done, |
| 31689 | /* 89730 */ // Label 1964: @89730 |
| 31690 | /* 89730 */ GIM_Try, /*On fail goto*//*Label 1965*/ GIMT_Encode4(89806), // Rule ID 3348 // |
| 31691 | /* 89735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 31692 | /* 89738 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_256), |
| 31693 | /* 89743 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 31694 | /* 89746 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 31695 | /* 89749 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 31696 | /* 89752 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31697 | /* 89756 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31698 | /* 89760 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31699 | /* 89764 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31700 | /* 89768 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31701 | /* 89771 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31702 | /* 89775 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31703 | /* 89779 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31704 | /* 89781 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31705 | /* 89788 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14549:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31706 | /* 89788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCYrm), |
| 31707 | /* 89791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31708 | /* 89793 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31709 | /* 89795 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31710 | /* 89799 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31711 | /* 89804 */ GIR_RootConstrainSelectedInstOperands, |
| 31712 | /* 89805 */ // GIR_Coverage, 3348, |
| 31713 | /* 89805 */ GIR_EraseRootFromParent_Done, |
| 31714 | /* 89806 */ // Label 1965: @89806 |
| 31715 | /* 89806 */ GIM_Try, /*On fail goto*//*Label 1966*/ GIMT_Encode4(89882), // Rule ID 3350 // |
| 31716 | /* 89811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 31717 | /* 89814 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_256), |
| 31718 | /* 89819 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 31719 | /* 89822 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 31720 | /* 89825 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 31721 | /* 89828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31722 | /* 89832 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31723 | /* 89836 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31724 | /* 89840 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31725 | /* 89844 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31726 | /* 89847 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31727 | /* 89851 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31728 | /* 89855 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31729 | /* 89857 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31730 | /* 89864 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14552:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31731 | /* 89864 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTYrm), |
| 31732 | /* 89867 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31733 | /* 89869 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31734 | /* 89871 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31735 | /* 89875 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31736 | /* 89880 */ GIR_RootConstrainSelectedInstOperands, |
| 31737 | /* 89881 */ // GIR_Coverage, 3350, |
| 31738 | /* 89881 */ GIR_EraseRootFromParent_Done, |
| 31739 | /* 89882 */ // Label 1966: @89882 |
| 31740 | /* 89882 */ GIM_Try, /*On fail goto*//*Label 1967*/ GIMT_Encode4(89958), // Rule ID 3352 // |
| 31741 | /* 89887 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 31742 | /* 89890 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_256), |
| 31743 | /* 89895 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 31744 | /* 89898 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 31745 | /* 89901 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 31746 | /* 89904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31747 | /* 89908 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31748 | /* 89912 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31749 | /* 89916 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31750 | /* 89920 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31751 | /* 89923 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31752 | /* 89927 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31753 | /* 89931 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31754 | /* 89933 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31755 | /* 89940 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14543:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31756 | /* 89940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECYrm), |
| 31757 | /* 89943 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31758 | /* 89945 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31759 | /* 89947 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31760 | /* 89951 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31761 | /* 89956 */ GIR_RootConstrainSelectedInstOperands, |
| 31762 | /* 89957 */ // GIR_Coverage, 3352, |
| 31763 | /* 89957 */ GIR_EraseRootFromParent_Done, |
| 31764 | /* 89958 */ // Label 1967: @89958 |
| 31765 | /* 89958 */ GIM_Try, /*On fail goto*//*Label 1968*/ GIMT_Encode4(90034), // Rule ID 3354 // |
| 31766 | /* 89963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 31767 | /* 89966 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_256), |
| 31768 | /* 89971 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 31769 | /* 89974 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 31770 | /* 89977 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 31771 | /* 89980 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31772 | /* 89984 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31773 | /* 89988 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31774 | /* 89992 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31775 | /* 89996 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31776 | /* 89999 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31777 | /* 90003 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31778 | /* 90007 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31779 | /* 90009 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31780 | /* 90016 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14546:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31781 | /* 90016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTYrm), |
| 31782 | /* 90019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31783 | /* 90021 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31784 | /* 90023 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31785 | /* 90027 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31786 | /* 90032 */ GIR_RootConstrainSelectedInstOperands, |
| 31787 | /* 90033 */ // GIR_Coverage, 3354, |
| 31788 | /* 90033 */ GIR_EraseRootFromParent_Done, |
| 31789 | /* 90034 */ // Label 1968: @90034 |
| 31790 | /* 90034 */ GIM_Try, /*On fail goto*//*Label 1969*/ GIMT_Encode4(90110), // Rule ID 3565 // |
| 31791 | /* 90039 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 31792 | /* 90042 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4128), |
| 31793 | /* 90047 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31794 | /* 90050 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31795 | /* 90053 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 31796 | /* 90056 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31797 | /* 90060 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31798 | /* 90064 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31799 | /* 90068 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31800 | /* 90072 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31801 | /* 90075 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31802 | /* 90079 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31803 | /* 90083 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31804 | /* 90085 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31805 | /* 90092 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16132:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4rm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31806 | /* 90092 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4rm), |
| 31807 | /* 90095 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31808 | /* 90097 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31809 | /* 90099 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31810 | /* 90103 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31811 | /* 90108 */ GIR_RootConstrainSelectedInstOperands, |
| 31812 | /* 90109 */ // GIR_Coverage, 3565, |
| 31813 | /* 90109 */ GIR_EraseRootFromParent_Done, |
| 31814 | /* 90110 */ // Label 1969: @90110 |
| 31815 | /* 90110 */ GIM_Try, /*On fail goto*//*Label 1970*/ GIMT_Encode4(90186), // Rule ID 3567 // |
| 31816 | /* 90115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 31817 | /* 90118 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4256), |
| 31818 | /* 90123 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31819 | /* 90126 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31820 | /* 90129 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 31821 | /* 90132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31822 | /* 90136 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31823 | /* 90140 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31824 | /* 90144 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31825 | /* 90148 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31826 | /* 90151 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31827 | /* 90155 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31828 | /* 90159 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31829 | /* 90161 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31830 | /* 90168 */ // (intrinsic_wo_chain:{ *:[v8i32] } 16133:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4Yrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31831 | /* 90168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Yrm), |
| 31832 | /* 90171 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31833 | /* 90173 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31834 | /* 90175 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31835 | /* 90179 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31836 | /* 90184 */ GIR_RootConstrainSelectedInstOperands, |
| 31837 | /* 90185 */ // GIR_Coverage, 3567, |
| 31838 | /* 90185 */ GIR_EraseRootFromParent_Done, |
| 31839 | /* 90186 */ // Label 1970: @90186 |
| 31840 | /* 90186 */ GIM_Try, /*On fail goto*//*Label 1971*/ GIMT_Encode4(90262), // Rule ID 3569 // |
| 31841 | /* 90191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 31842 | /* 90194 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4128), |
| 31843 | /* 90199 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 31844 | /* 90202 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 31845 | /* 90205 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 31846 | /* 90208 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31847 | /* 90212 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 31848 | /* 90216 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31849 | /* 90220 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31850 | /* 90224 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31851 | /* 90227 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31852 | /* 90231 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31853 | /* 90235 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31854 | /* 90237 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31855 | /* 90244 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16135:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4rm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31856 | /* 90244 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4rm), |
| 31857 | /* 90247 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31858 | /* 90249 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31859 | /* 90251 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31860 | /* 90255 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31861 | /* 90260 */ GIR_RootConstrainSelectedInstOperands, |
| 31862 | /* 90261 */ // GIR_Coverage, 3569, |
| 31863 | /* 90261 */ GIR_EraseRootFromParent_Done, |
| 31864 | /* 90262 */ // Label 1971: @90262 |
| 31865 | /* 90262 */ GIM_Try, /*On fail goto*//*Label 1972*/ GIMT_Encode4(90338), // Rule ID 3571 // |
| 31866 | /* 90267 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 31867 | /* 90270 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4256), |
| 31868 | /* 90275 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 31869 | /* 90278 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 31870 | /* 90281 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 31871 | /* 90284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31872 | /* 90288 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 31873 | /* 90292 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31874 | /* 90296 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31875 | /* 90300 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31876 | /* 90303 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31877 | /* 90307 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31878 | /* 90311 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31879 | /* 90313 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31880 | /* 90320 */ // (intrinsic_wo_chain:{ *:[v8i32] } 16136:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4Yrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31881 | /* 90320 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Yrm), |
| 31882 | /* 90323 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31883 | /* 90325 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31884 | /* 90327 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31885 | /* 90331 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31886 | /* 90336 */ GIR_RootConstrainSelectedInstOperands, |
| 31887 | /* 90337 */ // GIR_Coverage, 3571, |
| 31888 | /* 90337 */ GIR_EraseRootFromParent_Done, |
| 31889 | /* 90338 */ // Label 1972: @90338 |
| 31890 | /* 90338 */ GIM_Try, /*On fail goto*//*Label 1973*/ GIMT_Encode4(90414), // Rule ID 14065 // |
| 31891 | /* 90343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 31892 | /* 90346 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 31893 | /* 90351 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31894 | /* 90354 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31895 | /* 90357 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 31896 | /* 90360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31897 | /* 90364 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31898 | /* 90368 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31899 | /* 90372 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31900 | /* 90376 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31901 | /* 90379 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31902 | /* 90383 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31903 | /* 90387 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31904 | /* 90389 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31905 | /* 90396 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14548:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31906 | /* 90396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZ128rm), |
| 31907 | /* 90399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31908 | /* 90401 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31909 | /* 90403 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31910 | /* 90407 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31911 | /* 90412 */ GIR_RootConstrainSelectedInstOperands, |
| 31912 | /* 90413 */ // GIR_Coverage, 14065, |
| 31913 | /* 90413 */ GIR_EraseRootFromParent_Done, |
| 31914 | /* 90414 */ // Label 1973: @90414 |
| 31915 | /* 90414 */ GIM_Try, /*On fail goto*//*Label 1974*/ GIMT_Encode4(90490), // Rule ID 14067 // |
| 31916 | /* 90419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 31917 | /* 90422 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_256), |
| 31918 | /* 90427 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 31919 | /* 90430 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 31920 | /* 90433 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 31921 | /* 90436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31922 | /* 90440 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31923 | /* 90444 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31924 | /* 90448 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31925 | /* 90452 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31926 | /* 90455 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31927 | /* 90459 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31928 | /* 90463 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31929 | /* 90465 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31930 | /* 90472 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14549:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31931 | /* 90472 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZ256rm), |
| 31932 | /* 90475 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31933 | /* 90477 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31934 | /* 90479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31935 | /* 90483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31936 | /* 90488 */ GIR_RootConstrainSelectedInstOperands, |
| 31937 | /* 90489 */ // GIR_Coverage, 14067, |
| 31938 | /* 90489 */ GIR_EraseRootFromParent_Done, |
| 31939 | /* 90490 */ // Label 1974: @90490 |
| 31940 | /* 90490 */ GIM_Try, /*On fail goto*//*Label 1975*/ GIMT_Encode4(90566), // Rule ID 14069 // |
| 31941 | /* 90495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 31942 | /* 90498 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_512), |
| 31943 | /* 90503 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 31944 | /* 90506 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 31945 | /* 90509 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 31946 | /* 90512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 31947 | /* 90516 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 31948 | /* 90520 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31949 | /* 90524 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31950 | /* 90528 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31951 | /* 90531 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31952 | /* 90535 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31953 | /* 90539 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31954 | /* 90541 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31955 | /* 90548 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14550:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31956 | /* 90548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZrm), |
| 31957 | /* 90551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31958 | /* 90553 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31959 | /* 90555 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31960 | /* 90559 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31961 | /* 90564 */ GIR_RootConstrainSelectedInstOperands, |
| 31962 | /* 90565 */ // GIR_Coverage, 14069, |
| 31963 | /* 90565 */ GIR_EraseRootFromParent_Done, |
| 31964 | /* 90566 */ // Label 1975: @90566 |
| 31965 | /* 90566 */ GIM_Try, /*On fail goto*//*Label 1976*/ GIMT_Encode4(90642), // Rule ID 14071 // |
| 31966 | /* 90571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 31967 | /* 90574 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 31968 | /* 90579 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 31969 | /* 90582 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 31970 | /* 90585 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 31971 | /* 90588 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31972 | /* 90592 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 31973 | /* 90596 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31974 | /* 90600 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 31975 | /* 90604 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 31976 | /* 90607 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 31977 | /* 90611 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 31978 | /* 90615 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 31979 | /* 90617 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 31980 | /* 90624 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14551:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 31981 | /* 90624 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZ128rm), |
| 31982 | /* 90627 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 31983 | /* 90629 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 31984 | /* 90631 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 31985 | /* 90635 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 31986 | /* 90640 */ GIR_RootConstrainSelectedInstOperands, |
| 31987 | /* 90641 */ // GIR_Coverage, 14071, |
| 31988 | /* 90641 */ GIR_EraseRootFromParent_Done, |
| 31989 | /* 90642 */ // Label 1976: @90642 |
| 31990 | /* 90642 */ GIM_Try, /*On fail goto*//*Label 1977*/ GIMT_Encode4(90718), // Rule ID 14073 // |
| 31991 | /* 90647 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 31992 | /* 90650 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_256), |
| 31993 | /* 90655 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 31994 | /* 90658 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 31995 | /* 90661 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 31996 | /* 90664 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31997 | /* 90668 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 31998 | /* 90672 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 31999 | /* 90676 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32000 | /* 90680 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32001 | /* 90683 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32002 | /* 90687 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32003 | /* 90691 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32004 | /* 90693 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32005 | /* 90700 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14552:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32006 | /* 90700 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZ256rm), |
| 32007 | /* 90703 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32008 | /* 90705 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32009 | /* 90707 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32010 | /* 90711 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32011 | /* 90716 */ GIR_RootConstrainSelectedInstOperands, |
| 32012 | /* 90717 */ // GIR_Coverage, 14073, |
| 32013 | /* 90717 */ GIR_EraseRootFromParent_Done, |
| 32014 | /* 90718 */ // Label 1977: @90718 |
| 32015 | /* 90718 */ GIM_Try, /*On fail goto*//*Label 1978*/ GIMT_Encode4(90794), // Rule ID 14075 // |
| 32016 | /* 90723 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 32017 | /* 90726 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_512), |
| 32018 | /* 90731 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 32019 | /* 90734 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 32020 | /* 90737 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 32021 | /* 90740 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32022 | /* 90744 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32023 | /* 90748 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32024 | /* 90752 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32025 | /* 90756 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32026 | /* 90759 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32027 | /* 90763 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32028 | /* 90767 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32029 | /* 90769 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32030 | /* 90776 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14553:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESENCLASTZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32031 | /* 90776 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZrm), |
| 32032 | /* 90779 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32033 | /* 90781 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32034 | /* 90783 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32035 | /* 90787 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32036 | /* 90792 */ GIR_RootConstrainSelectedInstOperands, |
| 32037 | /* 90793 */ // GIR_Coverage, 14075, |
| 32038 | /* 90793 */ GIR_EraseRootFromParent_Done, |
| 32039 | /* 90794 */ // Label 1978: @90794 |
| 32040 | /* 90794 */ GIM_Try, /*On fail goto*//*Label 1979*/ GIMT_Encode4(90870), // Rule ID 14077 // |
| 32041 | /* 90799 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32042 | /* 90802 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 32043 | /* 90807 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32044 | /* 90810 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32045 | /* 90813 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32046 | /* 90816 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32047 | /* 90820 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32048 | /* 90824 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32049 | /* 90828 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32050 | /* 90832 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32051 | /* 90835 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32052 | /* 90839 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32053 | /* 90843 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32054 | /* 90845 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32055 | /* 90852 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14542:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32056 | /* 90852 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZ128rm), |
| 32057 | /* 90855 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32058 | /* 90857 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32059 | /* 90859 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32060 | /* 90863 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32061 | /* 90868 */ GIR_RootConstrainSelectedInstOperands, |
| 32062 | /* 90869 */ // GIR_Coverage, 14077, |
| 32063 | /* 90869 */ GIR_EraseRootFromParent_Done, |
| 32064 | /* 90870 */ // Label 1979: @90870 |
| 32065 | /* 90870 */ GIM_Try, /*On fail goto*//*Label 1980*/ GIMT_Encode4(90946), // Rule ID 14079 // |
| 32066 | /* 90875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32067 | /* 90878 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_256), |
| 32068 | /* 90883 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32069 | /* 90886 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32070 | /* 90889 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32071 | /* 90892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32072 | /* 90896 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32073 | /* 90900 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32074 | /* 90904 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32075 | /* 90908 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32076 | /* 90911 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32077 | /* 90915 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32078 | /* 90919 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32079 | /* 90921 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32080 | /* 90928 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14543:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32081 | /* 90928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZ256rm), |
| 32082 | /* 90931 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32083 | /* 90933 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32084 | /* 90935 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32085 | /* 90939 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32086 | /* 90944 */ GIR_RootConstrainSelectedInstOperands, |
| 32087 | /* 90945 */ // GIR_Coverage, 14079, |
| 32088 | /* 90945 */ GIR_EraseRootFromParent_Done, |
| 32089 | /* 90946 */ // Label 1980: @90946 |
| 32090 | /* 90946 */ GIM_Try, /*On fail goto*//*Label 1981*/ GIMT_Encode4(91022), // Rule ID 14081 // |
| 32091 | /* 90951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 32092 | /* 90954 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_512), |
| 32093 | /* 90959 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 32094 | /* 90962 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 32095 | /* 90965 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 32096 | /* 90968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32097 | /* 90972 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32098 | /* 90976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32099 | /* 90980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32100 | /* 90984 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32101 | /* 90987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32102 | /* 90991 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32103 | /* 90995 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32104 | /* 90997 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32105 | /* 91004 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14544:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32106 | /* 91004 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZrm), |
| 32107 | /* 91007 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32108 | /* 91009 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32109 | /* 91011 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32110 | /* 91015 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32111 | /* 91020 */ GIR_RootConstrainSelectedInstOperands, |
| 32112 | /* 91021 */ // GIR_Coverage, 14081, |
| 32113 | /* 91021 */ GIR_EraseRootFromParent_Done, |
| 32114 | /* 91022 */ // Label 1981: @91022 |
| 32115 | /* 91022 */ GIM_Try, /*On fail goto*//*Label 1982*/ GIMT_Encode4(91098), // Rule ID 14083 // |
| 32116 | /* 91027 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32117 | /* 91030 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 32118 | /* 91035 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32119 | /* 91038 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32120 | /* 91041 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32121 | /* 91044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32122 | /* 91048 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32123 | /* 91052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32124 | /* 91056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32125 | /* 91060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32126 | /* 91063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32127 | /* 91067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32128 | /* 91071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32129 | /* 91073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32130 | /* 91080 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14545:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32131 | /* 91080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZ128rm), |
| 32132 | /* 91083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32133 | /* 91085 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32134 | /* 91087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32135 | /* 91091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32136 | /* 91096 */ GIR_RootConstrainSelectedInstOperands, |
| 32137 | /* 91097 */ // GIR_Coverage, 14083, |
| 32138 | /* 91097 */ GIR_EraseRootFromParent_Done, |
| 32139 | /* 91098 */ // Label 1982: @91098 |
| 32140 | /* 91098 */ GIM_Try, /*On fail goto*//*Label 1983*/ GIMT_Encode4(91174), // Rule ID 14085 // |
| 32141 | /* 91103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 32142 | /* 91106 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_256), |
| 32143 | /* 91111 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32144 | /* 91114 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32145 | /* 91117 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32146 | /* 91120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32147 | /* 91124 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32148 | /* 91128 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32149 | /* 91132 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32150 | /* 91136 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32151 | /* 91139 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32152 | /* 91143 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32153 | /* 91147 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32154 | /* 91149 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32155 | /* 91156 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14546:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32156 | /* 91156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZ256rm), |
| 32157 | /* 91159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32158 | /* 91161 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32159 | /* 91163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32160 | /* 91167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32161 | /* 91172 */ GIR_RootConstrainSelectedInstOperands, |
| 32162 | /* 91173 */ // GIR_Coverage, 14085, |
| 32163 | /* 91173 */ GIR_EraseRootFromParent_Done, |
| 32164 | /* 91174 */ // Label 1983: @91174 |
| 32165 | /* 91174 */ GIM_Try, /*On fail goto*//*Label 1984*/ GIMT_Encode4(91250), // Rule ID 14087 // |
| 32166 | /* 91179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 32167 | /* 91182 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_512), |
| 32168 | /* 91187 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 32169 | /* 91190 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 32170 | /* 91193 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 32171 | /* 91196 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32172 | /* 91200 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32173 | /* 91204 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32174 | /* 91208 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32175 | /* 91212 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32176 | /* 91215 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32177 | /* 91219 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32178 | /* 91223 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32179 | /* 91225 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32180 | /* 91232 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14547:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VAESDECLASTZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32181 | /* 91232 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZrm), |
| 32182 | /* 91235 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32183 | /* 91237 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32184 | /* 91239 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32185 | /* 91243 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32186 | /* 91248 */ GIR_RootConstrainSelectedInstOperands, |
| 32187 | /* 91249 */ // GIR_Coverage, 14087, |
| 32188 | /* 91249 */ GIR_EraseRootFromParent_Done, |
| 32189 | /* 91250 */ // Label 1984: @91250 |
| 32190 | /* 91250 */ GIM_Try, /*On fail goto*//*Label 1985*/ GIMT_Encode4(91326), // Rule ID 16798 // |
| 32191 | /* 91255 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32192 | /* 91258 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4512), |
| 32193 | /* 91263 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 32194 | /* 91266 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 32195 | /* 91269 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 32196 | /* 91272 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32197 | /* 91276 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32198 | /* 91280 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32199 | /* 91284 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32200 | /* 91288 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32201 | /* 91291 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32202 | /* 91295 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32203 | /* 91299 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32204 | /* 91301 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32205 | /* 91308 */ // (intrinsic_wo_chain:{ *:[v16i32] } 16134:{ *:[iPTR] }, VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4KEY4Zrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32206 | /* 91308 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Zrm), |
| 32207 | /* 91311 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32208 | /* 91313 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32209 | /* 91315 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32210 | /* 91319 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32211 | /* 91324 */ GIR_RootConstrainSelectedInstOperands, |
| 32212 | /* 91325 */ // GIR_Coverage, 16798, |
| 32213 | /* 91325 */ GIR_EraseRootFromParent_Done, |
| 32214 | /* 91326 */ // Label 1985: @91326 |
| 32215 | /* 91326 */ GIM_Try, /*On fail goto*//*Label 1986*/ GIMT_Encode4(91402), // Rule ID 16804 // |
| 32216 | /* 91331 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32217 | /* 91334 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4512), |
| 32218 | /* 91339 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 32219 | /* 91342 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 32220 | /* 91345 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 32221 | /* 91348 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32222 | /* 91352 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 32223 | /* 91356 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 32224 | /* 91360 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 32225 | /* 91364 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 32226 | /* 91367 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 32227 | /* 91371 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 32228 | /* 91375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 32229 | /* 91377 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 32230 | /* 91384 */ // (intrinsic_wo_chain:{ *:[v16i32] } 16137:{ *:[iPTR] }, VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSM4RNDS4Zrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 32231 | /* 91384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Zrm), |
| 32232 | /* 91387 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32233 | /* 91389 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32234 | /* 91391 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 32235 | /* 91395 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 32236 | /* 91400 */ GIR_RootConstrainSelectedInstOperands, |
| 32237 | /* 91401 */ // GIR_Coverage, 16804, |
| 32238 | /* 91401 */ GIR_EraseRootFromParent_Done, |
| 32239 | /* 91402 */ // Label 1986: @91402 |
| 32240 | /* 91402 */ GIM_Try, /*On fail goto*//*Label 1987*/ GIMT_Encode4(91443), // Rule ID 3367 // |
| 32241 | /* 91407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX), |
| 32242 | /* 91410 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aeskeygenassist), |
| 32243 | /* 91415 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32244 | /* 91418 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32245 | /* 91421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32246 | /* 91425 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32247 | /* 91429 */ // MIs[0] src2 |
| 32248 | /* 91429 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 32249 | /* 91432 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14555:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (timm:{ *:[i8] }):$src2) => (VAESKEYGENASSISTrri:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (timm:{ *:[i8] }):$src2) |
| 32250 | /* 91432 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESKEYGENASSISTrri), |
| 32251 | /* 91435 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32252 | /* 91437 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32253 | /* 91439 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32254 | /* 91441 */ GIR_RootConstrainSelectedInstOperands, |
| 32255 | /* 91442 */ // GIR_Coverage, 3367, |
| 32256 | /* 91442 */ GIR_EraseRootFromParent_Done, |
| 32257 | /* 91443 */ // Label 1987: @91443 |
| 32258 | /* 91443 */ GIM_Try, /*On fail goto*//*Label 1988*/ GIMT_Encode4(91484), // Rule ID 3369 // |
| 32259 | /* 91448 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 32260 | /* 91451 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aeskeygenassist), |
| 32261 | /* 91456 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32262 | /* 91459 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32263 | /* 91462 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32264 | /* 91466 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32265 | /* 91470 */ // MIs[0] src2 |
| 32266 | /* 91470 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 32267 | /* 91473 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14555:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, (timm:{ *:[i8] }):$src2) => (AESKEYGENASSISTrri:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (timm:{ *:[i8] }):$src2) |
| 32268 | /* 91473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESKEYGENASSISTrri), |
| 32269 | /* 91476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32270 | /* 91478 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32271 | /* 91480 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32272 | /* 91482 */ GIR_RootConstrainSelectedInstOperands, |
| 32273 | /* 91483 */ // GIR_Coverage, 3369, |
| 32274 | /* 91483 */ GIR_EraseRootFromParent_Done, |
| 32275 | /* 91484 */ // Label 1988: @91484 |
| 32276 | /* 91484 */ GIM_Try, /*On fail goto*//*Label 1989*/ GIMT_Encode4(91529), // Rule ID 16793 // |
| 32277 | /* 91489 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32278 | /* 91492 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4128), |
| 32279 | /* 91497 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32280 | /* 91500 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32281 | /* 91503 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32282 | /* 91506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32283 | /* 91510 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32284 | /* 91514 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32285 | /* 91518 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16132:{ *:[iPTR] }, VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VSM4KEY4Z128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 32286 | /* 91518 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Z128rr), |
| 32287 | /* 91521 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32288 | /* 91523 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32289 | /* 91525 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32290 | /* 91527 */ GIR_RootConstrainSelectedInstOperands, |
| 32291 | /* 91528 */ // GIR_Coverage, 16793, |
| 32292 | /* 91528 */ GIR_EraseRootFromParent_Done, |
| 32293 | /* 91529 */ // Label 1989: @91529 |
| 32294 | /* 91529 */ GIM_Try, /*On fail goto*//*Label 1990*/ GIMT_Encode4(91574), // Rule ID 16795 // |
| 32295 | /* 91534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32296 | /* 91537 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4256), |
| 32297 | /* 91542 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 32298 | /* 91545 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 32299 | /* 91548 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 32300 | /* 91551 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32301 | /* 91555 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32302 | /* 91559 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32303 | /* 91563 */ // (intrinsic_wo_chain:{ *:[v8i32] } 16133:{ *:[iPTR] }, VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VSM4KEY4Z256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 32304 | /* 91563 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Z256rr), |
| 32305 | /* 91566 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32306 | /* 91568 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32307 | /* 91570 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32308 | /* 91572 */ GIR_RootConstrainSelectedInstOperands, |
| 32309 | /* 91573 */ // GIR_Coverage, 16795, |
| 32310 | /* 91573 */ GIR_EraseRootFromParent_Done, |
| 32311 | /* 91574 */ // Label 1990: @91574 |
| 32312 | /* 91574 */ GIM_Try, /*On fail goto*//*Label 1991*/ GIMT_Encode4(91619), // Rule ID 16799 // |
| 32313 | /* 91579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32314 | /* 91582 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4128), |
| 32315 | /* 91587 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32316 | /* 91590 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32317 | /* 91593 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32318 | /* 91596 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32319 | /* 91600 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32320 | /* 91604 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 32321 | /* 91608 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16135:{ *:[iPTR] }, VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VSM4RNDS4Z128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 32322 | /* 91608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Z128rr), |
| 32323 | /* 91611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32324 | /* 91613 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32325 | /* 91615 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32326 | /* 91617 */ GIR_RootConstrainSelectedInstOperands, |
| 32327 | /* 91618 */ // GIR_Coverage, 16799, |
| 32328 | /* 91618 */ GIR_EraseRootFromParent_Done, |
| 32329 | /* 91619 */ // Label 1991: @91619 |
| 32330 | /* 91619 */ GIM_Try, /*On fail goto*//*Label 1992*/ GIMT_Encode4(91664), // Rule ID 16801 // |
| 32331 | /* 91624 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 32332 | /* 91627 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4256), |
| 32333 | /* 91632 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 32334 | /* 91635 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 32335 | /* 91638 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 32336 | /* 91641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32337 | /* 91645 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32338 | /* 91649 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 32339 | /* 91653 */ // (intrinsic_wo_chain:{ *:[v8i32] } 16136:{ *:[iPTR] }, VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VSM4RNDS4Z256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 32340 | /* 91653 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Z256rr), |
| 32341 | /* 91656 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32342 | /* 91658 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32343 | /* 91660 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32344 | /* 91662 */ GIR_RootConstrainSelectedInstOperands, |
| 32345 | /* 91663 */ // GIR_Coverage, 16801, |
| 32346 | /* 91663 */ GIR_EraseRootFromParent_Done, |
| 32347 | /* 91664 */ // Label 1992: @91664 |
| 32348 | /* 91664 */ GIM_Try, /*On fail goto*//*Label 1993*/ GIMT_Encode4(91709), // Rule ID 3022 // |
| 32349 | /* 91669 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 32350 | /* 91672 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_b_128), |
| 32351 | /* 91677 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 32352 | /* 91680 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 32353 | /* 91683 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 32354 | /* 91686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32355 | /* 91690 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32356 | /* 91694 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32357 | /* 91698 */ // (intrinsic_wo_chain:{ *:[v16i8] } 16027:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPSIGNBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 32358 | /* 91698 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNBrr), |
| 32359 | /* 91701 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32360 | /* 91703 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32361 | /* 91705 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32362 | /* 91707 */ GIR_RootConstrainSelectedInstOperands, |
| 32363 | /* 91708 */ // GIR_Coverage, 3022, |
| 32364 | /* 91708 */ GIR_EraseRootFromParent_Done, |
| 32365 | /* 91709 */ // Label 1993: @91709 |
| 32366 | /* 91709 */ GIM_Try, /*On fail goto*//*Label 1994*/ GIMT_Encode4(91754), // Rule ID 3024 // |
| 32367 | /* 91714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 32368 | /* 91717 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_w_128), |
| 32369 | /* 91722 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 32370 | /* 91725 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 32371 | /* 91728 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 32372 | /* 91731 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32373 | /* 91735 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32374 | /* 91739 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32375 | /* 91743 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16031:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPSIGNWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 32376 | /* 91743 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNWrr), |
| 32377 | /* 91746 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32378 | /* 91748 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32379 | /* 91750 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32380 | /* 91752 */ GIR_RootConstrainSelectedInstOperands, |
| 32381 | /* 91753 */ // GIR_Coverage, 3024, |
| 32382 | /* 91753 */ GIR_EraseRootFromParent_Done, |
| 32383 | /* 91754 */ // Label 1994: @91754 |
| 32384 | /* 91754 */ GIM_Try, /*On fail goto*//*Label 1995*/ GIMT_Encode4(91799), // Rule ID 3026 // |
| 32385 | /* 91759 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 32386 | /* 91762 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_d_128), |
| 32387 | /* 91767 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32388 | /* 91770 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32389 | /* 91773 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32390 | /* 91776 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32391 | /* 91780 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32392 | /* 91784 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32393 | /* 91788 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16029:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPSIGNDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32394 | /* 91788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNDrr), |
| 32395 | /* 91791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32396 | /* 91793 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32397 | /* 91795 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32398 | /* 91797 */ GIR_RootConstrainSelectedInstOperands, |
| 32399 | /* 91798 */ // GIR_Coverage, 3026, |
| 32400 | /* 91798 */ GIR_EraseRootFromParent_Done, |
| 32401 | /* 91799 */ // Label 1995: @91799 |
| 32402 | /* 91799 */ GIM_Try, /*On fail goto*//*Label 1996*/ GIMT_Encode4(91844), // Rule ID 3046 // |
| 32403 | /* 91804 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 32404 | /* 91807 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_b), |
| 32405 | /* 91812 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s8, |
| 32406 | /* 91815 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 32407 | /* 91818 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 32408 | /* 91821 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32409 | /* 91825 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32410 | /* 91829 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32411 | /* 91833 */ // (intrinsic_wo_chain:{ *:[v32i8] } 14918:{ *:[iPTR] }, VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPSIGNBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 32412 | /* 91833 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNBYrr), |
| 32413 | /* 91836 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32414 | /* 91838 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32415 | /* 91840 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32416 | /* 91842 */ GIR_RootConstrainSelectedInstOperands, |
| 32417 | /* 91843 */ // GIR_Coverage, 3046, |
| 32418 | /* 91843 */ GIR_EraseRootFromParent_Done, |
| 32419 | /* 91844 */ // Label 1996: @91844 |
| 32420 | /* 91844 */ GIM_Try, /*On fail goto*//*Label 1997*/ GIMT_Encode4(91889), // Rule ID 3048 // |
| 32421 | /* 91849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 32422 | /* 91852 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_w), |
| 32423 | /* 91857 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 32424 | /* 91860 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 32425 | /* 91863 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 32426 | /* 91866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32427 | /* 91870 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32428 | /* 91874 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32429 | /* 91878 */ // (intrinsic_wo_chain:{ *:[v16i16] } 14920:{ *:[iPTR] }, VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPSIGNWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 32430 | /* 91878 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNWYrr), |
| 32431 | /* 91881 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32432 | /* 91883 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32433 | /* 91885 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32434 | /* 91887 */ GIR_RootConstrainSelectedInstOperands, |
| 32435 | /* 91888 */ // GIR_Coverage, 3048, |
| 32436 | /* 91888 */ GIR_EraseRootFromParent_Done, |
| 32437 | /* 91889 */ // Label 1997: @91889 |
| 32438 | /* 91889 */ GIM_Try, /*On fail goto*//*Label 1998*/ GIMT_Encode4(91934), // Rule ID 3050 // |
| 32439 | /* 91894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 32440 | /* 91897 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_psign_d), |
| 32441 | /* 91902 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 32442 | /* 91905 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 32443 | /* 91908 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 32444 | /* 91911 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32445 | /* 91915 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32446 | /* 91919 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32447 | /* 91923 */ // (intrinsic_wo_chain:{ *:[v8i32] } 14919:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPSIGNDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 32448 | /* 91923 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSIGNDYrr), |
| 32449 | /* 91926 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32450 | /* 91928 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32451 | /* 91930 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32452 | /* 91932 */ GIR_RootConstrainSelectedInstOperands, |
| 32453 | /* 91933 */ // GIR_Coverage, 3050, |
| 32454 | /* 91933 */ GIR_EraseRootFromParent_Done, |
| 32455 | /* 91934 */ // Label 1998: @91934 |
| 32456 | /* 91934 */ GIM_Try, /*On fail goto*//*Label 1999*/ GIMT_Encode4(91979), // Rule ID 3064 // |
| 32457 | /* 91939 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 32458 | /* 91942 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_b_128), |
| 32459 | /* 91947 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 32460 | /* 91950 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 32461 | /* 91953 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 32462 | /* 91956 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32463 | /* 91960 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32464 | /* 91964 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32465 | /* 91968 */ // (intrinsic_wo_chain:{ *:[v16i8] } 16027:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PSIGNBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 32466 | /* 91968 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PSIGNBrr), |
| 32467 | /* 91971 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32468 | /* 91973 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32469 | /* 91975 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32470 | /* 91977 */ GIR_RootConstrainSelectedInstOperands, |
| 32471 | /* 91978 */ // GIR_Coverage, 3064, |
| 32472 | /* 91978 */ GIR_EraseRootFromParent_Done, |
| 32473 | /* 91979 */ // Label 1999: @91979 |
| 32474 | /* 91979 */ GIM_Try, /*On fail goto*//*Label 2000*/ GIMT_Encode4(92024), // Rule ID 3066 // |
| 32475 | /* 91984 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 32476 | /* 91987 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_w_128), |
| 32477 | /* 91992 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 32478 | /* 91995 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 32479 | /* 91998 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 32480 | /* 92001 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32481 | /* 92005 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32482 | /* 92009 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32483 | /* 92013 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16031:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PSIGNWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 32484 | /* 92013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PSIGNWrr), |
| 32485 | /* 92016 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32486 | /* 92018 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32487 | /* 92020 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32488 | /* 92022 */ GIR_RootConstrainSelectedInstOperands, |
| 32489 | /* 92023 */ // GIR_Coverage, 3066, |
| 32490 | /* 92023 */ GIR_EraseRootFromParent_Done, |
| 32491 | /* 92024 */ // Label 2000: @92024 |
| 32492 | /* 92024 */ GIM_Try, /*On fail goto*//*Label 2001*/ GIMT_Encode4(92069), // Rule ID 3068 // |
| 32493 | /* 92029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 32494 | /* 92032 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_ssse3_psign_d_128), |
| 32495 | /* 92037 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32496 | /* 92040 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32497 | /* 92043 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32498 | /* 92046 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32499 | /* 92050 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32500 | /* 92054 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32501 | /* 92058 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16029:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PSIGNDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32502 | /* 92058 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PSIGNDrr), |
| 32503 | /* 92061 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32504 | /* 92063 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32505 | /* 92065 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32506 | /* 92067 */ GIR_RootConstrainSelectedInstOperands, |
| 32507 | /* 92068 */ // GIR_Coverage, 3068, |
| 32508 | /* 92068 */ GIR_EraseRootFromParent_Done, |
| 32509 | /* 92069 */ // Label 2001: @92069 |
| 32510 | /* 92069 */ GIM_Try, /*On fail goto*//*Label 2002*/ GIMT_Encode4(92114), // Rule ID 3309 // |
| 32511 | /* 92074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 32512 | /* 92077 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_8), |
| 32513 | /* 92082 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 32514 | /* 92085 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 32515 | /* 92088 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 32516 | /* 92091 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32517 | /* 92095 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32518 | /* 92099 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 32519 | /* 92103 */ // (intrinsic_wo_chain:{ *:[i32] } 15985:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (CRC32r32r8:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) |
| 32520 | /* 92103 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r8), |
| 32521 | /* 92106 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32522 | /* 92108 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32523 | /* 92110 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32524 | /* 92112 */ GIR_RootConstrainSelectedInstOperands, |
| 32525 | /* 92113 */ // GIR_Coverage, 3309, |
| 32526 | /* 92113 */ GIR_EraseRootFromParent_Done, |
| 32527 | /* 92114 */ // Label 2002: @92114 |
| 32528 | /* 92114 */ GIM_Try, /*On fail goto*//*Label 2003*/ GIMT_Encode4(92159), // Rule ID 3311 // |
| 32529 | /* 92119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 32530 | /* 92122 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_16), |
| 32531 | /* 92127 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 32532 | /* 92130 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 32533 | /* 92133 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 32534 | /* 92136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32535 | /* 92140 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32536 | /* 92144 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 32537 | /* 92148 */ // (intrinsic_wo_chain:{ *:[i32] } 15983:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR16:{ *:[i16] }:$src2) => (CRC32r32r16:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR16:{ *:[i16] }:$src2) |
| 32538 | /* 92148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r16), |
| 32539 | /* 92151 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32540 | /* 92153 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32541 | /* 92155 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32542 | /* 92157 */ GIR_RootConstrainSelectedInstOperands, |
| 32543 | /* 92158 */ // GIR_Coverage, 3311, |
| 32544 | /* 92158 */ GIR_EraseRootFromParent_Done, |
| 32545 | /* 92159 */ // Label 2003: @92159 |
| 32546 | /* 92159 */ GIM_Try, /*On fail goto*//*Label 2004*/ GIMT_Encode4(92204), // Rule ID 3313 // |
| 32547 | /* 92164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 32548 | /* 92167 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_32), |
| 32549 | /* 92172 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 32550 | /* 92175 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 32551 | /* 92178 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 32552 | /* 92181 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32553 | /* 92185 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32554 | /* 92189 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32555 | /* 92193 */ // (intrinsic_wo_chain:{ *:[i32] } 15984:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (CRC32r32r32:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 32556 | /* 92193 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r32), |
| 32557 | /* 92196 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32558 | /* 92198 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32559 | /* 92200 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32560 | /* 92202 */ GIR_RootConstrainSelectedInstOperands, |
| 32561 | /* 92203 */ // GIR_Coverage, 3313, |
| 32562 | /* 92203 */ GIR_EraseRootFromParent_Done, |
| 32563 | /* 92204 */ // Label 2004: @92204 |
| 32564 | /* 92204 */ GIM_Try, /*On fail goto*//*Label 2005*/ GIMT_Encode4(92249), // Rule ID 3315 // |
| 32565 | /* 92209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_NoEGPR), |
| 32566 | /* 92212 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_64_64), |
| 32567 | /* 92217 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 32568 | /* 92220 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 32569 | /* 92223 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 32570 | /* 92226 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 32571 | /* 92230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 32572 | /* 92234 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 32573 | /* 92238 */ // (intrinsic_wo_chain:{ *:[i64] } 15986:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (CRC32r64r64:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 32574 | /* 92238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r64r64), |
| 32575 | /* 92241 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32576 | /* 92243 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32577 | /* 92245 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32578 | /* 92247 */ GIR_RootConstrainSelectedInstOperands, |
| 32579 | /* 92248 */ // GIR_Coverage, 3315, |
| 32580 | /* 92248 */ GIR_EraseRootFromParent_Done, |
| 32581 | /* 92249 */ // Label 2005: @92249 |
| 32582 | /* 92249 */ GIM_Try, /*On fail goto*//*Label 2006*/ GIMT_Encode4(92294), // Rule ID 3317 // |
| 32583 | /* 92254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 32584 | /* 92257 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_8), |
| 32585 | /* 92262 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 32586 | /* 92265 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 32587 | /* 92268 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 32588 | /* 92271 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32589 | /* 92275 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32590 | /* 92279 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 32591 | /* 92283 */ // (intrinsic_wo_chain:{ *:[i32] } 15985:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) => (CRC32r32r8_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR8:{ *:[i8] }:$src2) |
| 32592 | /* 92283 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r8_EVEX), |
| 32593 | /* 92286 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32594 | /* 92288 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32595 | /* 92290 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32596 | /* 92292 */ GIR_RootConstrainSelectedInstOperands, |
| 32597 | /* 92293 */ // GIR_Coverage, 3317, |
| 32598 | /* 92293 */ GIR_EraseRootFromParent_Done, |
| 32599 | /* 92294 */ // Label 2006: @92294 |
| 32600 | /* 92294 */ GIM_Try, /*On fail goto*//*Label 2007*/ GIMT_Encode4(92339), // Rule ID 3319 // |
| 32601 | /* 92299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 32602 | /* 92302 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_16), |
| 32603 | /* 92307 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 32604 | /* 92310 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 32605 | /* 92313 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 32606 | /* 92316 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32607 | /* 92320 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32608 | /* 92324 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 32609 | /* 92328 */ // (intrinsic_wo_chain:{ *:[i32] } 15983:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR16:{ *:[i16] }:$src2) => (CRC32r32r16_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR16:{ *:[i16] }:$src2) |
| 32610 | /* 92328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r16_EVEX), |
| 32611 | /* 92331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32612 | /* 92333 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32613 | /* 92335 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32614 | /* 92337 */ GIR_RootConstrainSelectedInstOperands, |
| 32615 | /* 92338 */ // GIR_Coverage, 3319, |
| 32616 | /* 92338 */ GIR_EraseRootFromParent_Done, |
| 32617 | /* 92339 */ // Label 2007: @92339 |
| 32618 | /* 92339 */ GIM_Try, /*On fail goto*//*Label 2008*/ GIMT_Encode4(92384), // Rule ID 3321 // |
| 32619 | /* 92344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 32620 | /* 92347 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_32_32), |
| 32621 | /* 92352 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 32622 | /* 92355 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 32623 | /* 92358 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 32624 | /* 92361 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32625 | /* 92365 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32626 | /* 92369 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 32627 | /* 92373 */ // (intrinsic_wo_chain:{ *:[i32] } 15984:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) => (CRC32r32r32_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 32628 | /* 92373 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r32r32_EVEX), |
| 32629 | /* 92376 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32630 | /* 92378 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32631 | /* 92380 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32632 | /* 92382 */ GIR_RootConstrainSelectedInstOperands, |
| 32633 | /* 92383 */ // GIR_Coverage, 3321, |
| 32634 | /* 92383 */ GIR_EraseRootFromParent_Done, |
| 32635 | /* 92384 */ // Label 2008: @92384 |
| 32636 | /* 92384 */ GIM_Try, /*On fail goto*//*Label 2009*/ GIMT_Encode4(92429), // Rule ID 3323 // |
| 32637 | /* 92389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCRC32_HasEGPR_In64BitMode), |
| 32638 | /* 92392 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse42_crc32_64_64), |
| 32639 | /* 92397 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 32640 | /* 92400 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 32641 | /* 92403 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 32642 | /* 92406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 32643 | /* 92410 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 32644 | /* 92414 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 32645 | /* 92418 */ // (intrinsic_wo_chain:{ *:[i64] } 15986:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (CRC32r64r64_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 32646 | /* 92418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CRC32r64r64_EVEX), |
| 32647 | /* 92421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32648 | /* 92423 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32649 | /* 92425 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32650 | /* 92427 */ GIR_RootConstrainSelectedInstOperands, |
| 32651 | /* 92428 */ // GIR_Coverage, 3323, |
| 32652 | /* 92428 */ GIR_EraseRootFromParent_Done, |
| 32653 | /* 92429 */ // Label 2009: @92429 |
| 32654 | /* 92429 */ GIM_Try, /*On fail goto*//*Label 2010*/ GIMT_Encode4(92474), // Rule ID 3327 // |
| 32655 | /* 92434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 32656 | /* 92437 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha1nexte), |
| 32657 | /* 92442 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32658 | /* 92445 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32659 | /* 92448 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32660 | /* 92451 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32661 | /* 92455 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32662 | /* 92459 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32663 | /* 92463 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15855:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA1NEXTErr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32664 | /* 92463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA1NEXTErr), |
| 32665 | /* 92466 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32666 | /* 92468 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32667 | /* 92470 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32668 | /* 92472 */ GIR_RootConstrainSelectedInstOperands, |
| 32669 | /* 92473 */ // GIR_Coverage, 3327, |
| 32670 | /* 92473 */ GIR_EraseRootFromParent_Done, |
| 32671 | /* 92474 */ // Label 2010: @92474 |
| 32672 | /* 92474 */ GIM_Try, /*On fail goto*//*Label 2011*/ GIMT_Encode4(92519), // Rule ID 3329 // |
| 32673 | /* 92479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 32674 | /* 92482 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha1msg1), |
| 32675 | /* 92487 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32676 | /* 92490 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32677 | /* 92493 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32678 | /* 92496 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32679 | /* 92500 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32680 | /* 92504 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32681 | /* 92508 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15853:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA1MSG1rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32682 | /* 92508 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA1MSG1rr), |
| 32683 | /* 92511 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32684 | /* 92513 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32685 | /* 92515 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32686 | /* 92517 */ GIR_RootConstrainSelectedInstOperands, |
| 32687 | /* 92518 */ // GIR_Coverage, 3329, |
| 32688 | /* 92518 */ GIR_EraseRootFromParent_Done, |
| 32689 | /* 92519 */ // Label 2011: @92519 |
| 32690 | /* 92519 */ GIM_Try, /*On fail goto*//*Label 2012*/ GIMT_Encode4(92564), // Rule ID 3331 // |
| 32691 | /* 92524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 32692 | /* 92527 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha1msg2), |
| 32693 | /* 92532 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32694 | /* 92535 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32695 | /* 92538 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32696 | /* 92541 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32697 | /* 92545 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32698 | /* 92549 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32699 | /* 92553 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15854:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA1MSG2rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32700 | /* 92553 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA1MSG2rr), |
| 32701 | /* 92556 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32702 | /* 92558 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32703 | /* 92560 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32704 | /* 92562 */ GIR_RootConstrainSelectedInstOperands, |
| 32705 | /* 92563 */ // GIR_Coverage, 3331, |
| 32706 | /* 92563 */ GIR_EraseRootFromParent_Done, |
| 32707 | /* 92564 */ // Label 2012: @92564 |
| 32708 | /* 92564 */ GIM_Try, /*On fail goto*//*Label 2013*/ GIMT_Encode4(92609), // Rule ID 3335 // |
| 32709 | /* 92569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 32710 | /* 92572 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha256msg1), |
| 32711 | /* 92577 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32712 | /* 92580 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32713 | /* 92583 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32714 | /* 92586 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32715 | /* 92590 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32716 | /* 92594 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32717 | /* 92598 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15857:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA256MSG1rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32718 | /* 92598 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA256MSG1rr), |
| 32719 | /* 92601 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32720 | /* 92603 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32721 | /* 92605 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32722 | /* 92607 */ GIR_RootConstrainSelectedInstOperands, |
| 32723 | /* 92608 */ // GIR_Coverage, 3335, |
| 32724 | /* 92608 */ GIR_EraseRootFromParent_Done, |
| 32725 | /* 92609 */ // Label 2013: @92609 |
| 32726 | /* 92609 */ GIM_Try, /*On fail goto*//*Label 2014*/ GIMT_Encode4(92654), // Rule ID 3337 // |
| 32727 | /* 92614 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 32728 | /* 92617 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha256msg2), |
| 32729 | /* 92622 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 32730 | /* 92625 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 32731 | /* 92628 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 32732 | /* 92631 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32733 | /* 92635 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32734 | /* 92639 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32735 | /* 92643 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15858:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (SHA256MSG2rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 32736 | /* 92643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA256MSG2rr), |
| 32737 | /* 92646 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32738 | /* 92648 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32739 | /* 92650 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32740 | /* 92652 */ GIR_RootConstrainSelectedInstOperands, |
| 32741 | /* 92653 */ // GIR_Coverage, 3337, |
| 32742 | /* 92653 */ GIR_EraseRootFromParent_Done, |
| 32743 | /* 92654 */ // Label 2014: @92654 |
| 32744 | /* 92654 */ GIM_Try, /*On fail goto*//*Label 2015*/ GIMT_Encode4(92699), // Rule ID 3339 // |
| 32745 | /* 92659 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 32746 | /* 92662 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 32747 | /* 92667 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32748 | /* 92670 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32749 | /* 92673 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32750 | /* 92676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32751 | /* 92680 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32752 | /* 92684 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32753 | /* 92688 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14548:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VAESENCrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 32754 | /* 92688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCrr), |
| 32755 | /* 92691 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32756 | /* 92693 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32757 | /* 92695 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32758 | /* 92697 */ GIR_RootConstrainSelectedInstOperands, |
| 32759 | /* 92698 */ // GIR_Coverage, 3339, |
| 32760 | /* 92698 */ GIR_EraseRootFromParent_Done, |
| 32761 | /* 92699 */ // Label 2015: @92699 |
| 32762 | /* 92699 */ GIM_Try, /*On fail goto*//*Label 2016*/ GIMT_Encode4(92744), // Rule ID 3341 // |
| 32763 | /* 92704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 32764 | /* 92707 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 32765 | /* 92712 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32766 | /* 92715 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32767 | /* 92718 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32768 | /* 92721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32769 | /* 92725 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32770 | /* 92729 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32771 | /* 92733 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14551:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VAESENCLASTrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 32772 | /* 92733 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTrr), |
| 32773 | /* 92736 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32774 | /* 92738 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32775 | /* 92740 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32776 | /* 92742 */ GIR_RootConstrainSelectedInstOperands, |
| 32777 | /* 92743 */ // GIR_Coverage, 3341, |
| 32778 | /* 92743 */ GIR_EraseRootFromParent_Done, |
| 32779 | /* 92744 */ // Label 2016: @92744 |
| 32780 | /* 92744 */ GIM_Try, /*On fail goto*//*Label 2017*/ GIMT_Encode4(92789), // Rule ID 3343 // |
| 32781 | /* 92749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 32782 | /* 92752 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 32783 | /* 92757 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32784 | /* 92760 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32785 | /* 92763 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32786 | /* 92766 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32787 | /* 92770 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32788 | /* 92774 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32789 | /* 92778 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14542:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VAESDECrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 32790 | /* 92778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECrr), |
| 32791 | /* 92781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32792 | /* 92783 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32793 | /* 92785 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32794 | /* 92787 */ GIR_RootConstrainSelectedInstOperands, |
| 32795 | /* 92788 */ // GIR_Coverage, 3343, |
| 32796 | /* 92788 */ GIR_EraseRootFromParent_Done, |
| 32797 | /* 92789 */ // Label 2017: @92789 |
| 32798 | /* 92789 */ GIM_Try, /*On fail goto*//*Label 2018*/ GIMT_Encode4(92834), // Rule ID 3345 // |
| 32799 | /* 92794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_HasAVX_NoVLX_Or_NoVAES), |
| 32800 | /* 92797 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 32801 | /* 92802 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32802 | /* 92805 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32803 | /* 92808 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32804 | /* 92811 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32805 | /* 92815 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32806 | /* 92819 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32807 | /* 92823 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14545:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VAESDECLASTrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 32808 | /* 92823 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTrr), |
| 32809 | /* 92826 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32810 | /* 92828 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32811 | /* 92830 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32812 | /* 92832 */ GIR_RootConstrainSelectedInstOperands, |
| 32813 | /* 92833 */ // GIR_Coverage, 3345, |
| 32814 | /* 92833 */ GIR_EraseRootFromParent_Done, |
| 32815 | /* 92834 */ // Label 2018: @92834 |
| 32816 | /* 92834 */ GIM_Try, /*On fail goto*//*Label 2019*/ GIMT_Encode4(92879), // Rule ID 3347 // |
| 32817 | /* 92839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 32818 | /* 92842 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_256), |
| 32819 | /* 92847 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32820 | /* 92850 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32821 | /* 92853 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32822 | /* 92856 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32823 | /* 92860 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32824 | /* 92864 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32825 | /* 92868 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14549:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VAESENCYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 32826 | /* 92868 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCYrr), |
| 32827 | /* 92871 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32828 | /* 92873 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32829 | /* 92875 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32830 | /* 92877 */ GIR_RootConstrainSelectedInstOperands, |
| 32831 | /* 92878 */ // GIR_Coverage, 3347, |
| 32832 | /* 92878 */ GIR_EraseRootFromParent_Done, |
| 32833 | /* 92879 */ // Label 2019: @92879 |
| 32834 | /* 92879 */ GIM_Try, /*On fail goto*//*Label 2020*/ GIMT_Encode4(92924), // Rule ID 3349 // |
| 32835 | /* 92884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 32836 | /* 92887 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_256), |
| 32837 | /* 92892 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32838 | /* 92895 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32839 | /* 92898 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32840 | /* 92901 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32841 | /* 92905 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32842 | /* 92909 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32843 | /* 92913 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14552:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VAESENCLASTYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 32844 | /* 92913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTYrr), |
| 32845 | /* 92916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32846 | /* 92918 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32847 | /* 92920 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32848 | /* 92922 */ GIR_RootConstrainSelectedInstOperands, |
| 32849 | /* 92923 */ // GIR_Coverage, 3349, |
| 32850 | /* 92923 */ GIR_EraseRootFromParent_Done, |
| 32851 | /* 92924 */ // Label 2020: @92924 |
| 32852 | /* 92924 */ GIM_Try, /*On fail goto*//*Label 2021*/ GIMT_Encode4(92969), // Rule ID 3351 // |
| 32853 | /* 92929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 32854 | /* 92932 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_256), |
| 32855 | /* 92937 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32856 | /* 92940 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32857 | /* 92943 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32858 | /* 92946 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32859 | /* 92950 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32860 | /* 92954 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32861 | /* 92958 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14543:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VAESDECYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 32862 | /* 92958 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECYrr), |
| 32863 | /* 92961 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32864 | /* 92963 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32865 | /* 92965 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32866 | /* 92967 */ GIR_RootConstrainSelectedInstOperands, |
| 32867 | /* 92968 */ // GIR_Coverage, 3351, |
| 32868 | /* 92968 */ GIR_EraseRootFromParent_Done, |
| 32869 | /* 92969 */ // Label 2021: @92969 |
| 32870 | /* 92969 */ GIM_Try, /*On fail goto*//*Label 2022*/ GIMT_Encode4(93014), // Rule ID 3353 // |
| 32871 | /* 92974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_NoVLX), |
| 32872 | /* 92977 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_256), |
| 32873 | /* 92982 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 32874 | /* 92985 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 32875 | /* 92988 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 32876 | /* 92991 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32877 | /* 92995 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32878 | /* 92999 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 32879 | /* 93003 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14546:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VAESDECLASTYrr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 32880 | /* 93003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTYrr), |
| 32881 | /* 93006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32882 | /* 93008 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32883 | /* 93010 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32884 | /* 93012 */ GIR_RootConstrainSelectedInstOperands, |
| 32885 | /* 93013 */ // GIR_Coverage, 3353, |
| 32886 | /* 93013 */ GIR_EraseRootFromParent_Done, |
| 32887 | /* 93014 */ // Label 2022: @93014 |
| 32888 | /* 93014 */ GIM_Try, /*On fail goto*//*Label 2023*/ GIMT_Encode4(93059), // Rule ID 3355 // |
| 32889 | /* 93019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 32890 | /* 93022 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 32891 | /* 93027 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32892 | /* 93030 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32893 | /* 93033 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32894 | /* 93036 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32895 | /* 93040 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32896 | /* 93044 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32897 | /* 93048 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14548:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (AESENCrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 32898 | /* 93048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESENCrr), |
| 32899 | /* 93051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32900 | /* 93053 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32901 | /* 93055 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32902 | /* 93057 */ GIR_RootConstrainSelectedInstOperands, |
| 32903 | /* 93058 */ // GIR_Coverage, 3355, |
| 32904 | /* 93058 */ GIR_EraseRootFromParent_Done, |
| 32905 | /* 93059 */ // Label 2023: @93059 |
| 32906 | /* 93059 */ GIM_Try, /*On fail goto*//*Label 2024*/ GIMT_Encode4(93104), // Rule ID 3357 // |
| 32907 | /* 93064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 32908 | /* 93067 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 32909 | /* 93072 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32910 | /* 93075 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32911 | /* 93078 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32912 | /* 93081 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32913 | /* 93085 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32914 | /* 93089 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32915 | /* 93093 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14551:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (AESENCLASTrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 32916 | /* 93093 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESENCLASTrr), |
| 32917 | /* 93096 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32918 | /* 93098 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32919 | /* 93100 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32920 | /* 93102 */ GIR_RootConstrainSelectedInstOperands, |
| 32921 | /* 93103 */ // GIR_Coverage, 3357, |
| 32922 | /* 93103 */ GIR_EraseRootFromParent_Done, |
| 32923 | /* 93104 */ // Label 2024: @93104 |
| 32924 | /* 93104 */ GIM_Try, /*On fail goto*//*Label 2025*/ GIMT_Encode4(93149), // Rule ID 3359 // |
| 32925 | /* 93109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 32926 | /* 93112 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 32927 | /* 93117 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32928 | /* 93120 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32929 | /* 93123 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32930 | /* 93126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32931 | /* 93130 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32932 | /* 93134 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32933 | /* 93138 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14542:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (AESDECrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 32934 | /* 93138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESDECrr), |
| 32935 | /* 93141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32936 | /* 93143 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32937 | /* 93145 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32938 | /* 93147 */ GIR_RootConstrainSelectedInstOperands, |
| 32939 | /* 93148 */ // GIR_Coverage, 3359, |
| 32940 | /* 93148 */ GIR_EraseRootFromParent_Done, |
| 32941 | /* 93149 */ // Label 2025: @93149 |
| 32942 | /* 93149 */ GIM_Try, /*On fail goto*//*Label 2026*/ GIMT_Encode4(93194), // Rule ID 3361 // |
| 32943 | /* 93154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAES_NoAVX), |
| 32944 | /* 93157 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 32945 | /* 93162 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32946 | /* 93165 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32947 | /* 93168 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32948 | /* 93171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32949 | /* 93175 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32950 | /* 93179 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32951 | /* 93183 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14545:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (AESDECLASTrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 32952 | /* 93183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AESDECLASTrr), |
| 32953 | /* 93186 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32954 | /* 93188 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 32955 | /* 93190 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 32956 | /* 93192 */ GIR_RootConstrainSelectedInstOperands, |
| 32957 | /* 93193 */ // GIR_Coverage, 3361, |
| 32958 | /* 93193 */ GIR_EraseRootFromParent_Done, |
| 32959 | /* 93194 */ // Label 2026: @93194 |
| 32960 | /* 93194 */ GIM_Try, /*On fail goto*//*Label 2027*/ GIMT_Encode4(93239), // Rule ID 3378 // |
| 32961 | /* 93199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE4A), |
| 32962 | /* 93202 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse4a_extrq), |
| 32963 | /* 93207 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32964 | /* 93210 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32965 | /* 93213 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 32966 | /* 93216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32967 | /* 93220 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32968 | /* 93224 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32969 | /* 93228 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16001:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src, VR128:{ *:[v16i8] }:$mask) => (EXTRQ:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 32970 | /* 93228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::EXTRQ), |
| 32971 | /* 93231 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32972 | /* 93233 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 32973 | /* 93235 */ GIR_RootToRootCopy, /*OpIdx*/3, // mask |
| 32974 | /* 93237 */ GIR_RootConstrainSelectedInstOperands, |
| 32975 | /* 93238 */ // GIR_Coverage, 3378, |
| 32976 | /* 93238 */ GIR_EraseRootFromParent_Done, |
| 32977 | /* 93239 */ // Label 2027: @93239 |
| 32978 | /* 93239 */ GIM_Try, /*On fail goto*//*Label 2028*/ GIMT_Encode4(93284), // Rule ID 3380 // |
| 32979 | /* 93244 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE4A), |
| 32980 | /* 93247 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse4a_insertq), |
| 32981 | /* 93252 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 32982 | /* 93255 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 32983 | /* 93258 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 32984 | /* 93261 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32985 | /* 93265 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32986 | /* 93269 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 32987 | /* 93273 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16003:{ *:[iPTR] }, VR128:{ *:[v2i64] }:$src, VR128:{ *:[v2i64] }:$mask) => (INSERTQ:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src, VR128:{ *:[v2i64] }:$mask) |
| 32988 | /* 93273 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INSERTQ), |
| 32989 | /* 93276 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 32990 | /* 93278 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 32991 | /* 93280 */ GIR_RootToRootCopy, /*OpIdx*/3, // mask |
| 32992 | /* 93282 */ GIR_RootConstrainSelectedInstOperands, |
| 32993 | /* 93283 */ // GIR_Coverage, 3380, |
| 32994 | /* 93283 */ GIR_EraseRootFromParent_Done, |
| 32995 | /* 93284 */ // Label 2028: @93284 |
| 32996 | /* 93284 */ GIM_Try, /*On fail goto*//*Label 2029*/ GIMT_Encode4(93329), // Rule ID 3555 // |
| 32997 | /* 93289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA512), |
| 32998 | /* 93292 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsha512msg1), |
| 32999 | /* 93297 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33000 | /* 93300 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33001 | /* 93303 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33002 | /* 93306 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33003 | /* 93310 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33004 | /* 93314 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33005 | /* 93318 */ // (intrinsic_wo_chain:{ *:[v4i64] } 16126:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VSHA512MSG1rr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 33006 | /* 93318 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSHA512MSG1rr), |
| 33007 | /* 93321 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33008 | /* 93323 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33009 | /* 93325 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33010 | /* 93327 */ GIR_RootConstrainSelectedInstOperands, |
| 33011 | /* 93328 */ // GIR_Coverage, 3555, |
| 33012 | /* 93328 */ GIR_EraseRootFromParent_Done, |
| 33013 | /* 93329 */ // Label 2029: @93329 |
| 33014 | /* 93329 */ GIM_Try, /*On fail goto*//*Label 2030*/ GIMT_Encode4(93374), // Rule ID 3556 // |
| 33015 | /* 93334 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA512), |
| 33016 | /* 93337 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsha512msg2), |
| 33017 | /* 93342 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33018 | /* 93345 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33019 | /* 93348 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33020 | /* 93351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33021 | /* 93355 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33022 | /* 93359 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33023 | /* 93363 */ // (intrinsic_wo_chain:{ *:[v4i64] } 16127:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VSHA512MSG2rr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 33024 | /* 93363 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSHA512MSG2rr), |
| 33025 | /* 93366 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33026 | /* 93368 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33027 | /* 93370 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33028 | /* 93372 */ GIR_RootConstrainSelectedInstOperands, |
| 33029 | /* 93373 */ // GIR_Coverage, 3556, |
| 33030 | /* 93373 */ GIR_EraseRootFromParent_Done, |
| 33031 | /* 93374 */ // Label 2030: @93374 |
| 33032 | /* 93374 */ GIM_Try, /*On fail goto*//*Label 2031*/ GIMT_Encode4(93419), // Rule ID 3564 // |
| 33033 | /* 93379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 33034 | /* 93382 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4128), |
| 33035 | /* 93387 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33036 | /* 93390 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33037 | /* 93393 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33038 | /* 93396 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33039 | /* 93400 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33040 | /* 93404 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33041 | /* 93408 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16132:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VSM4KEY4rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33042 | /* 93408 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4rr), |
| 33043 | /* 93411 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33044 | /* 93413 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33045 | /* 93415 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33046 | /* 93417 */ GIR_RootConstrainSelectedInstOperands, |
| 33047 | /* 93418 */ // GIR_Coverage, 3564, |
| 33048 | /* 93418 */ GIR_EraseRootFromParent_Done, |
| 33049 | /* 93419 */ // Label 2031: @93419 |
| 33050 | /* 93419 */ GIM_Try, /*On fail goto*//*Label 2032*/ GIMT_Encode4(93464), // Rule ID 3566 // |
| 33051 | /* 93424 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 33052 | /* 93427 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4256), |
| 33053 | /* 93432 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 33054 | /* 93435 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 33055 | /* 93438 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 33056 | /* 93441 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33057 | /* 93445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33058 | /* 93449 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33059 | /* 93453 */ // (intrinsic_wo_chain:{ *:[v8i32] } 16133:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VSM4KEY4Yrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 33060 | /* 93453 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Yrr), |
| 33061 | /* 93456 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33062 | /* 93458 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33063 | /* 93460 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33064 | /* 93462 */ GIR_RootConstrainSelectedInstOperands, |
| 33065 | /* 93463 */ // GIR_Coverage, 3566, |
| 33066 | /* 93463 */ GIR_EraseRootFromParent_Done, |
| 33067 | /* 93464 */ // Label 2032: @93464 |
| 33068 | /* 93464 */ GIM_Try, /*On fail goto*//*Label 2033*/ GIMT_Encode4(93509), // Rule ID 3568 // |
| 33069 | /* 93469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 33070 | /* 93472 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4128), |
| 33071 | /* 93477 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33072 | /* 93480 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33073 | /* 93483 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33074 | /* 93486 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33075 | /* 93490 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33076 | /* 93494 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33077 | /* 93498 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16135:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VSM4RNDS4rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 33078 | /* 93498 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4rr), |
| 33079 | /* 93501 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33080 | /* 93503 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33081 | /* 93505 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33082 | /* 93507 */ GIR_RootConstrainSelectedInstOperands, |
| 33083 | /* 93508 */ // GIR_Coverage, 3568, |
| 33084 | /* 93508 */ GIR_EraseRootFromParent_Done, |
| 33085 | /* 93509 */ // Label 2033: @93509 |
| 33086 | /* 93509 */ GIM_Try, /*On fail goto*//*Label 2034*/ GIMT_Encode4(93554), // Rule ID 3570 // |
| 33087 | /* 93514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM4), |
| 33088 | /* 93517 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4256), |
| 33089 | /* 93522 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 33090 | /* 93525 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 33091 | /* 93528 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 33092 | /* 93531 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33093 | /* 93535 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33094 | /* 93539 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33095 | /* 93543 */ // (intrinsic_wo_chain:{ *:[v8i32] } 16136:{ *:[iPTR] }, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VSM4RNDS4Yrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 33096 | /* 93543 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Yrr), |
| 33097 | /* 93546 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33098 | /* 93548 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33099 | /* 93550 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33100 | /* 93552 */ GIR_RootConstrainSelectedInstOperands, |
| 33101 | /* 93553 */ // GIR_Coverage, 3570, |
| 33102 | /* 93553 */ GIR_EraseRootFromParent_Done, |
| 33103 | /* 93554 */ // Label 2034: @93554 |
| 33104 | /* 93554 */ GIM_Try, /*On fail goto*//*Label 2035*/ GIMT_Encode4(93599), // Rule ID 14064 // |
| 33105 | /* 93559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33106 | /* 93562 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc), |
| 33107 | /* 93567 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33108 | /* 93570 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33109 | /* 93573 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33110 | /* 93576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33111 | /* 93580 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33112 | /* 93584 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33113 | /* 93588 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14548:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VAESENCZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 33114 | /* 93588 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZ128rr), |
| 33115 | /* 93591 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33116 | /* 93593 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33117 | /* 93595 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33118 | /* 93597 */ GIR_RootConstrainSelectedInstOperands, |
| 33119 | /* 93598 */ // GIR_Coverage, 14064, |
| 33120 | /* 93598 */ GIR_EraseRootFromParent_Done, |
| 33121 | /* 93599 */ // Label 2035: @93599 |
| 33122 | /* 93599 */ GIM_Try, /*On fail goto*//*Label 2036*/ GIMT_Encode4(93644), // Rule ID 14066 // |
| 33123 | /* 93604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33124 | /* 93607 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_256), |
| 33125 | /* 93612 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33126 | /* 93615 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33127 | /* 93618 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33128 | /* 93621 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33129 | /* 93625 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33130 | /* 93629 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33131 | /* 93633 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14549:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VAESENCZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 33132 | /* 93633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZ256rr), |
| 33133 | /* 93636 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33134 | /* 93638 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33135 | /* 93640 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33136 | /* 93642 */ GIR_RootConstrainSelectedInstOperands, |
| 33137 | /* 93643 */ // GIR_Coverage, 14066, |
| 33138 | /* 93643 */ GIR_EraseRootFromParent_Done, |
| 33139 | /* 93644 */ // Label 2036: @93644 |
| 33140 | /* 93644 */ GIM_Try, /*On fail goto*//*Label 2037*/ GIMT_Encode4(93689), // Rule ID 14068 // |
| 33141 | /* 93649 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 33142 | /* 93652 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenc_512), |
| 33143 | /* 93657 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 33144 | /* 93660 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 33145 | /* 93663 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 33146 | /* 93666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33147 | /* 93670 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33148 | /* 93674 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33149 | /* 93678 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14550:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VAESENCZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 33150 | /* 93678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCZrr), |
| 33151 | /* 93681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33152 | /* 93683 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33153 | /* 93685 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33154 | /* 93687 */ GIR_RootConstrainSelectedInstOperands, |
| 33155 | /* 93688 */ // GIR_Coverage, 14068, |
| 33156 | /* 93688 */ GIR_EraseRootFromParent_Done, |
| 33157 | /* 93689 */ // Label 2037: @93689 |
| 33158 | /* 93689 */ GIM_Try, /*On fail goto*//*Label 2038*/ GIMT_Encode4(93734), // Rule ID 14070 // |
| 33159 | /* 93694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33160 | /* 93697 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast), |
| 33161 | /* 93702 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33162 | /* 93705 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33163 | /* 93708 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33164 | /* 93711 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33165 | /* 93715 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33166 | /* 93719 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33167 | /* 93723 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14551:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VAESENCLASTZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 33168 | /* 93723 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZ128rr), |
| 33169 | /* 93726 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33170 | /* 93728 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33171 | /* 93730 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33172 | /* 93732 */ GIR_RootConstrainSelectedInstOperands, |
| 33173 | /* 93733 */ // GIR_Coverage, 14070, |
| 33174 | /* 93733 */ GIR_EraseRootFromParent_Done, |
| 33175 | /* 93734 */ // Label 2038: @93734 |
| 33176 | /* 93734 */ GIM_Try, /*On fail goto*//*Label 2039*/ GIMT_Encode4(93779), // Rule ID 14072 // |
| 33177 | /* 93739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33178 | /* 93742 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_256), |
| 33179 | /* 93747 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33180 | /* 93750 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33181 | /* 93753 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33182 | /* 93756 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33183 | /* 93760 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33184 | /* 93764 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33185 | /* 93768 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14552:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VAESENCLASTZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 33186 | /* 93768 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZ256rr), |
| 33187 | /* 93771 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33188 | /* 93773 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33189 | /* 93775 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33190 | /* 93777 */ GIR_RootConstrainSelectedInstOperands, |
| 33191 | /* 93778 */ // GIR_Coverage, 14072, |
| 33192 | /* 93778 */ GIR_EraseRootFromParent_Done, |
| 33193 | /* 93779 */ // Label 2039: @93779 |
| 33194 | /* 93779 */ GIM_Try, /*On fail goto*//*Label 2040*/ GIMT_Encode4(93824), // Rule ID 14074 // |
| 33195 | /* 93784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 33196 | /* 93787 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesenclast_512), |
| 33197 | /* 93792 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 33198 | /* 93795 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 33199 | /* 93798 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 33200 | /* 93801 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33201 | /* 93805 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33202 | /* 93809 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33203 | /* 93813 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14553:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VAESENCLASTZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 33204 | /* 93813 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESENCLASTZrr), |
| 33205 | /* 93816 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33206 | /* 93818 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33207 | /* 93820 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33208 | /* 93822 */ GIR_RootConstrainSelectedInstOperands, |
| 33209 | /* 93823 */ // GIR_Coverage, 14074, |
| 33210 | /* 93823 */ GIR_EraseRootFromParent_Done, |
| 33211 | /* 93824 */ // Label 2040: @93824 |
| 33212 | /* 93824 */ GIM_Try, /*On fail goto*//*Label 2041*/ GIMT_Encode4(93869), // Rule ID 14076 // |
| 33213 | /* 93829 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33214 | /* 93832 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec), |
| 33215 | /* 93837 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33216 | /* 93840 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33217 | /* 93843 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33218 | /* 93846 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33219 | /* 93850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33220 | /* 93854 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33221 | /* 93858 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14542:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VAESDECZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 33222 | /* 93858 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZ128rr), |
| 33223 | /* 93861 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33224 | /* 93863 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33225 | /* 93865 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33226 | /* 93867 */ GIR_RootConstrainSelectedInstOperands, |
| 33227 | /* 93868 */ // GIR_Coverage, 14076, |
| 33228 | /* 93868 */ GIR_EraseRootFromParent_Done, |
| 33229 | /* 93869 */ // Label 2041: @93869 |
| 33230 | /* 93869 */ GIM_Try, /*On fail goto*//*Label 2042*/ GIMT_Encode4(93914), // Rule ID 14078 // |
| 33231 | /* 93874 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33232 | /* 93877 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_256), |
| 33233 | /* 93882 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33234 | /* 93885 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33235 | /* 93888 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33236 | /* 93891 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33237 | /* 93895 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33238 | /* 93899 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33239 | /* 93903 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14543:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VAESDECZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 33240 | /* 93903 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZ256rr), |
| 33241 | /* 93906 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33242 | /* 93908 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33243 | /* 93910 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33244 | /* 93912 */ GIR_RootConstrainSelectedInstOperands, |
| 33245 | /* 93913 */ // GIR_Coverage, 14078, |
| 33246 | /* 93913 */ GIR_EraseRootFromParent_Done, |
| 33247 | /* 93914 */ // Label 2042: @93914 |
| 33248 | /* 93914 */ GIM_Try, /*On fail goto*//*Label 2043*/ GIMT_Encode4(93959), // Rule ID 14080 // |
| 33249 | /* 93919 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 33250 | /* 93922 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdec_512), |
| 33251 | /* 93927 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 33252 | /* 93930 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 33253 | /* 93933 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 33254 | /* 93936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33255 | /* 93940 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33256 | /* 93944 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33257 | /* 93948 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14544:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VAESDECZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 33258 | /* 93948 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECZrr), |
| 33259 | /* 93951 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33260 | /* 93953 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33261 | /* 93955 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33262 | /* 93957 */ GIR_RootConstrainSelectedInstOperands, |
| 33263 | /* 93958 */ // GIR_Coverage, 14080, |
| 33264 | /* 93958 */ GIR_EraseRootFromParent_Done, |
| 33265 | /* 93959 */ // Label 2043: @93959 |
| 33266 | /* 93959 */ GIM_Try, /*On fail goto*//*Label 2044*/ GIMT_Encode4(94004), // Rule ID 14082 // |
| 33267 | /* 93964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33268 | /* 93967 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast), |
| 33269 | /* 93972 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33270 | /* 93975 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33271 | /* 93978 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33272 | /* 93981 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33273 | /* 93985 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33274 | /* 93989 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 33275 | /* 93993 */ // (intrinsic_wo_chain:{ *:[v2i64] } 14545:{ *:[iPTR] }, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VAESDECLASTZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 33276 | /* 93993 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZ128rr), |
| 33277 | /* 93996 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33278 | /* 93998 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33279 | /* 94000 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33280 | /* 94002 */ GIR_RootConstrainSelectedInstOperands, |
| 33281 | /* 94003 */ // GIR_Coverage, 14082, |
| 33282 | /* 94003 */ GIR_EraseRootFromParent_Done, |
| 33283 | /* 94004 */ // Label 2044: @94004 |
| 33284 | /* 94004 */ GIM_Try, /*On fail goto*//*Label 2045*/ GIMT_Encode4(94049), // Rule ID 14084 // |
| 33285 | /* 94009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVAES_HasVLX), |
| 33286 | /* 94012 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_256), |
| 33287 | /* 94017 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 33288 | /* 94020 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 33289 | /* 94023 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 33290 | /* 94026 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33291 | /* 94030 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33292 | /* 94034 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 33293 | /* 94038 */ // (intrinsic_wo_chain:{ *:[v4i64] } 14546:{ *:[iPTR] }, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VAESDECLASTZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 33294 | /* 94038 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZ256rr), |
| 33295 | /* 94041 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33296 | /* 94043 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33297 | /* 94045 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33298 | /* 94047 */ GIR_RootConstrainSelectedInstOperands, |
| 33299 | /* 94048 */ // GIR_Coverage, 14084, |
| 33300 | /* 94048 */ GIR_EraseRootFromParent_Done, |
| 33301 | /* 94049 */ // Label 2045: @94049 |
| 33302 | /* 94049 */ GIM_Try, /*On fail goto*//*Label 2046*/ GIMT_Encode4(94094), // Rule ID 14086 // |
| 33303 | /* 94054 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVAES), |
| 33304 | /* 94057 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_aesni_aesdeclast_512), |
| 33305 | /* 94062 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 33306 | /* 94065 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 33307 | /* 94068 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 33308 | /* 94071 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33309 | /* 94075 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33310 | /* 94079 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33311 | /* 94083 */ // (intrinsic_wo_chain:{ *:[v8i64] } 14547:{ *:[iPTR] }, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VAESDECLASTZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 33312 | /* 94083 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VAESDECLASTZrr), |
| 33313 | /* 94086 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33314 | /* 94088 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33315 | /* 94090 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33316 | /* 94092 */ GIR_RootConstrainSelectedInstOperands, |
| 33317 | /* 94093 */ // GIR_Coverage, 14086, |
| 33318 | /* 94093 */ GIR_EraseRootFromParent_Done, |
| 33319 | /* 94094 */ // Label 2046: @94094 |
| 33320 | /* 94094 */ GIM_Try, /*On fail goto*//*Label 2047*/ GIMT_Encode4(94139), // Rule ID 16797 // |
| 33321 | /* 94099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 33322 | /* 94102 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4key4512), |
| 33323 | /* 94107 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 33324 | /* 94110 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 33325 | /* 94113 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 33326 | /* 94116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33327 | /* 94120 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33328 | /* 94124 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33329 | /* 94128 */ // (intrinsic_wo_chain:{ *:[v16i32] } 16134:{ *:[iPTR] }, VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VSM4KEY4Zrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 33330 | /* 94128 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4KEY4Zrr), |
| 33331 | /* 94131 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33332 | /* 94133 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33333 | /* 94135 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33334 | /* 94137 */ GIR_RootConstrainSelectedInstOperands, |
| 33335 | /* 94138 */ // GIR_Coverage, 16797, |
| 33336 | /* 94138 */ GIR_EraseRootFromParent_Done, |
| 33337 | /* 94139 */ // Label 2047: @94139 |
| 33338 | /* 94139 */ GIM_Try, /*On fail goto*//*Label 2048*/ GIMT_Encode4(94184), // Rule ID 16803 // |
| 33339 | /* 94144 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasSM4), |
| 33340 | /* 94147 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm4rnds4512), |
| 33341 | /* 94152 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 33342 | /* 94155 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 33343 | /* 94158 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 33344 | /* 94161 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33345 | /* 94165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33346 | /* 94169 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 33347 | /* 94173 */ // (intrinsic_wo_chain:{ *:[v16i32] } 16137:{ *:[iPTR] }, VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VSM4RNDS4Zrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 33348 | /* 94173 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM4RNDS4Zrr), |
| 33349 | /* 94176 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33350 | /* 94178 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33351 | /* 94180 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 33352 | /* 94182 */ GIR_RootConstrainSelectedInstOperands, |
| 33353 | /* 94183 */ // GIR_Coverage, 16803, |
| 33354 | /* 94183 */ GIR_EraseRootFromParent_Done, |
| 33355 | /* 94184 */ // Label 2048: @94184 |
| 33356 | /* 94184 */ GIM_Reject, |
| 33357 | /* 94185 */ // Label 1941: @94185 |
| 33358 | /* 94185 */ GIM_Try, /*On fail goto*//*Label 2049*/ GIMT_Encode4(98066), |
| 33359 | /* 94190 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/5, |
| 33360 | /* 94193 */ GIM_Try, /*On fail goto*//*Label 2050*/ GIMT_Encode4(94274), // Rule ID 23616 // |
| 33361 | /* 94198 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33362 | /* 94201 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dpps), |
| 33363 | /* 94206 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33364 | /* 94209 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33365 | /* 94212 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33366 | /* 94215 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33367 | /* 94219 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33368 | /* 94223 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33369 | /* 94227 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33370 | /* 94230 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33371 | /* 94234 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33372 | /* 94238 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33373 | /* 94242 */ // MIs[0] src3 |
| 33374 | /* 94242 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33375 | /* 94245 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33376 | /* 94247 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33377 | /* 94254 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15970:{ *:[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) |
| 33378 | /* 94254 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSrmi), |
| 33379 | /* 94257 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33380 | /* 94259 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33381 | /* 94261 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33382 | /* 94265 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33383 | /* 94267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33384 | /* 94272 */ GIR_RootConstrainSelectedInstOperands, |
| 33385 | /* 94273 */ // GIR_Coverage, 23616, |
| 33386 | /* 94273 */ GIR_EraseRootFromParent_Done, |
| 33387 | /* 94274 */ // Label 2050: @94274 |
| 33388 | /* 94274 */ GIM_Try, /*On fail goto*//*Label 2051*/ GIMT_Encode4(94355), // Rule ID 23617 // |
| 33389 | /* 94279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33390 | /* 94282 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dppd), |
| 33391 | /* 94287 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33392 | /* 94290 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33393 | /* 94293 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33394 | /* 94296 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33395 | /* 94300 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33396 | /* 94304 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33397 | /* 94308 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33398 | /* 94311 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33399 | /* 94315 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33400 | /* 94319 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33401 | /* 94323 */ // MIs[0] src3 |
| 33402 | /* 94323 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33403 | /* 94326 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33404 | /* 94328 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33405 | /* 94335 */ // (intrinsic_wo_chain:{ *:[v2f64] } 15969:{ *:[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) |
| 33406 | /* 94335 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPDrmi), |
| 33407 | /* 94338 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33408 | /* 94340 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33409 | /* 94342 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33410 | /* 94346 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33411 | /* 94348 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33412 | /* 94353 */ GIR_RootConstrainSelectedInstOperands, |
| 33413 | /* 94354 */ // GIR_Coverage, 23617, |
| 33414 | /* 94354 */ GIR_EraseRootFromParent_Done, |
| 33415 | /* 94355 */ // Label 2051: @94355 |
| 33416 | /* 94355 */ GIM_Try, /*On fail goto*//*Label 2052*/ GIMT_Encode4(94436), // Rule ID 23618 // |
| 33417 | /* 94360 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33418 | /* 94363 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_dp_ps_256), |
| 33419 | /* 94368 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 33420 | /* 94371 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 33421 | /* 94374 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 33422 | /* 94377 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33423 | /* 94381 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33424 | /* 94385 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33425 | /* 94389 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33426 | /* 94392 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33427 | /* 94396 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33428 | /* 94400 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33429 | /* 94404 */ // MIs[0] src3 |
| 33430 | /* 94404 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33431 | /* 94407 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33432 | /* 94409 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33433 | /* 94416 */ // (intrinsic_wo_chain:{ *:[v8f32] } 14580:{ *:[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) |
| 33434 | /* 94416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSYrmi), |
| 33435 | /* 94419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33436 | /* 94421 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33437 | /* 94423 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33438 | /* 94427 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33439 | /* 94429 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33440 | /* 94434 */ GIR_RootConstrainSelectedInstOperands, |
| 33441 | /* 94435 */ // GIR_Coverage, 23618, |
| 33442 | /* 94435 */ GIR_EraseRootFromParent_Done, |
| 33443 | /* 94436 */ // Label 2052: @94436 |
| 33444 | /* 94436 */ GIM_Try, /*On fail goto*//*Label 2053*/ GIMT_Encode4(94517), // Rule ID 3254 // |
| 33445 | /* 94441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33446 | /* 94444 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dpps), |
| 33447 | /* 94449 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33448 | /* 94452 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33449 | /* 94455 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33450 | /* 94458 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33451 | /* 94462 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33452 | /* 94466 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33453 | /* 94470 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33454 | /* 94474 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33455 | /* 94477 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33456 | /* 94481 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33457 | /* 94485 */ // MIs[0] src3 |
| 33458 | /* 94485 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33459 | /* 94488 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33460 | /* 94490 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33461 | /* 94497 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15970:{ *:[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) |
| 33462 | /* 94497 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSrmi), |
| 33463 | /* 94500 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33464 | /* 94502 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33465 | /* 94504 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33466 | /* 94508 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33467 | /* 94510 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33468 | /* 94515 */ GIR_RootConstrainSelectedInstOperands, |
| 33469 | /* 94516 */ // GIR_Coverage, 3254, |
| 33470 | /* 94516 */ GIR_EraseRootFromParent_Done, |
| 33471 | /* 94517 */ // Label 2053: @94517 |
| 33472 | /* 94517 */ GIM_Try, /*On fail goto*//*Label 2054*/ GIMT_Encode4(94598), // Rule ID 3256 // |
| 33473 | /* 94522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33474 | /* 94525 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dppd), |
| 33475 | /* 94530 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33476 | /* 94533 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 33477 | /* 94536 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 33478 | /* 94539 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33479 | /* 94543 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33480 | /* 94547 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33481 | /* 94551 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33482 | /* 94555 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33483 | /* 94558 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33484 | /* 94562 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33485 | /* 94566 */ // MIs[0] src3 |
| 33486 | /* 94566 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33487 | /* 94569 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33488 | /* 94571 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33489 | /* 94578 */ // (intrinsic_wo_chain:{ *:[v2f64] } 15969:{ *:[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) |
| 33490 | /* 94578 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPDrmi), |
| 33491 | /* 94581 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33492 | /* 94583 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33493 | /* 94585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33494 | /* 94589 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33495 | /* 94591 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33496 | /* 94596 */ GIR_RootConstrainSelectedInstOperands, |
| 33497 | /* 94597 */ // GIR_Coverage, 3256, |
| 33498 | /* 94597 */ GIR_EraseRootFromParent_Done, |
| 33499 | /* 94598 */ // Label 2054: @94598 |
| 33500 | /* 94598 */ GIM_Try, /*On fail goto*//*Label 2055*/ GIMT_Encode4(94679), // Rule ID 3258 // |
| 33501 | /* 94603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 33502 | /* 94606 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_dp_ps_256), |
| 33503 | /* 94611 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 33504 | /* 94614 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 33505 | /* 94617 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 33506 | /* 94620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33507 | /* 94624 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 33508 | /* 94628 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33509 | /* 94632 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33510 | /* 94636 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33511 | /* 94639 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33512 | /* 94643 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33513 | /* 94647 */ // MIs[0] src3 |
| 33514 | /* 94647 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 33515 | /* 94650 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33516 | /* 94652 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33517 | /* 94659 */ // (intrinsic_wo_chain:{ *:[v8f32] } 14580:{ *:[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) |
| 33518 | /* 94659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSYrmi), |
| 33519 | /* 94662 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33520 | /* 94664 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33521 | /* 94666 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33522 | /* 94670 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33523 | /* 94672 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33524 | /* 94677 */ GIR_RootConstrainSelectedInstOperands, |
| 33525 | /* 94678 */ // GIR_Coverage, 3258, |
| 33526 | /* 94678 */ GIR_EraseRootFromParent_Done, |
| 33527 | /* 94679 */ // Label 2055: @94679 |
| 33528 | /* 94679 */ GIM_Try, /*On fail goto*//*Label 2056*/ GIMT_Encode4(94764), // Rule ID 23418 // |
| 33529 | /* 94684 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33530 | /* 94687 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcswd), |
| 33531 | /* 94692 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33532 | /* 94695 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33533 | /* 94698 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33534 | /* 94701 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33535 | /* 94704 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33536 | /* 94708 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33537 | /* 94712 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33538 | /* 94716 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33539 | /* 94719 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33540 | /* 94723 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33541 | /* 94727 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33542 | /* 94731 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33543 | /* 94735 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33544 | /* 94737 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33545 | /* 94744 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16189:{ *:[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) |
| 33546 | /* 94744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSWDrm), |
| 33547 | /* 94747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33548 | /* 94749 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33549 | /* 94751 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33550 | /* 94755 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33551 | /* 94757 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33552 | /* 94762 */ GIR_RootConstrainSelectedInstOperands, |
| 33553 | /* 94763 */ // GIR_Coverage, 23418, |
| 33554 | /* 94763 */ GIR_EraseRootFromParent_Done, |
| 33555 | /* 94764 */ // Label 2056: @94764 |
| 33556 | /* 94764 */ GIM_Try, /*On fail goto*//*Label 2057*/ GIMT_Encode4(94849), // Rule ID 23419 // |
| 33557 | /* 94769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33558 | /* 94772 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcsswd), |
| 33559 | /* 94777 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33560 | /* 94780 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33561 | /* 94783 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33562 | /* 94786 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33563 | /* 94789 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33564 | /* 94793 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33565 | /* 94797 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33566 | /* 94801 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33567 | /* 94804 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33568 | /* 94808 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33569 | /* 94812 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33570 | /* 94816 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33571 | /* 94820 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33572 | /* 94822 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33573 | /* 94829 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16188:{ *:[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) |
| 33574 | /* 94829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSSWDrm), |
| 33575 | /* 94832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33576 | /* 94834 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33577 | /* 94836 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33578 | /* 94840 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33579 | /* 94842 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33580 | /* 94847 */ GIR_RootConstrainSelectedInstOperands, |
| 33581 | /* 94848 */ // GIR_Coverage, 23419, |
| 33582 | /* 94848 */ GIR_EraseRootFromParent_Done, |
| 33583 | /* 94849 */ // Label 2057: @94849 |
| 33584 | /* 94849 */ GIM_Try, /*On fail goto*//*Label 2058*/ GIMT_Encode4(94934), // Rule ID 23420 // |
| 33585 | /* 94854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33586 | /* 94857 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsww), |
| 33587 | /* 94862 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 33588 | /* 94865 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33589 | /* 94868 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33590 | /* 94871 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 33591 | /* 94874 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33592 | /* 94878 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33593 | /* 94882 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33594 | /* 94886 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33595 | /* 94889 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33596 | /* 94893 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33597 | /* 94897 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33598 | /* 94901 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33599 | /* 94905 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33600 | /* 94907 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33601 | /* 94914 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16187:{ *:[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) |
| 33602 | /* 94914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrm), |
| 33603 | /* 94917 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33604 | /* 94919 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33605 | /* 94921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33606 | /* 94925 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33607 | /* 94927 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33608 | /* 94932 */ GIR_RootConstrainSelectedInstOperands, |
| 33609 | /* 94933 */ // GIR_Coverage, 23420, |
| 33610 | /* 94933 */ GIR_EraseRootFromParent_Done, |
| 33611 | /* 94934 */ // Label 2058: @94934 |
| 33612 | /* 94934 */ GIM_Try, /*On fail goto*//*Label 2059*/ GIMT_Encode4(95019), // Rule ID 23421 // |
| 33613 | /* 94939 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33614 | /* 94942 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacswd), |
| 33615 | /* 94947 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33616 | /* 94950 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33617 | /* 94953 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33618 | /* 94956 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33619 | /* 94959 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33620 | /* 94963 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33621 | /* 94967 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33622 | /* 94971 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33623 | /* 94974 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33624 | /* 94978 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33625 | /* 94982 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33626 | /* 94986 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33627 | /* 94990 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33628 | /* 94992 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33629 | /* 94999 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16186:{ *:[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) |
| 33630 | /* 94999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWDrm), |
| 33631 | /* 95002 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33632 | /* 95004 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33633 | /* 95006 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33634 | /* 95010 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33635 | /* 95012 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33636 | /* 95017 */ GIR_RootConstrainSelectedInstOperands, |
| 33637 | /* 95018 */ // GIR_Coverage, 23421, |
| 33638 | /* 95018 */ GIR_EraseRootFromParent_Done, |
| 33639 | /* 95019 */ // Label 2059: @95019 |
| 33640 | /* 95019 */ GIM_Try, /*On fail goto*//*Label 2060*/ GIMT_Encode4(95104), // Rule ID 23422 // |
| 33641 | /* 95024 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33642 | /* 95027 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssww), |
| 33643 | /* 95032 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 33644 | /* 95035 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33645 | /* 95038 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33646 | /* 95041 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 33647 | /* 95044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33648 | /* 95048 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33649 | /* 95052 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33650 | /* 95056 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33651 | /* 95059 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33652 | /* 95063 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33653 | /* 95067 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33654 | /* 95071 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33655 | /* 95075 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33656 | /* 95077 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33657 | /* 95084 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16185:{ *:[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) |
| 33658 | /* 95084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWWrm), |
| 33659 | /* 95087 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33660 | /* 95089 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33661 | /* 95091 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33662 | /* 95095 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33663 | /* 95097 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33664 | /* 95102 */ GIR_RootConstrainSelectedInstOperands, |
| 33665 | /* 95103 */ // GIR_Coverage, 23422, |
| 33666 | /* 95103 */ GIR_EraseRootFromParent_Done, |
| 33667 | /* 95104 */ // Label 2060: @95104 |
| 33668 | /* 95104 */ GIM_Try, /*On fail goto*//*Label 2061*/ GIMT_Encode4(95189), // Rule ID 23423 // |
| 33669 | /* 95109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33670 | /* 95112 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsswd), |
| 33671 | /* 95117 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33672 | /* 95120 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33673 | /* 95123 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33674 | /* 95126 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33675 | /* 95129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33676 | /* 95133 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33677 | /* 95137 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33678 | /* 95141 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33679 | /* 95144 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33680 | /* 95148 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33681 | /* 95152 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33682 | /* 95156 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33683 | /* 95160 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33684 | /* 95162 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33685 | /* 95169 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16184:{ *:[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) |
| 33686 | /* 95169 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWDrm), |
| 33687 | /* 95172 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33688 | /* 95174 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33689 | /* 95176 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33690 | /* 95180 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33691 | /* 95182 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33692 | /* 95187 */ GIR_RootConstrainSelectedInstOperands, |
| 33693 | /* 95188 */ // GIR_Coverage, 23423, |
| 33694 | /* 95188 */ GIR_EraseRootFromParent_Done, |
| 33695 | /* 95189 */ // Label 2061: @95189 |
| 33696 | /* 95189 */ GIM_Try, /*On fail goto*//*Label 2062*/ GIMT_Encode4(95274), // Rule ID 23424 // |
| 33697 | /* 95194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33698 | /* 95197 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdql), |
| 33699 | /* 95202 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33700 | /* 95205 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33701 | /* 95208 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33702 | /* 95211 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 33703 | /* 95214 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33704 | /* 95218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33705 | /* 95222 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33706 | /* 95226 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33707 | /* 95229 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33708 | /* 95233 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33709 | /* 95237 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33710 | /* 95241 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33711 | /* 95245 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33712 | /* 95247 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33713 | /* 95254 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16183:{ *:[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) |
| 33714 | /* 95254 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQLrm), |
| 33715 | /* 95257 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33716 | /* 95259 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33717 | /* 95261 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33718 | /* 95265 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33719 | /* 95267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33720 | /* 95272 */ GIR_RootConstrainSelectedInstOperands, |
| 33721 | /* 95273 */ // GIR_Coverage, 23424, |
| 33722 | /* 95273 */ GIR_EraseRootFromParent_Done, |
| 33723 | /* 95274 */ // Label 2062: @95274 |
| 33724 | /* 95274 */ GIM_Try, /*On fail goto*//*Label 2063*/ GIMT_Encode4(95359), // Rule ID 23425 // |
| 33725 | /* 95279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33726 | /* 95282 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdqh), |
| 33727 | /* 95287 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33728 | /* 95290 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33729 | /* 95293 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33730 | /* 95296 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 33731 | /* 95299 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33732 | /* 95303 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33733 | /* 95307 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33734 | /* 95311 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33735 | /* 95314 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33736 | /* 95318 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33737 | /* 95322 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33738 | /* 95326 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33739 | /* 95330 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33740 | /* 95332 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33741 | /* 95339 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16182:{ *:[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) |
| 33742 | /* 95339 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQHrm), |
| 33743 | /* 95342 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33744 | /* 95344 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33745 | /* 95346 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33746 | /* 95350 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33747 | /* 95352 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33748 | /* 95357 */ GIR_RootConstrainSelectedInstOperands, |
| 33749 | /* 95358 */ // GIR_Coverage, 23425, |
| 33750 | /* 95358 */ GIR_EraseRootFromParent_Done, |
| 33751 | /* 95359 */ // Label 2063: @95359 |
| 33752 | /* 95359 */ GIM_Try, /*On fail goto*//*Label 2064*/ GIMT_Encode4(95444), // Rule ID 23426 // |
| 33753 | /* 95364 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33754 | /* 95367 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdd), |
| 33755 | /* 95372 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33756 | /* 95375 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33757 | /* 95378 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33758 | /* 95381 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33759 | /* 95384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33760 | /* 95388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33761 | /* 95392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33762 | /* 95396 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33763 | /* 95399 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33764 | /* 95403 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33765 | /* 95407 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33766 | /* 95411 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33767 | /* 95415 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33768 | /* 95417 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33769 | /* 95424 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16181:{ *:[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) |
| 33770 | /* 95424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDDrm), |
| 33771 | /* 95427 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33772 | /* 95429 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33773 | /* 95431 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33774 | /* 95435 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33775 | /* 95437 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33776 | /* 95442 */ GIR_RootConstrainSelectedInstOperands, |
| 33777 | /* 95443 */ // GIR_Coverage, 23426, |
| 33778 | /* 95443 */ GIR_EraseRootFromParent_Done, |
| 33779 | /* 95444 */ // Label 2064: @95444 |
| 33780 | /* 95444 */ GIM_Try, /*On fail goto*//*Label 2065*/ GIMT_Encode4(95529), // Rule ID 23427 // |
| 33781 | /* 95449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33782 | /* 95452 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdql), |
| 33783 | /* 95457 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33784 | /* 95460 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33785 | /* 95463 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33786 | /* 95466 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 33787 | /* 95469 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33788 | /* 95473 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33789 | /* 95477 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33790 | /* 95481 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33791 | /* 95484 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33792 | /* 95488 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33793 | /* 95492 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33794 | /* 95496 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33795 | /* 95500 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33796 | /* 95502 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33797 | /* 95509 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16180:{ *:[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) |
| 33798 | /* 95509 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQLrm), |
| 33799 | /* 95512 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33800 | /* 95514 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33801 | /* 95516 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33802 | /* 95520 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33803 | /* 95522 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33804 | /* 95527 */ GIR_RootConstrainSelectedInstOperands, |
| 33805 | /* 95528 */ // GIR_Coverage, 23427, |
| 33806 | /* 95528 */ GIR_EraseRootFromParent_Done, |
| 33807 | /* 95529 */ // Label 2065: @95529 |
| 33808 | /* 95529 */ GIM_Try, /*On fail goto*//*Label 2066*/ GIMT_Encode4(95614), // Rule ID 23428 // |
| 33809 | /* 95534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33810 | /* 95537 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdqh), |
| 33811 | /* 95542 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 33812 | /* 95545 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33813 | /* 95548 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33814 | /* 95551 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 33815 | /* 95554 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33816 | /* 95558 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33817 | /* 95562 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33818 | /* 95566 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33819 | /* 95569 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33820 | /* 95573 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33821 | /* 95577 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33822 | /* 95581 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33823 | /* 95585 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33824 | /* 95587 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33825 | /* 95594 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16179:{ *:[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) |
| 33826 | /* 95594 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQHrm), |
| 33827 | /* 95597 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33828 | /* 95599 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33829 | /* 95601 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33830 | /* 95605 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33831 | /* 95607 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33832 | /* 95612 */ GIR_RootConstrainSelectedInstOperands, |
| 33833 | /* 95613 */ // GIR_Coverage, 23428, |
| 33834 | /* 95613 */ GIR_EraseRootFromParent_Done, |
| 33835 | /* 95614 */ // Label 2066: @95614 |
| 33836 | /* 95614 */ GIM_Try, /*On fail goto*//*Label 2067*/ GIMT_Encode4(95699), // Rule ID 23429 // |
| 33837 | /* 95619 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33838 | /* 95622 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdd), |
| 33839 | /* 95627 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33840 | /* 95630 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 33841 | /* 95633 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 33842 | /* 95636 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33843 | /* 95639 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33844 | /* 95643 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 33845 | /* 95647 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33846 | /* 95651 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33847 | /* 95654 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33848 | /* 95658 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33849 | /* 95662 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33850 | /* 95666 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33851 | /* 95670 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33852 | /* 95672 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33853 | /* 95679 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16178:{ *:[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) |
| 33854 | /* 95679 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrm), |
| 33855 | /* 95682 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33856 | /* 95684 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 33857 | /* 95686 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33858 | /* 95690 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33859 | /* 95692 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33860 | /* 95697 */ GIR_RootConstrainSelectedInstOperands, |
| 33861 | /* 95698 */ // GIR_Coverage, 23429, |
| 33862 | /* 95698 */ GIR_EraseRootFromParent_Done, |
| 33863 | /* 95699 */ // Label 2067: @95699 |
| 33864 | /* 95699 */ GIM_Try, /*On fail goto*//*Label 2068*/ GIMT_Encode4(95784), // Rule ID 1620 // |
| 33865 | /* 95704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33866 | /* 95707 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcswd), |
| 33867 | /* 95712 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33868 | /* 95715 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33869 | /* 95718 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33870 | /* 95721 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33871 | /* 95724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33872 | /* 95728 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33873 | /* 95732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33874 | /* 95736 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33875 | /* 95740 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33876 | /* 95743 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33877 | /* 95747 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33878 | /* 95751 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33879 | /* 95755 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33880 | /* 95757 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33881 | /* 95764 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16189:{ *:[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) |
| 33882 | /* 95764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSWDrm), |
| 33883 | /* 95767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33884 | /* 95769 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33885 | /* 95771 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33886 | /* 95775 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33887 | /* 95777 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33888 | /* 95782 */ GIR_RootConstrainSelectedInstOperands, |
| 33889 | /* 95783 */ // GIR_Coverage, 1620, |
| 33890 | /* 95783 */ GIR_EraseRootFromParent_Done, |
| 33891 | /* 95784 */ // Label 2068: @95784 |
| 33892 | /* 95784 */ GIM_Try, /*On fail goto*//*Label 2069*/ GIMT_Encode4(95869), // Rule ID 1622 // |
| 33893 | /* 95789 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33894 | /* 95792 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcsswd), |
| 33895 | /* 95797 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33896 | /* 95800 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33897 | /* 95803 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33898 | /* 95806 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33899 | /* 95809 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33900 | /* 95813 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33901 | /* 95817 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33902 | /* 95821 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33903 | /* 95825 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33904 | /* 95828 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33905 | /* 95832 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33906 | /* 95836 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33907 | /* 95840 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33908 | /* 95842 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33909 | /* 95849 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16188:{ *:[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) |
| 33910 | /* 95849 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSSWDrm), |
| 33911 | /* 95852 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33912 | /* 95854 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33913 | /* 95856 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33914 | /* 95860 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33915 | /* 95862 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33916 | /* 95867 */ GIR_RootConstrainSelectedInstOperands, |
| 33917 | /* 95868 */ // GIR_Coverage, 1622, |
| 33918 | /* 95868 */ GIR_EraseRootFromParent_Done, |
| 33919 | /* 95869 */ // Label 2069: @95869 |
| 33920 | /* 95869 */ GIM_Try, /*On fail goto*//*Label 2070*/ GIMT_Encode4(95954), // Rule ID 1624 // |
| 33921 | /* 95874 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33922 | /* 95877 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsww), |
| 33923 | /* 95882 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 33924 | /* 95885 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33925 | /* 95888 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33926 | /* 95891 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 33927 | /* 95894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33928 | /* 95898 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33929 | /* 95902 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33930 | /* 95906 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33931 | /* 95910 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33932 | /* 95913 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33933 | /* 95917 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33934 | /* 95921 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33935 | /* 95925 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33936 | /* 95927 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33937 | /* 95934 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16187:{ *:[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) |
| 33938 | /* 95934 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrm), |
| 33939 | /* 95937 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33940 | /* 95939 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33941 | /* 95941 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33942 | /* 95945 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33943 | /* 95947 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33944 | /* 95952 */ GIR_RootConstrainSelectedInstOperands, |
| 33945 | /* 95953 */ // GIR_Coverage, 1624, |
| 33946 | /* 95953 */ GIR_EraseRootFromParent_Done, |
| 33947 | /* 95954 */ // Label 2070: @95954 |
| 33948 | /* 95954 */ GIM_Try, /*On fail goto*//*Label 2071*/ GIMT_Encode4(96039), // Rule ID 1626 // |
| 33949 | /* 95959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33950 | /* 95962 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacswd), |
| 33951 | /* 95967 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 33952 | /* 95970 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33953 | /* 95973 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33954 | /* 95976 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 33955 | /* 95979 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33956 | /* 95983 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33957 | /* 95987 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33958 | /* 95991 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33959 | /* 95995 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33960 | /* 95998 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33961 | /* 96002 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33962 | /* 96006 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33963 | /* 96010 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33964 | /* 96012 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33965 | /* 96019 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16186:{ *:[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) |
| 33966 | /* 96019 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWDrm), |
| 33967 | /* 96022 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33968 | /* 96024 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33969 | /* 96026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33970 | /* 96030 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33971 | /* 96032 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 33972 | /* 96037 */ GIR_RootConstrainSelectedInstOperands, |
| 33973 | /* 96038 */ // GIR_Coverage, 1626, |
| 33974 | /* 96038 */ GIR_EraseRootFromParent_Done, |
| 33975 | /* 96039 */ // Label 2071: @96039 |
| 33976 | /* 96039 */ GIM_Try, /*On fail goto*//*Label 2072*/ GIMT_Encode4(96124), // Rule ID 1628 // |
| 33977 | /* 96044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 33978 | /* 96047 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssww), |
| 33979 | /* 96052 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 33980 | /* 96055 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 33981 | /* 96058 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 33982 | /* 96061 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 33983 | /* 96064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33984 | /* 96068 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33985 | /* 96072 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 33986 | /* 96076 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 33987 | /* 96080 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 33988 | /* 96083 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 33989 | /* 96087 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 33990 | /* 96091 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 33991 | /* 96095 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 33992 | /* 96097 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 33993 | /* 96104 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16185:{ *:[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) |
| 33994 | /* 96104 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWWrm), |
| 33995 | /* 96107 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 33996 | /* 96109 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 33997 | /* 96111 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 33998 | /* 96115 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 33999 | /* 96117 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34000 | /* 96122 */ GIR_RootConstrainSelectedInstOperands, |
| 34001 | /* 96123 */ // GIR_Coverage, 1628, |
| 34002 | /* 96123 */ GIR_EraseRootFromParent_Done, |
| 34003 | /* 96124 */ // Label 2072: @96124 |
| 34004 | /* 96124 */ GIM_Try, /*On fail goto*//*Label 2073*/ GIMT_Encode4(96209), // Rule ID 1630 // |
| 34005 | /* 96129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34006 | /* 96132 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsswd), |
| 34007 | /* 96137 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34008 | /* 96140 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34009 | /* 96143 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34010 | /* 96146 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34011 | /* 96149 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34012 | /* 96153 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34013 | /* 96157 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34014 | /* 96161 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34015 | /* 96165 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34016 | /* 96168 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34017 | /* 96172 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34018 | /* 96176 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34019 | /* 96180 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34020 | /* 96182 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34021 | /* 96189 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16184:{ *:[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) |
| 34022 | /* 96189 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWDrm), |
| 34023 | /* 96192 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34024 | /* 96194 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34025 | /* 96196 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34026 | /* 96200 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34027 | /* 96202 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34028 | /* 96207 */ GIR_RootConstrainSelectedInstOperands, |
| 34029 | /* 96208 */ // GIR_Coverage, 1630, |
| 34030 | /* 96208 */ GIR_EraseRootFromParent_Done, |
| 34031 | /* 96209 */ // Label 2073: @96209 |
| 34032 | /* 96209 */ GIM_Try, /*On fail goto*//*Label 2074*/ GIMT_Encode4(96294), // Rule ID 1632 // |
| 34033 | /* 96214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34034 | /* 96217 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdql), |
| 34035 | /* 96222 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34036 | /* 96225 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34037 | /* 96228 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34038 | /* 96231 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34039 | /* 96234 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34040 | /* 96238 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34041 | /* 96242 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34042 | /* 96246 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34043 | /* 96250 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34044 | /* 96253 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34045 | /* 96257 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34046 | /* 96261 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34047 | /* 96265 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34048 | /* 96267 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34049 | /* 96274 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16183:{ *:[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) |
| 34050 | /* 96274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQLrm), |
| 34051 | /* 96277 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34052 | /* 96279 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34053 | /* 96281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34054 | /* 96285 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34055 | /* 96287 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34056 | /* 96292 */ GIR_RootConstrainSelectedInstOperands, |
| 34057 | /* 96293 */ // GIR_Coverage, 1632, |
| 34058 | /* 96293 */ GIR_EraseRootFromParent_Done, |
| 34059 | /* 96294 */ // Label 2074: @96294 |
| 34060 | /* 96294 */ GIM_Try, /*On fail goto*//*Label 2075*/ GIMT_Encode4(96379), // Rule ID 1634 // |
| 34061 | /* 96299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34062 | /* 96302 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdqh), |
| 34063 | /* 96307 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34064 | /* 96310 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34065 | /* 96313 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34066 | /* 96316 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34067 | /* 96319 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34068 | /* 96323 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34069 | /* 96327 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34070 | /* 96331 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34071 | /* 96335 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34072 | /* 96338 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34073 | /* 96342 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34074 | /* 96346 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34075 | /* 96350 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34076 | /* 96352 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34077 | /* 96359 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16182:{ *:[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) |
| 34078 | /* 96359 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQHrm), |
| 34079 | /* 96362 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34080 | /* 96364 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34081 | /* 96366 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34082 | /* 96370 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34083 | /* 96372 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34084 | /* 96377 */ GIR_RootConstrainSelectedInstOperands, |
| 34085 | /* 96378 */ // GIR_Coverage, 1634, |
| 34086 | /* 96378 */ GIR_EraseRootFromParent_Done, |
| 34087 | /* 96379 */ // Label 2075: @96379 |
| 34088 | /* 96379 */ GIM_Try, /*On fail goto*//*Label 2076*/ GIMT_Encode4(96464), // Rule ID 1636 // |
| 34089 | /* 96384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34090 | /* 96387 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdd), |
| 34091 | /* 96392 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34092 | /* 96395 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34093 | /* 96398 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34094 | /* 96401 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34095 | /* 96404 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34096 | /* 96408 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34097 | /* 96412 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34098 | /* 96416 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34099 | /* 96420 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34100 | /* 96423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34101 | /* 96427 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34102 | /* 96431 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34103 | /* 96435 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34104 | /* 96437 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34105 | /* 96444 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16181:{ *:[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) |
| 34106 | /* 96444 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDDrm), |
| 34107 | /* 96447 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34108 | /* 96449 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34109 | /* 96451 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34110 | /* 96455 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34111 | /* 96457 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34112 | /* 96462 */ GIR_RootConstrainSelectedInstOperands, |
| 34113 | /* 96463 */ // GIR_Coverage, 1636, |
| 34114 | /* 96463 */ GIR_EraseRootFromParent_Done, |
| 34115 | /* 96464 */ // Label 2076: @96464 |
| 34116 | /* 96464 */ GIM_Try, /*On fail goto*//*Label 2077*/ GIMT_Encode4(96549), // Rule ID 1638 // |
| 34117 | /* 96469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34118 | /* 96472 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdql), |
| 34119 | /* 96477 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34120 | /* 96480 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34121 | /* 96483 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34122 | /* 96486 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34123 | /* 96489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34124 | /* 96493 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34125 | /* 96497 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34126 | /* 96501 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34127 | /* 96505 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34128 | /* 96508 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34129 | /* 96512 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34130 | /* 96516 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34131 | /* 96520 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34132 | /* 96522 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34133 | /* 96529 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16180:{ *:[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) |
| 34134 | /* 96529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQLrm), |
| 34135 | /* 96532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34136 | /* 96534 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34137 | /* 96536 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34138 | /* 96540 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34139 | /* 96542 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34140 | /* 96547 */ GIR_RootConstrainSelectedInstOperands, |
| 34141 | /* 96548 */ // GIR_Coverage, 1638, |
| 34142 | /* 96548 */ GIR_EraseRootFromParent_Done, |
| 34143 | /* 96549 */ // Label 2077: @96549 |
| 34144 | /* 96549 */ GIM_Try, /*On fail goto*//*Label 2078*/ GIMT_Encode4(96634), // Rule ID 1640 // |
| 34145 | /* 96554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34146 | /* 96557 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdqh), |
| 34147 | /* 96562 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34148 | /* 96565 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34149 | /* 96568 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34150 | /* 96571 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34151 | /* 96574 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34152 | /* 96578 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34153 | /* 96582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34154 | /* 96586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34155 | /* 96590 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34156 | /* 96593 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34157 | /* 96597 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34158 | /* 96601 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34159 | /* 96605 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34160 | /* 96607 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34161 | /* 96614 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16179:{ *:[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) |
| 34162 | /* 96614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQHrm), |
| 34163 | /* 96617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34164 | /* 96619 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34165 | /* 96621 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34166 | /* 96625 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34167 | /* 96627 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34168 | /* 96632 */ GIR_RootConstrainSelectedInstOperands, |
| 34169 | /* 96633 */ // GIR_Coverage, 1640, |
| 34170 | /* 96633 */ GIR_EraseRootFromParent_Done, |
| 34171 | /* 96634 */ // Label 2078: @96634 |
| 34172 | /* 96634 */ GIM_Try, /*On fail goto*//*Label 2079*/ GIMT_Encode4(96719), // Rule ID 1642 // |
| 34173 | /* 96639 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34174 | /* 96642 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdd), |
| 34175 | /* 96647 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34176 | /* 96650 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34177 | /* 96653 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34178 | /* 96656 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34179 | /* 96659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34180 | /* 96663 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34181 | /* 96667 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 34182 | /* 96671 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34183 | /* 96675 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34184 | /* 96678 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34185 | /* 96682 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34186 | /* 96686 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34187 | /* 96690 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34188 | /* 96692 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34189 | /* 96699 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16178:{ *:[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) |
| 34190 | /* 96699 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrm), |
| 34191 | /* 96702 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34192 | /* 96704 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34193 | /* 96706 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 34194 | /* 96710 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34195 | /* 96712 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34196 | /* 96717 */ GIR_RootConstrainSelectedInstOperands, |
| 34197 | /* 96718 */ // GIR_Coverage, 1642, |
| 34198 | /* 96718 */ GIR_EraseRootFromParent_Done, |
| 34199 | /* 96719 */ // Label 2079: @96719 |
| 34200 | /* 96719 */ GIM_Try, /*On fail goto*//*Label 2080*/ GIMT_Encode4(96804), // Rule ID 3559 // |
| 34201 | /* 96724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 34202 | /* 96727 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3msg1), |
| 34203 | /* 96732 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34204 | /* 96735 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34205 | /* 96738 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34206 | /* 96741 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34207 | /* 96744 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34208 | /* 96748 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34209 | /* 96752 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34210 | /* 96756 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/4, // MIs[1] |
| 34211 | /* 96760 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34212 | /* 96764 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34213 | /* 96767 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34214 | /* 96771 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34215 | /* 96775 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34216 | /* 96777 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34217 | /* 96784 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16129:{ *:[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) |
| 34218 | /* 96784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3MSG1rm), |
| 34219 | /* 96787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34220 | /* 96789 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34221 | /* 96791 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34222 | /* 96793 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 34223 | /* 96797 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34224 | /* 96802 */ GIR_RootConstrainSelectedInstOperands, |
| 34225 | /* 96803 */ // GIR_Coverage, 3559, |
| 34226 | /* 96803 */ GIR_EraseRootFromParent_Done, |
| 34227 | /* 96804 */ // Label 2080: @96804 |
| 34228 | /* 96804 */ GIM_Try, /*On fail goto*//*Label 2081*/ GIMT_Encode4(96889), // Rule ID 3561 // |
| 34229 | /* 96809 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 34230 | /* 96812 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3msg2), |
| 34231 | /* 96817 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34232 | /* 96820 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34233 | /* 96823 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34234 | /* 96826 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34235 | /* 96829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34236 | /* 96833 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34237 | /* 96837 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34238 | /* 96841 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/4, // MIs[1] |
| 34239 | /* 96845 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34240 | /* 96849 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34241 | /* 96852 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34242 | /* 96856 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34243 | /* 96860 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34244 | /* 96862 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34245 | /* 96869 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16130:{ *:[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) |
| 34246 | /* 96869 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3MSG2rm), |
| 34247 | /* 96872 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34248 | /* 96874 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34249 | /* 96876 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34250 | /* 96878 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 34251 | /* 96882 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34252 | /* 96887 */ GIR_RootConstrainSelectedInstOperands, |
| 34253 | /* 96888 */ // GIR_Coverage, 3561, |
| 34254 | /* 96888 */ GIR_EraseRootFromParent_Done, |
| 34255 | /* 96889 */ // Label 2081: @96889 |
| 34256 | /* 96889 */ GIM_Try, /*On fail goto*//*Label 2082*/ GIMT_Encode4(96939), // Rule ID 3253 // |
| 34257 | /* 96894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34258 | /* 96897 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dpps), |
| 34259 | /* 96902 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34260 | /* 96905 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34261 | /* 96908 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34262 | /* 96911 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34263 | /* 96915 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34264 | /* 96919 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34265 | /* 96923 */ // MIs[0] src3 |
| 34266 | /* 96923 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34267 | /* 96926 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15970:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (timm:{ *:[i8] }):$src3) => (VDPPSrri:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34268 | /* 96926 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSrri), |
| 34269 | /* 96929 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34270 | /* 96931 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34271 | /* 96933 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34272 | /* 96935 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34273 | /* 96937 */ GIR_RootConstrainSelectedInstOperands, |
| 34274 | /* 96938 */ // GIR_Coverage, 3253, |
| 34275 | /* 96938 */ GIR_EraseRootFromParent_Done, |
| 34276 | /* 96939 */ // Label 2082: @96939 |
| 34277 | /* 96939 */ GIM_Try, /*On fail goto*//*Label 2083*/ GIMT_Encode4(96989), // Rule ID 3255 // |
| 34278 | /* 96944 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34279 | /* 96947 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dppd), |
| 34280 | /* 96952 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34281 | /* 96955 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 34282 | /* 96958 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 34283 | /* 96961 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34284 | /* 96965 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34285 | /* 96969 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34286 | /* 96973 */ // MIs[0] src3 |
| 34287 | /* 96973 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34288 | /* 96976 */ // (intrinsic_wo_chain:{ *:[v2f64] } 15969:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (timm:{ *:[i8] }):$src3) => (VDPPDrri:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34289 | /* 96976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPDrri), |
| 34290 | /* 96979 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34291 | /* 96981 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34292 | /* 96983 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34293 | /* 96985 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34294 | /* 96987 */ GIR_RootConstrainSelectedInstOperands, |
| 34295 | /* 96988 */ // GIR_Coverage, 3255, |
| 34296 | /* 96988 */ GIR_EraseRootFromParent_Done, |
| 34297 | /* 96989 */ // Label 2083: @96989 |
| 34298 | /* 96989 */ GIM_Try, /*On fail goto*//*Label 2084*/ GIMT_Encode4(97039), // Rule ID 3257 // |
| 34299 | /* 96994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34300 | /* 96997 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_dp_ps_256), |
| 34301 | /* 97002 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 34302 | /* 97005 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 34303 | /* 97008 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 34304 | /* 97011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34305 | /* 97015 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34306 | /* 97019 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34307 | /* 97023 */ // MIs[0] src3 |
| 34308 | /* 97023 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34309 | /* 97026 */ // (intrinsic_wo_chain:{ *:[v8f32] } 14580:{ *:[iPTR] }, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, (timm:{ *:[i8] }):$src3) => (VDPPSYrri:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34310 | /* 97026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDPPSYrri), |
| 34311 | /* 97029 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34312 | /* 97031 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34313 | /* 97033 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34314 | /* 97035 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34315 | /* 97037 */ GIR_RootConstrainSelectedInstOperands, |
| 34316 | /* 97038 */ // GIR_Coverage, 3257, |
| 34317 | /* 97038 */ GIR_EraseRootFromParent_Done, |
| 34318 | /* 97039 */ // Label 2084: @97039 |
| 34319 | /* 97039 */ GIM_Try, /*On fail goto*//*Label 2085*/ GIMT_Encode4(97089), // Rule ID 3263 // |
| 34320 | /* 97044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 34321 | /* 97047 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dpps), |
| 34322 | /* 97052 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34323 | /* 97055 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34324 | /* 97058 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34325 | /* 97061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34326 | /* 97065 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34327 | /* 97069 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34328 | /* 97073 */ // MIs[0] src3 |
| 34329 | /* 97073 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34330 | /* 97076 */ // (intrinsic_wo_chain:{ *:[v4f32] } 15970:{ *:[iPTR] }, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (timm:{ *:[i8] }):$src3) => (DPPSrri:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34331 | /* 97076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DPPSrri), |
| 34332 | /* 97079 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34333 | /* 97081 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34334 | /* 97083 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34335 | /* 97085 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34336 | /* 97087 */ GIR_RootConstrainSelectedInstOperands, |
| 34337 | /* 97088 */ // GIR_Coverage, 3263, |
| 34338 | /* 97088 */ GIR_EraseRootFromParent_Done, |
| 34339 | /* 97089 */ // Label 2085: @97089 |
| 34340 | /* 97089 */ GIM_Try, /*On fail goto*//*Label 2086*/ GIMT_Encode4(97139), // Rule ID 3265 // |
| 34341 | /* 97094 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 34342 | /* 97097 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse41_dppd), |
| 34343 | /* 97102 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34344 | /* 97105 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 34345 | /* 97108 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 34346 | /* 97111 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34347 | /* 97115 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34348 | /* 97119 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34349 | /* 97123 */ // MIs[0] src3 |
| 34350 | /* 97123 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34351 | /* 97126 */ // (intrinsic_wo_chain:{ *:[v2f64] } 15969:{ *:[iPTR] }, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (timm:{ *:[i8] }):$src3) => (DPPDrri:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34352 | /* 97126 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DPPDrri), |
| 34353 | /* 97129 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34354 | /* 97131 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34355 | /* 97133 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34356 | /* 97135 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34357 | /* 97137 */ GIR_RootConstrainSelectedInstOperands, |
| 34358 | /* 97138 */ // GIR_Coverage, 3265, |
| 34359 | /* 97138 */ GIR_EraseRootFromParent_Done, |
| 34360 | /* 97139 */ // Label 2086: @97139 |
| 34361 | /* 97139 */ GIM_Try, /*On fail goto*//*Label 2087*/ GIMT_Encode4(97189), // Rule ID 3325 // |
| 34362 | /* 97144 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 34363 | /* 97147 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha1rnds4), |
| 34364 | /* 97152 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34365 | /* 97155 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34366 | /* 97158 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34367 | /* 97161 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34368 | /* 97165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34369 | /* 97169 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34370 | /* 97173 */ // MIs[0] src3 |
| 34371 | /* 97173 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 34372 | /* 97176 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15856:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, (timm:{ *:[i8] }):$src3) => (SHA1RNDS4rri:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, (timm:{ *:[i8] }):$src3) |
| 34373 | /* 97176 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA1RNDS4rri), |
| 34374 | /* 97179 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34375 | /* 97181 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34376 | /* 97183 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34377 | /* 97185 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34378 | /* 97187 */ GIR_RootConstrainSelectedInstOperands, |
| 34379 | /* 97188 */ // GIR_Coverage, 3325, |
| 34380 | /* 97188 */ GIR_EraseRootFromParent_Done, |
| 34381 | /* 97189 */ // Label 2087: @97189 |
| 34382 | /* 97189 */ GIM_Try, /*On fail goto*//*Label 2088*/ GIMT_Encode4(97243), // Rule ID 1619 // |
| 34383 | /* 97194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34384 | /* 97197 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcswd), |
| 34385 | /* 97202 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34386 | /* 97205 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34387 | /* 97208 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34388 | /* 97211 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34389 | /* 97214 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34390 | /* 97218 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34391 | /* 97222 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34392 | /* 97226 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34393 | /* 97230 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16189:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMADCSWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34394 | /* 97230 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSWDrr), |
| 34395 | /* 97233 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34396 | /* 97235 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34397 | /* 97237 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34398 | /* 97239 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34399 | /* 97241 */ GIR_RootConstrainSelectedInstOperands, |
| 34400 | /* 97242 */ // GIR_Coverage, 1619, |
| 34401 | /* 97242 */ GIR_EraseRootFromParent_Done, |
| 34402 | /* 97243 */ // Label 2088: @97243 |
| 34403 | /* 97243 */ GIM_Try, /*On fail goto*//*Label 2089*/ GIMT_Encode4(97297), // Rule ID 1621 // |
| 34404 | /* 97248 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34405 | /* 97251 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmadcsswd), |
| 34406 | /* 97256 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34407 | /* 97259 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34408 | /* 97262 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34409 | /* 97265 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34410 | /* 97268 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34411 | /* 97272 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34412 | /* 97276 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34413 | /* 97280 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34414 | /* 97284 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16188:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMADCSSWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34415 | /* 97284 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMADCSSWDrr), |
| 34416 | /* 97287 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34417 | /* 97289 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34418 | /* 97291 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34419 | /* 97293 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34420 | /* 97295 */ GIR_RootConstrainSelectedInstOperands, |
| 34421 | /* 97296 */ // GIR_Coverage, 1621, |
| 34422 | /* 97296 */ GIR_EraseRootFromParent_Done, |
| 34423 | /* 97297 */ // Label 2089: @97297 |
| 34424 | /* 97297 */ GIM_Try, /*On fail goto*//*Label 2090*/ GIMT_Encode4(97351), // Rule ID 1623 // |
| 34425 | /* 97302 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34426 | /* 97305 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsww), |
| 34427 | /* 97310 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 34428 | /* 97313 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34429 | /* 97316 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34430 | /* 97319 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 34431 | /* 97322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34432 | /* 97326 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34433 | /* 97330 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34434 | /* 97334 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34435 | /* 97338 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16187:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) => (VPMACSWWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 34436 | /* 97338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWWrr), |
| 34437 | /* 97341 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34438 | /* 97343 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34439 | /* 97345 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34440 | /* 97347 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34441 | /* 97349 */ GIR_RootConstrainSelectedInstOperands, |
| 34442 | /* 97350 */ // GIR_Coverage, 1623, |
| 34443 | /* 97350 */ GIR_EraseRootFromParent_Done, |
| 34444 | /* 97351 */ // Label 2090: @97351 |
| 34445 | /* 97351 */ GIM_Try, /*On fail goto*//*Label 2091*/ GIMT_Encode4(97405), // Rule ID 1625 // |
| 34446 | /* 97356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34447 | /* 97359 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacswd), |
| 34448 | /* 97364 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34449 | /* 97367 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34450 | /* 97370 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34451 | /* 97373 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34452 | /* 97376 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34453 | /* 97380 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34454 | /* 97384 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34455 | /* 97388 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34456 | /* 97392 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16186:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMACSWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34457 | /* 97392 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSWDrr), |
| 34458 | /* 97395 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34459 | /* 97397 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34460 | /* 97399 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34461 | /* 97401 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34462 | /* 97403 */ GIR_RootConstrainSelectedInstOperands, |
| 34463 | /* 97404 */ // GIR_Coverage, 1625, |
| 34464 | /* 97404 */ GIR_EraseRootFromParent_Done, |
| 34465 | /* 97405 */ // Label 2091: @97405 |
| 34466 | /* 97405 */ GIM_Try, /*On fail goto*//*Label 2092*/ GIMT_Encode4(97459), // Rule ID 1627 // |
| 34467 | /* 97410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34468 | /* 97413 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssww), |
| 34469 | /* 97418 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 34470 | /* 97421 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34471 | /* 97424 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34472 | /* 97427 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 34473 | /* 97430 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34474 | /* 97434 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34475 | /* 97438 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34476 | /* 97442 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34477 | /* 97446 */ // (intrinsic_wo_chain:{ *:[v8i16] } 16185:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) => (VPMACSSWWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v8i16] }:$src3) |
| 34478 | /* 97446 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWWrr), |
| 34479 | /* 97449 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34480 | /* 97451 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34481 | /* 97453 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34482 | /* 97455 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34483 | /* 97457 */ GIR_RootConstrainSelectedInstOperands, |
| 34484 | /* 97458 */ // GIR_Coverage, 1627, |
| 34485 | /* 97458 */ GIR_EraseRootFromParent_Done, |
| 34486 | /* 97459 */ // Label 2092: @97459 |
| 34487 | /* 97459 */ GIM_Try, /*On fail goto*//*Label 2093*/ GIMT_Encode4(97513), // Rule ID 1629 // |
| 34488 | /* 97464 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34489 | /* 97467 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsswd), |
| 34490 | /* 97472 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34491 | /* 97475 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 34492 | /* 97478 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 34493 | /* 97481 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34494 | /* 97484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34495 | /* 97488 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34496 | /* 97492 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34497 | /* 97496 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34498 | /* 97500 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16184:{ *:[iPTR] }, VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMACSSWDrr:{ *:[v4i32] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34499 | /* 97500 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSWDrr), |
| 34500 | /* 97503 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34501 | /* 97505 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34502 | /* 97507 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34503 | /* 97509 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34504 | /* 97511 */ GIR_RootConstrainSelectedInstOperands, |
| 34505 | /* 97512 */ // GIR_Coverage, 1629, |
| 34506 | /* 97512 */ GIR_EraseRootFromParent_Done, |
| 34507 | /* 97513 */ // Label 2093: @97513 |
| 34508 | /* 97513 */ GIM_Try, /*On fail goto*//*Label 2094*/ GIMT_Encode4(97567), // Rule ID 1631 // |
| 34509 | /* 97518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34510 | /* 97521 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdql), |
| 34511 | /* 97526 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34512 | /* 97529 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34513 | /* 97532 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34514 | /* 97535 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34515 | /* 97538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34516 | /* 97542 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34517 | /* 97546 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34518 | /* 97550 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34519 | /* 97554 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16183:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VPMACSSDQLrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34520 | /* 97554 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQLrr), |
| 34521 | /* 97557 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34522 | /* 97559 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34523 | /* 97561 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34524 | /* 97563 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34525 | /* 97565 */ GIR_RootConstrainSelectedInstOperands, |
| 34526 | /* 97566 */ // GIR_Coverage, 1631, |
| 34527 | /* 97566 */ GIR_EraseRootFromParent_Done, |
| 34528 | /* 97567 */ // Label 2094: @97567 |
| 34529 | /* 97567 */ GIM_Try, /*On fail goto*//*Label 2095*/ GIMT_Encode4(97621), // Rule ID 1633 // |
| 34530 | /* 97572 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34531 | /* 97575 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdqh), |
| 34532 | /* 97580 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34533 | /* 97583 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34534 | /* 97586 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34535 | /* 97589 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34536 | /* 97592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34537 | /* 97596 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34538 | /* 97600 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34539 | /* 97604 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34540 | /* 97608 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16182:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VPMACSSDQHrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34541 | /* 97608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDQHrr), |
| 34542 | /* 97611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34543 | /* 97613 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34544 | /* 97615 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34545 | /* 97617 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34546 | /* 97619 */ GIR_RootConstrainSelectedInstOperands, |
| 34547 | /* 97620 */ // GIR_Coverage, 1633, |
| 34548 | /* 97620 */ GIR_EraseRootFromParent_Done, |
| 34549 | /* 97621 */ // Label 2095: @97621 |
| 34550 | /* 97621 */ GIM_Try, /*On fail goto*//*Label 2096*/ GIMT_Encode4(97675), // Rule ID 1635 // |
| 34551 | /* 97626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34552 | /* 97629 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacssdd), |
| 34553 | /* 97634 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34554 | /* 97637 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34555 | /* 97640 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34556 | /* 97643 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34557 | /* 97646 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34558 | /* 97650 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34559 | /* 97654 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34560 | /* 97658 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34561 | /* 97662 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16181:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMACSSDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34562 | /* 97662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSSDDrr), |
| 34563 | /* 97665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34564 | /* 97667 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34565 | /* 97669 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34566 | /* 97671 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34567 | /* 97673 */ GIR_RootConstrainSelectedInstOperands, |
| 34568 | /* 97674 */ // GIR_Coverage, 1635, |
| 34569 | /* 97674 */ GIR_EraseRootFromParent_Done, |
| 34570 | /* 97675 */ // Label 2096: @97675 |
| 34571 | /* 97675 */ GIM_Try, /*On fail goto*//*Label 2097*/ GIMT_Encode4(97729), // Rule ID 1637 // |
| 34572 | /* 97680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34573 | /* 97683 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdql), |
| 34574 | /* 97688 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34575 | /* 97691 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34576 | /* 97694 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34577 | /* 97697 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34578 | /* 97700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34579 | /* 97704 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34580 | /* 97708 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34581 | /* 97712 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34582 | /* 97716 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16180:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VPMACSDQLrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34583 | /* 97716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQLrr), |
| 34584 | /* 97719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34585 | /* 97721 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34586 | /* 97723 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34587 | /* 97725 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34588 | /* 97727 */ GIR_RootConstrainSelectedInstOperands, |
| 34589 | /* 97728 */ // GIR_Coverage, 1637, |
| 34590 | /* 97728 */ GIR_EraseRootFromParent_Done, |
| 34591 | /* 97729 */ // Label 2097: @97729 |
| 34592 | /* 97729 */ GIM_Try, /*On fail goto*//*Label 2098*/ GIMT_Encode4(97783), // Rule ID 1639 // |
| 34593 | /* 97734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34594 | /* 97737 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdqh), |
| 34595 | /* 97742 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 34596 | /* 97745 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34597 | /* 97748 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34598 | /* 97751 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34599 | /* 97754 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34600 | /* 97758 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34601 | /* 97762 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34602 | /* 97766 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34603 | /* 97770 */ // (intrinsic_wo_chain:{ *:[v2i64] } 16179:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VPMACSDQHrr:{ *:[v2i64] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34604 | /* 97770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDQHrr), |
| 34605 | /* 97773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34606 | /* 97775 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34607 | /* 97777 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34608 | /* 97779 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34609 | /* 97781 */ GIR_RootConstrainSelectedInstOperands, |
| 34610 | /* 97782 */ // GIR_Coverage, 1639, |
| 34611 | /* 97782 */ GIR_EraseRootFromParent_Done, |
| 34612 | /* 97783 */ // Label 2098: @97783 |
| 34613 | /* 97783 */ GIM_Try, /*On fail goto*//*Label 2099*/ GIMT_Encode4(97837), // Rule ID 1641 // |
| 34614 | /* 97788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 34615 | /* 97791 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xop_vpmacsdd), |
| 34616 | /* 97796 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34617 | /* 97799 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34618 | /* 97802 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34619 | /* 97805 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34620 | /* 97808 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34621 | /* 97812 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34622 | /* 97816 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34623 | /* 97820 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34624 | /* 97824 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16178:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VPMACSDDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34625 | /* 97824 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMACSDDrr), |
| 34626 | /* 97827 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34627 | /* 97829 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34628 | /* 97831 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34629 | /* 97833 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34630 | /* 97835 */ GIR_RootConstrainSelectedInstOperands, |
| 34631 | /* 97836 */ // GIR_Coverage, 1641, |
| 34632 | /* 97836 */ GIR_EraseRootFromParent_Done, |
| 34633 | /* 97837 */ // Label 2099: @97837 |
| 34634 | /* 97837 */ GIM_Try, /*On fail goto*//*Label 2100*/ GIMT_Encode4(97903), // Rule ID 3333 // |
| 34635 | /* 97842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA), |
| 34636 | /* 97845 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sha256rnds2), |
| 34637 | /* 97850 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34638 | /* 97853 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34639 | /* 97856 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34640 | /* 97859 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34641 | /* 97862 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34642 | /* 97866 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34643 | /* 97870 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34644 | /* 97874 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34645 | /* 97878 */ // (intrinsic_wo_chain:{ *:[v4i32] } 15859:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, XMM0:{ *:[v4i32] }) => (SHA256RNDS2rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 34646 | /* 97878 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 34647 | /* 97882 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::XMM0), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 34648 | /* 97888 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/4, // XMM0 |
| 34649 | /* 97892 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHA256RNDS2rr), |
| 34650 | /* 97895 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34651 | /* 97897 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34652 | /* 97899 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34653 | /* 97901 */ GIR_RootConstrainSelectedInstOperands, |
| 34654 | /* 97902 */ // GIR_Coverage, 3333, |
| 34655 | /* 97902 */ GIR_EraseRootFromParent_Done, |
| 34656 | /* 97903 */ // Label 2100: @97903 |
| 34657 | /* 97903 */ GIM_Try, /*On fail goto*//*Label 2101*/ GIMT_Encode4(97957), // Rule ID 3557 // |
| 34658 | /* 97908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSHA512), |
| 34659 | /* 97911 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsha512rnds2), |
| 34660 | /* 97916 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 34661 | /* 97919 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 34662 | /* 97922 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 34663 | /* 97925 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 34664 | /* 97928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34665 | /* 97932 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34666 | /* 97936 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 34667 | /* 97940 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34668 | /* 97944 */ // (intrinsic_wo_chain:{ *:[v4i64] } 16128:{ *:[iPTR] }, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2, VR128:{ *:[v2i64] }:$src3) => (VSHA512RNDS2rr:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2, VR128:{ *:[v2i64] }:$src3) |
| 34669 | /* 97944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSHA512RNDS2rr), |
| 34670 | /* 97947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34671 | /* 97949 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34672 | /* 97951 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34673 | /* 97953 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34674 | /* 97955 */ GIR_RootConstrainSelectedInstOperands, |
| 34675 | /* 97956 */ // GIR_Coverage, 3557, |
| 34676 | /* 97956 */ GIR_EraseRootFromParent_Done, |
| 34677 | /* 97957 */ // Label 2101: @97957 |
| 34678 | /* 97957 */ GIM_Try, /*On fail goto*//*Label 2102*/ GIMT_Encode4(98011), // Rule ID 3558 // |
| 34679 | /* 97962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 34680 | /* 97965 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3msg1), |
| 34681 | /* 97970 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34682 | /* 97973 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34683 | /* 97976 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34684 | /* 97979 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34685 | /* 97982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34686 | /* 97986 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34687 | /* 97990 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34688 | /* 97994 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34689 | /* 97998 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16129:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VSM3MSG1rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34690 | /* 97998 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3MSG1rr), |
| 34691 | /* 98001 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34692 | /* 98003 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34693 | /* 98005 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34694 | /* 98007 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34695 | /* 98009 */ GIR_RootConstrainSelectedInstOperands, |
| 34696 | /* 98010 */ // GIR_Coverage, 3558, |
| 34697 | /* 98010 */ GIR_EraseRootFromParent_Done, |
| 34698 | /* 98011 */ // Label 2102: @98011 |
| 34699 | /* 98011 */ GIM_Try, /*On fail goto*//*Label 2103*/ GIMT_Encode4(98065), // Rule ID 3560 // |
| 34700 | /* 98016 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 34701 | /* 98019 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3msg2), |
| 34702 | /* 98024 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34703 | /* 98027 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34704 | /* 98030 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34705 | /* 98033 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34706 | /* 98036 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34707 | /* 98040 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34708 | /* 98044 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34709 | /* 98048 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34710 | /* 98052 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16130:{ *:[iPTR] }, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) => (VSM3MSG2rr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2, VR128:{ *:[v4i32] }:$src3) |
| 34711 | /* 98052 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3MSG2rr), |
| 34712 | /* 98055 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34713 | /* 98057 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34714 | /* 98059 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34715 | /* 98061 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34716 | /* 98063 */ GIR_RootConstrainSelectedInstOperands, |
| 34717 | /* 98064 */ // GIR_Coverage, 3560, |
| 34718 | /* 98064 */ GIR_EraseRootFromParent_Done, |
| 34719 | /* 98065 */ // Label 2103: @98065 |
| 34720 | /* 98065 */ GIM_Reject, |
| 34721 | /* 98066 */ // Label 2049: @98066 |
| 34722 | /* 98066 */ GIM_Try, /*On fail goto*//*Label 2104*/ GIMT_Encode4(98195), |
| 34723 | /* 98071 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/6, |
| 34724 | /* 98074 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vsm3rnds2), |
| 34725 | /* 98079 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 34726 | /* 98082 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 34727 | /* 98085 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 34728 | /* 98088 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 34729 | /* 98091 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34730 | /* 98095 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34731 | /* 98099 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34732 | /* 98103 */ GIM_Try, /*On fail goto*//*Label 2105*/ GIMT_Encode4(98164), // Rule ID 3563 // |
| 34733 | /* 98108 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 34734 | /* 98111 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/4, // MIs[1] |
| 34735 | /* 98115 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 34736 | /* 98119 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 34737 | /* 98122 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 34738 | /* 98126 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 34739 | /* 98130 */ // MIs[0] src4 |
| 34740 | /* 98130 */ GIM_CheckIsImm, /*MI*/0, /*Op*/5, |
| 34741 | /* 98133 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 34742 | /* 98135 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 34743 | /* 98142 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16131:{ *:[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) |
| 34744 | /* 98142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3RNDS2rmi), |
| 34745 | /* 98145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34746 | /* 98147 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34747 | /* 98149 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34748 | /* 98151 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 34749 | /* 98155 */ GIR_RootToRootCopy, /*OpIdx*/5, // src4 |
| 34750 | /* 98157 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 34751 | /* 98162 */ GIR_RootConstrainSelectedInstOperands, |
| 34752 | /* 98163 */ // GIR_Coverage, 3563, |
| 34753 | /* 98163 */ GIR_EraseRootFromParent_Done, |
| 34754 | /* 98164 */ // Label 2105: @98164 |
| 34755 | /* 98164 */ GIM_Try, /*On fail goto*//*Label 2106*/ GIMT_Encode4(98194), // Rule ID 3562 // |
| 34756 | /* 98169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSM3), |
| 34757 | /* 98172 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 34758 | /* 98176 */ // MIs[0] src4 |
| 34759 | /* 98176 */ GIM_CheckIsImm, /*MI*/0, /*Op*/5, |
| 34760 | /* 98179 */ // (intrinsic_wo_chain:{ *:[v4i32] } 16131:{ *:[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) |
| 34761 | /* 98179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSM3RNDS2rri), |
| 34762 | /* 98182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 34763 | /* 98184 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 34764 | /* 98186 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 34765 | /* 98188 */ GIR_RootToRootCopy, /*OpIdx*/4, // src3 |
| 34766 | /* 98190 */ GIR_RootToRootCopy, /*OpIdx*/5, // src4 |
| 34767 | /* 98192 */ GIR_RootConstrainSelectedInstOperands, |
| 34768 | /* 98193 */ // GIR_Coverage, 3562, |
| 34769 | /* 98193 */ GIR_EraseRootFromParent_Done, |
| 34770 | /* 98194 */ // Label 2106: @98194 |
| 34771 | /* 98194 */ GIM_Reject, |
| 34772 | /* 98195 */ // Label 2104: @98195 |
| 34773 | /* 98195 */ GIM_Reject, |
| 34774 | /* 98196 */ // Label 19: @98196 |
| 34775 | /* 98196 */ GIM_Try, /*On fail goto*//*Label 2107*/ GIMT_Encode4(98755), |
| 34776 | /* 98201 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/1, |
| 34777 | /* 98204 */ GIM_Try, /*On fail goto*//*Label 2108*/ GIMT_Encode4(98226), // Rule ID 149 // |
| 34778 | /* 98209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSERIALIZE), |
| 34779 | /* 98212 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_serialize), |
| 34780 | /* 98217 */ // (intrinsic_void 15851:{ *:[iPTR] }) => (SERIALIZE) |
| 34781 | /* 98217 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SERIALIZE), |
| 34782 | /* 98220 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34783 | /* 98224 */ GIR_RootConstrainSelectedInstOperands, |
| 34784 | /* 98225 */ // GIR_Coverage, 149, |
| 34785 | /* 98225 */ GIR_EraseRootFromParent_Done, |
| 34786 | /* 98226 */ // Label 2108: @98226 |
| 34787 | /* 98226 */ GIM_Try, /*On fail goto*//*Label 2109*/ GIMT_Encode4(98248), // Rule ID 150 // |
| 34788 | /* 98231 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTSXLDTRK), |
| 34789 | /* 98234 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsusldtrk), |
| 34790 | /* 98239 */ // (intrinsic_void 16213:{ *:[iPTR] }) => (XSUSLDTRK) |
| 34791 | /* 98239 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSUSLDTRK), |
| 34792 | /* 98242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34793 | /* 98246 */ GIR_RootConstrainSelectedInstOperands, |
| 34794 | /* 98247 */ // GIR_Coverage, 150, |
| 34795 | /* 98247 */ GIR_EraseRootFromParent_Done, |
| 34796 | /* 98248 */ // Label 2109: @98248 |
| 34797 | /* 98248 */ GIM_Try, /*On fail goto*//*Label 2110*/ GIMT_Encode4(98270), // Rule ID 151 // |
| 34798 | /* 98253 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasTSXLDTRK), |
| 34799 | /* 98256 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xresldtrk), |
| 34800 | /* 98261 */ // (intrinsic_void 16199:{ *:[iPTR] }) => (XRESLDTRK) |
| 34801 | /* 98261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRESLDTRK), |
| 34802 | /* 98264 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34803 | /* 98268 */ GIR_RootConstrainSelectedInstOperands, |
| 34804 | /* 98269 */ // GIR_Coverage, 151, |
| 34805 | /* 98269 */ GIR_EraseRootFromParent_Done, |
| 34806 | /* 98270 */ // Label 2110: @98270 |
| 34807 | /* 98270 */ GIM_Try, /*On fail goto*//*Label 2111*/ GIMT_Encode4(98292), // Rule ID 152 // |
| 34808 | /* 98275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUINTR_In64BitMode), |
| 34809 | /* 98278 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_clui), |
| 34810 | /* 98283 */ // (intrinsic_void 15709:{ *:[iPTR] }) => (CLUI) |
| 34811 | /* 98283 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLUI), |
| 34812 | /* 98286 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34813 | /* 98290 */ GIR_RootConstrainSelectedInstOperands, |
| 34814 | /* 98291 */ // GIR_Coverage, 152, |
| 34815 | /* 98291 */ GIR_EraseRootFromParent_Done, |
| 34816 | /* 98292 */ // Label 2111: @98292 |
| 34817 | /* 98292 */ GIM_Try, /*On fail goto*//*Label 2112*/ GIMT_Encode4(98314), // Rule ID 153 // |
| 34818 | /* 98297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUINTR_In64BitMode), |
| 34819 | /* 98300 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_stui), |
| 34820 | /* 98305 */ // (intrinsic_void 16033:{ *:[iPTR] }) => (STUI) |
| 34821 | /* 98305 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::STUI), |
| 34822 | /* 98308 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34823 | /* 98312 */ GIR_RootConstrainSelectedInstOperands, |
| 34824 | /* 98313 */ // GIR_Coverage, 153, |
| 34825 | /* 98313 */ GIR_EraseRootFromParent_Done, |
| 34826 | /* 98314 */ // Label 2112: @98314 |
| 34827 | /* 98314 */ GIM_Try, /*On fail goto*//*Label 2113*/ GIMT_Encode4(98333), // Rule ID 2510 // |
| 34828 | /* 98319 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_pause), |
| 34829 | /* 98324 */ // (intrinsic_void 15928:{ *:[iPTR] }) => (PAUSE) |
| 34830 | /* 98324 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PAUSE), |
| 34831 | /* 98327 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34832 | /* 98331 */ GIR_RootConstrainSelectedInstOperands, |
| 34833 | /* 98332 */ // GIR_Coverage, 2510, |
| 34834 | /* 98332 */ GIR_EraseRootFromParent_Done, |
| 34835 | /* 98333 */ // Label 2113: @98333 |
| 34836 | /* 98333 */ GIM_Try, /*On fail goto*//*Label 2114*/ GIMT_Encode4(98355), // Rule ID 2511 // |
| 34837 | /* 98338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE1), |
| 34838 | /* 98341 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_sfence), |
| 34839 | /* 98346 */ // (intrinsic_void 15890:{ *:[iPTR] }) => (SFENCE) |
| 34840 | /* 98346 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SFENCE), |
| 34841 | /* 98349 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34842 | /* 98353 */ GIR_RootConstrainSelectedInstOperands, |
| 34843 | /* 98354 */ // GIR_Coverage, 2511, |
| 34844 | /* 98354 */ GIR_EraseRootFromParent_Done, |
| 34845 | /* 98355 */ // Label 2114: @98355 |
| 34846 | /* 98355 */ GIM_Try, /*On fail goto*//*Label 2115*/ GIMT_Encode4(98377), // Rule ID 2512 // |
| 34847 | /* 98360 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE2), |
| 34848 | /* 98363 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_lfence), |
| 34849 | /* 98368 */ // (intrinsic_void 15917:{ *:[iPTR] }) => (LFENCE) |
| 34850 | /* 98368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LFENCE), |
| 34851 | /* 98371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34852 | /* 98375 */ GIR_RootConstrainSelectedInstOperands, |
| 34853 | /* 98376 */ // GIR_Coverage, 2512, |
| 34854 | /* 98376 */ GIR_EraseRootFromParent_Done, |
| 34855 | /* 98377 */ // Label 2115: @98377 |
| 34856 | /* 98377 */ GIM_Try, /*On fail goto*//*Label 2116*/ GIMT_Encode4(98399), // Rule ID 2513 // |
| 34857 | /* 98382 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMFence), |
| 34858 | /* 98385 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_mfence), |
| 34859 | /* 98390 */ // (intrinsic_void 15921:{ *:[iPTR] }) => (MFENCE) |
| 34860 | /* 98390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MFENCE), |
| 34861 | /* 98393 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34862 | /* 98397 */ GIR_RootConstrainSelectedInstOperands, |
| 34863 | /* 98398 */ // GIR_Coverage, 2513, |
| 34864 | /* 98398 */ GIR_EraseRootFromParent_Done, |
| 34865 | /* 98399 */ // Label 2116: @98399 |
| 34866 | /* 98399 */ GIM_Try, /*On fail goto*//*Label 2117*/ GIMT_Encode4(98465), // Rule ID 3427 // |
| 34867 | /* 98404 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34868 | /* 98407 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_vzeroall), |
| 34869 | /* 98412 */ // (intrinsic_void 14623:{ *:[iPTR] }) => (VZEROALL) |
| 34870 | /* 98412 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VZEROALL), |
| 34871 | /* 98415 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM0*/0, |
| 34872 | /* 98418 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM1*/1, |
| 34873 | /* 98421 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM2*/2, |
| 34874 | /* 98424 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM3*/3, |
| 34875 | /* 98427 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM4*/4, |
| 34876 | /* 98430 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM5*/5, |
| 34877 | /* 98433 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM6*/6, |
| 34878 | /* 98436 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM7*/7, |
| 34879 | /* 98439 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM8*/8, |
| 34880 | /* 98442 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM9*/9, |
| 34881 | /* 98445 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM10*/10, |
| 34882 | /* 98448 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM11*/11, |
| 34883 | /* 98451 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM12*/12, |
| 34884 | /* 98454 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM13*/13, |
| 34885 | /* 98457 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM14*/14, |
| 34886 | /* 98460 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM15*/15, |
| 34887 | /* 98463 */ GIR_RootConstrainSelectedInstOperands, |
| 34888 | /* 98464 */ // GIR_Coverage, 3427, |
| 34889 | /* 98464 */ GIR_EraseRootFromParent_Done, |
| 34890 | /* 98465 */ // Label 2117: @98465 |
| 34891 | /* 98465 */ GIM_Try, /*On fail goto*//*Label 2118*/ GIMT_Encode4(98531), // Rule ID 3428 // |
| 34892 | /* 98470 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 34893 | /* 98473 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_vzeroupper), |
| 34894 | /* 98478 */ // (intrinsic_void 14624:{ *:[iPTR] }) => (VZEROUPPER) |
| 34895 | /* 98478 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VZEROUPPER), |
| 34896 | /* 98481 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM0*/0, |
| 34897 | /* 98484 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM1*/1, |
| 34898 | /* 98487 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM2*/2, |
| 34899 | /* 98490 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM3*/3, |
| 34900 | /* 98493 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM4*/4, |
| 34901 | /* 98496 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM5*/5, |
| 34902 | /* 98499 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM6*/6, |
| 34903 | /* 98502 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM7*/7, |
| 34904 | /* 98505 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM8*/8, |
| 34905 | /* 98508 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM9*/9, |
| 34906 | /* 98511 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM10*/10, |
| 34907 | /* 98514 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM11*/11, |
| 34908 | /* 98517 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM12*/12, |
| 34909 | /* 98520 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM13*/13, |
| 34910 | /* 98523 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM14*/14, |
| 34911 | /* 98526 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::YMM15*/15, |
| 34912 | /* 98529 */ GIR_RootConstrainSelectedInstOperands, |
| 34913 | /* 98530 */ // GIR_Coverage, 3428, |
| 34914 | /* 98530 */ GIR_EraseRootFromParent_Done, |
| 34915 | /* 98531 */ // Label 2118: @98531 |
| 34916 | /* 98531 */ GIM_Try, /*On fail goto*//*Label 2119*/ GIMT_Encode4(98601), // Rule ID 16806 // |
| 34917 | /* 98536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMMX), |
| 34918 | /* 98539 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_mmx_emms), |
| 34919 | /* 98544 */ // (intrinsic_void 15744:{ *:[iPTR] }) => (MMX_EMMS:{ *:[x86mmx] }) |
| 34920 | /* 98544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MMX_EMMS), |
| 34921 | /* 98547 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM0*/0, |
| 34922 | /* 98550 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM1*/1, |
| 34923 | /* 98553 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM2*/2, |
| 34924 | /* 98556 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM3*/3, |
| 34925 | /* 98559 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM4*/4, |
| 34926 | /* 98562 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM5*/5, |
| 34927 | /* 98565 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM6*/6, |
| 34928 | /* 98568 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MM7*/7, |
| 34929 | /* 98571 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST0*/8, |
| 34930 | /* 98574 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST1*/9, |
| 34931 | /* 98577 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST2*/10, |
| 34932 | /* 98580 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST3*/11, |
| 34933 | /* 98583 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST4*/12, |
| 34934 | /* 98586 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST5*/13, |
| 34935 | /* 98589 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST6*/14, |
| 34936 | /* 98592 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ST7*/15, |
| 34937 | /* 98595 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34938 | /* 98599 */ GIR_RootConstrainSelectedInstOperands, |
| 34939 | /* 98600 */ // GIR_Coverage, 16806, |
| 34940 | /* 98600 */ GIR_EraseRootFromParent_Done, |
| 34941 | /* 98601 */ // Label 2119: @98601 |
| 34942 | /* 98601 */ GIM_Try, /*On fail goto*//*Label 2120*/ GIMT_Encode4(98623), // Rule ID 16989 // |
| 34943 | /* 98606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRTM), |
| 34944 | /* 98609 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xend), |
| 34945 | /* 98614 */ // (intrinsic_void 16151:{ *:[iPTR] }) => (XEND) |
| 34946 | /* 98614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XEND), |
| 34947 | /* 98617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34948 | /* 98621 */ GIR_RootConstrainSelectedInstOperands, |
| 34949 | /* 98622 */ // GIR_Coverage, 16989, |
| 34950 | /* 98622 */ GIR_EraseRootFromParent_Done, |
| 34951 | /* 98623 */ // Label 2120: @98623 |
| 34952 | /* 98623 */ GIM_Try, /*On fail goto*//*Label 2121*/ GIMT_Encode4(98669), // Rule ID 17001 // |
| 34953 | /* 98628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_In64BitMode), |
| 34954 | /* 98631 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tilerelease), |
| 34955 | /* 98636 */ // (intrinsic_void 16089:{ *:[iPTR] }) => (TILERELEASE:{ *:[x86amx] }) |
| 34956 | /* 98636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TILERELEASE), |
| 34957 | /* 98639 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM0*/0, |
| 34958 | /* 98642 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM1*/1, |
| 34959 | /* 98645 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM2*/2, |
| 34960 | /* 98648 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM3*/3, |
| 34961 | /* 98651 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM4*/4, |
| 34962 | /* 98654 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM5*/5, |
| 34963 | /* 98657 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM6*/6, |
| 34964 | /* 98660 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM7*/7, |
| 34965 | /* 98663 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34966 | /* 98667 */ GIR_RootConstrainSelectedInstOperands, |
| 34967 | /* 98668 */ // GIR_Coverage, 17001, |
| 34968 | /* 98668 */ GIR_EraseRootFromParent_Done, |
| 34969 | /* 98669 */ // Label 2121: @98669 |
| 34970 | /* 98669 */ GIM_Try, /*On fail goto*//*Label 2122*/ GIMT_Encode4(98688), // Rule ID 17074 // |
| 34971 | /* 98674 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wbinvd), |
| 34972 | /* 98679 */ // (intrinsic_void 16138:{ *:[iPTR] }) => (WBINVD) |
| 34973 | /* 98679 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WBINVD), |
| 34974 | /* 98682 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34975 | /* 98686 */ GIR_RootConstrainSelectedInstOperands, |
| 34976 | /* 98687 */ // GIR_Coverage, 17074, |
| 34977 | /* 98687 */ GIR_EraseRootFromParent_Done, |
| 34978 | /* 98688 */ // Label 2122: @98688 |
| 34979 | /* 98688 */ GIM_Try, /*On fail goto*//*Label 2123*/ GIMT_Encode4(98710), // Rule ID 17075 // |
| 34980 | /* 98693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasWBNOINVD), |
| 34981 | /* 98696 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wbnoinvd), |
| 34982 | /* 98701 */ // (intrinsic_void 16139:{ *:[iPTR] }) => (WBNOINVD) |
| 34983 | /* 98701 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WBNOINVD), |
| 34984 | /* 98704 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34985 | /* 98708 */ GIR_RootConstrainSelectedInstOperands, |
| 34986 | /* 98709 */ // GIR_Coverage, 17075, |
| 34987 | /* 98709 */ GIR_EraseRootFromParent_Done, |
| 34988 | /* 98710 */ // Label 2123: @98710 |
| 34989 | /* 98710 */ GIM_Try, /*On fail goto*//*Label 2124*/ GIMT_Encode4(98732), // Rule ID 17080 // |
| 34990 | /* 98715 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_saveprevssp), |
| 34991 | /* 98720 */ // (intrinsic_void 15846:{ *:[iPTR] }) => (SAVEPREVSSP) |
| 34992 | /* 98720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAVEPREVSSP), |
| 34993 | /* 98723 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 34994 | /* 98726 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 34995 | /* 98730 */ GIR_RootConstrainSelectedInstOperands, |
| 34996 | /* 98731 */ // GIR_Coverage, 17080, |
| 34997 | /* 98731 */ GIR_EraseRootFromParent_Done, |
| 34998 | /* 98732 */ // Label 2124: @98732 |
| 34999 | /* 98732 */ GIM_Try, /*On fail goto*//*Label 2125*/ GIMT_Encode4(98754), // Rule ID 17090 // |
| 35000 | /* 98737 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_setssbsy), |
| 35001 | /* 98742 */ // (intrinsic_void 15852:{ *:[iPTR] }) => (SETSSBSY) |
| 35002 | /* 98742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SETSSBSY), |
| 35003 | /* 98745 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 35004 | /* 98748 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35005 | /* 98752 */ GIR_RootConstrainSelectedInstOperands, |
| 35006 | /* 98753 */ // GIR_Coverage, 17090, |
| 35007 | /* 98753 */ GIR_EraseRootFromParent_Done, |
| 35008 | /* 98754 */ // Label 2125: @98754 |
| 35009 | /* 98754 */ GIM_Reject, |
| 35010 | /* 98755 */ // Label 2107: @98755 |
| 35011 | /* 98755 */ GIM_Try, /*On fail goto*//*Label 2126*/ GIMT_Encode4(100643), |
| 35012 | /* 98760 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/2, |
| 35013 | /* 98763 */ GIM_Try, /*On fail goto*//*Label 2127*/ GIMT_Encode4(98821), // Rule ID 17118 // |
| 35014 | /* 98768 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPTWRITE_In64BitMode), |
| 35015 | /* 98771 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ptwrite64), |
| 35016 | /* 98776 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 35017 | /* 98779 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 35018 | /* 98783 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 35019 | /* 98787 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 35020 | /* 98790 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 35021 | /* 98794 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 35022 | /* 98798 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 35023 | /* 98800 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35024 | /* 98807 */ // (intrinsic_void 15826:{ *:[iPTR] }, (ld:{ *:[i64] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (PTWRITE64m addr:{ *:[iPTR] }:$dst) |
| 35025 | /* 98807 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTWRITE64m), |
| 35026 | /* 98810 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35027 | /* 98814 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 35028 | /* 98819 */ GIR_RootConstrainSelectedInstOperands, |
| 35029 | /* 98820 */ // GIR_Coverage, 17118, |
| 35030 | /* 98820 */ GIR_EraseRootFromParent_Done, |
| 35031 | /* 98821 */ // Label 2127: @98821 |
| 35032 | /* 98821 */ GIM_Try, /*On fail goto*//*Label 2128*/ GIMT_Encode4(98879), // Rule ID 17117 // |
| 35033 | /* 98826 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPTWRITE), |
| 35034 | /* 98829 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ptwrite32), |
| 35035 | /* 98834 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 35036 | /* 98837 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 35037 | /* 98841 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 35038 | /* 98845 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 35039 | /* 98848 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 35040 | /* 98852 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 35041 | /* 98856 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 35042 | /* 98858 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35043 | /* 98865 */ // (intrinsic_void 15825:{ *:[iPTR] }, (ld:{ *:[i32] } addr:{ *:[iPTR] }:$dst)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (PTWRITEm addr:{ *:[iPTR] }:$dst) |
| 35044 | /* 98865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTWRITEm), |
| 35045 | /* 98868 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35046 | /* 98872 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 35047 | /* 98877 */ GIR_RootConstrainSelectedInstOperands, |
| 35048 | /* 98878 */ // GIR_Coverage, 17117, |
| 35049 | /* 98878 */ GIR_EraseRootFromParent_Done, |
| 35050 | /* 98879 */ // Label 2128: @98879 |
| 35051 | /* 98879 */ GIM_Try, /*On fail goto*//*Label 2129*/ GIMT_Encode4(98916), // Rule ID 162 // |
| 35052 | /* 98884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCLFLUSHOPT), |
| 35053 | /* 98887 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_clflushopt), |
| 35054 | /* 98892 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35055 | /* 98896 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35056 | /* 98903 */ // (intrinsic_void 15707:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLFLUSHOPT addr:{ *:[iPTR] }:$src) |
| 35057 | /* 98903 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLFLUSHOPT), |
| 35058 | /* 98906 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35059 | /* 98910 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35060 | /* 98914 */ GIR_RootConstrainSelectedInstOperands, |
| 35061 | /* 98915 */ // GIR_Coverage, 162, |
| 35062 | /* 98915 */ GIR_EraseRootFromParent_Done, |
| 35063 | /* 98916 */ // Label 2129: @98916 |
| 35064 | /* 98916 */ GIM_Try, /*On fail goto*//*Label 2130*/ GIMT_Encode4(98953), // Rule ID 163 // |
| 35065 | /* 98921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCLWB), |
| 35066 | /* 98924 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_clwb), |
| 35067 | /* 98929 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35068 | /* 98933 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35069 | /* 98940 */ // (intrinsic_void 15710:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLWB addr:{ *:[iPTR] }:$src) |
| 35070 | /* 98940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLWB), |
| 35071 | /* 98943 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35072 | /* 98947 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35073 | /* 98951 */ GIR_RootConstrainSelectedInstOperands, |
| 35074 | /* 98952 */ // GIR_Coverage, 163, |
| 35075 | /* 98952 */ GIR_EraseRootFromParent_Done, |
| 35076 | /* 98953 */ // Label 2130: @98953 |
| 35077 | /* 98953 */ GIM_Try, /*On fail goto*//*Label 2131*/ GIMT_Encode4(98990), // Rule ID 164 // |
| 35078 | /* 98958 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCLDEMOTE), |
| 35079 | /* 98961 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_cldemote), |
| 35080 | /* 98966 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35081 | /* 98970 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35082 | /* 98977 */ // (intrinsic_void 15706:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLDEMOTE addr:{ *:[iPTR] }:$src) |
| 35083 | /* 98977 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLDEMOTE), |
| 35084 | /* 98980 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35085 | /* 98984 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35086 | /* 98988 */ GIR_RootConstrainSelectedInstOperands, |
| 35087 | /* 98989 */ // GIR_Coverage, 164, |
| 35088 | /* 98989 */ GIR_EraseRootFromParent_Done, |
| 35089 | /* 98990 */ // Label 2131: @98990 |
| 35090 | /* 98990 */ GIM_Try, /*On fail goto*//*Label 2132*/ GIMT_Encode4(99027), // Rule ID 169 // |
| 35091 | /* 98995 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS), |
| 35092 | /* 98998 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_prefetchrs), |
| 35093 | /* 99003 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35094 | /* 99007 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35095 | /* 99014 */ // (intrinsic_void 15824:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (PREFETCHRST2 addr:{ *:[iPTR] }:$src) |
| 35096 | /* 99014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PREFETCHRST2), |
| 35097 | /* 99017 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35098 | /* 99021 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35099 | /* 99025 */ GIR_RootConstrainSelectedInstOperands, |
| 35100 | /* 99026 */ // GIR_Coverage, 169, |
| 35101 | /* 99026 */ GIR_EraseRootFromParent_Done, |
| 35102 | /* 99027 */ // Label 2132: @99027 |
| 35103 | /* 99027 */ GIM_Try, /*On fail goto*//*Label 2133*/ GIMT_Encode4(99064), // Rule ID 1133 // |
| 35104 | /* 99032 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFXSR), |
| 35105 | /* 99035 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_fxsave), |
| 35106 | /* 99040 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35107 | /* 99044 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35108 | /* 99051 */ // (intrinsic_void 15730:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst) => (FXSAVE addr:{ *:[iPTR] }:$dst) |
| 35109 | /* 99051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FXSAVE), |
| 35110 | /* 99054 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35111 | /* 99058 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35112 | /* 99062 */ GIR_RootConstrainSelectedInstOperands, |
| 35113 | /* 99063 */ // GIR_Coverage, 1133, |
| 35114 | /* 99063 */ GIR_EraseRootFromParent_Done, |
| 35115 | /* 99064 */ // Label 2133: @99064 |
| 35116 | /* 99064 */ GIM_Try, /*On fail goto*//*Label 2134*/ GIMT_Encode4(99101), // Rule ID 1134 // |
| 35117 | /* 99069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFXSR_In64BitMode), |
| 35118 | /* 99072 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_fxsave64), |
| 35119 | /* 99077 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35120 | /* 99081 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35121 | /* 99088 */ // (intrinsic_void 15731:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst) => (FXSAVE64 addr:{ *:[iPTR] }:$dst) |
| 35122 | /* 99088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FXSAVE64), |
| 35123 | /* 99091 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35124 | /* 99095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35125 | /* 99099 */ GIR_RootConstrainSelectedInstOperands, |
| 35126 | /* 99100 */ // GIR_Coverage, 1134, |
| 35127 | /* 99100 */ GIR_EraseRootFromParent_Done, |
| 35128 | /* 99101 */ // Label 2134: @99101 |
| 35129 | /* 99101 */ GIM_Try, /*On fail goto*//*Label 2135*/ GIMT_Encode4(99144), // Rule ID 1135 // |
| 35130 | /* 99106 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFXSR), |
| 35131 | /* 99109 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_fxrstor), |
| 35132 | /* 99114 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35133 | /* 99118 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35134 | /* 99125 */ // (intrinsic_void 15728:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (FXRSTOR:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 35135 | /* 99125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FXRSTOR), |
| 35136 | /* 99128 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35137 | /* 99132 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 35138 | /* 99135 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPCW*/1, |
| 35139 | /* 99138 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35140 | /* 99142 */ GIR_RootConstrainSelectedInstOperands, |
| 35141 | /* 99143 */ // GIR_Coverage, 1135, |
| 35142 | /* 99143 */ GIR_EraseRootFromParent_Done, |
| 35143 | /* 99144 */ // Label 2135: @99144 |
| 35144 | /* 99144 */ GIM_Try, /*On fail goto*//*Label 2136*/ GIMT_Encode4(99187), // Rule ID 1136 // |
| 35145 | /* 99149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFXSR_In64BitMode), |
| 35146 | /* 99152 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_fxrstor64), |
| 35147 | /* 99157 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35148 | /* 99161 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35149 | /* 99168 */ // (intrinsic_void 15729:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (FXRSTOR64:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 35150 | /* 99168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FXRSTOR64), |
| 35151 | /* 99171 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35152 | /* 99175 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 35153 | /* 99178 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPCW*/1, |
| 35154 | /* 99181 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35155 | /* 99185 */ GIR_RootConstrainSelectedInstOperands, |
| 35156 | /* 99186 */ // GIR_Coverage, 1136, |
| 35157 | /* 99186 */ GIR_EraseRootFromParent_Done, |
| 35158 | /* 99187 */ // Label 2136: @99187 |
| 35159 | /* 99187 */ GIM_Try, /*On fail goto*//*Label 2137*/ GIMT_Encode4(99224), // Rule ID 2509 // |
| 35160 | /* 99192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCLFLUSH), |
| 35161 | /* 99195 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_clflush), |
| 35162 | /* 99200 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35163 | /* 99204 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35164 | /* 99211 */ // (intrinsic_void 15898:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLFLUSH addr:{ *:[iPTR] }:$src) |
| 35165 | /* 99211 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLFLUSH), |
| 35166 | /* 99214 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35167 | /* 99218 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35168 | /* 99222 */ GIR_RootConstrainSelectedInstOperands, |
| 35169 | /* 99223 */ // GIR_Coverage, 2509, |
| 35170 | /* 99223 */ GIR_EraseRootFromParent_Done, |
| 35171 | /* 99224 */ // Label 2137: @99224 |
| 35172 | /* 99224 */ GIM_Try, /*On fail goto*//*Label 2138*/ GIMT_Encode4(99264), // Rule ID 2514 // |
| 35173 | /* 99229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 35174 | /* 99232 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_ldmxcsr), |
| 35175 | /* 99237 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35176 | /* 99241 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35177 | /* 99248 */ // (intrinsic_void 15879:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VLDMXCSR addr:{ *:[iPTR] }:$src) |
| 35178 | /* 99248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VLDMXCSR), |
| 35179 | /* 99251 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35180 | /* 99255 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MXCSR*/0, |
| 35181 | /* 99258 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35182 | /* 99262 */ GIR_RootConstrainSelectedInstOperands, |
| 35183 | /* 99263 */ // GIR_Coverage, 2514, |
| 35184 | /* 99263 */ GIR_EraseRootFromParent_Done, |
| 35185 | /* 99264 */ // Label 2138: @99264 |
| 35186 | /* 99264 */ GIM_Try, /*On fail goto*//*Label 2139*/ GIMT_Encode4(99301), // Rule ID 2515 // |
| 35187 | /* 99269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 35188 | /* 99272 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_stmxcsr), |
| 35189 | /* 99277 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35190 | /* 99281 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35191 | /* 99288 */ // (intrinsic_void 15891:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst) => (VSTMXCSR addr:{ *:[iPTR] }:$dst) |
| 35192 | /* 99288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSTMXCSR), |
| 35193 | /* 99291 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35194 | /* 99295 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35195 | /* 99299 */ GIR_RootConstrainSelectedInstOperands, |
| 35196 | /* 99300 */ // GIR_Coverage, 2515, |
| 35197 | /* 99300 */ GIR_EraseRootFromParent_Done, |
| 35198 | /* 99301 */ // Label 2139: @99301 |
| 35199 | /* 99301 */ GIM_Try, /*On fail goto*//*Label 2140*/ GIMT_Encode4(99338), // Rule ID 2516 // |
| 35200 | /* 99306 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_ldmxcsr), |
| 35201 | /* 99311 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35202 | /* 99315 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35203 | /* 99322 */ // (intrinsic_void 15879:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (LDMXCSR addr:{ *:[iPTR] }:$src) |
| 35204 | /* 99322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LDMXCSR), |
| 35205 | /* 99325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35206 | /* 99329 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::MXCSR*/0, |
| 35207 | /* 99332 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35208 | /* 99336 */ GIR_RootConstrainSelectedInstOperands, |
| 35209 | /* 99337 */ // GIR_Coverage, 2516, |
| 35210 | /* 99337 */ GIR_EraseRootFromParent_Done, |
| 35211 | /* 99338 */ // Label 2140: @99338 |
| 35212 | /* 99338 */ GIM_Try, /*On fail goto*//*Label 2141*/ GIMT_Encode4(99372), // Rule ID 2517 // |
| 35213 | /* 99343 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse_stmxcsr), |
| 35214 | /* 99348 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35215 | /* 99352 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35216 | /* 99359 */ // (intrinsic_void 15891:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst) => (STMXCSR addr:{ *:[iPTR] }:$dst) |
| 35217 | /* 99359 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::STMXCSR), |
| 35218 | /* 99362 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 35219 | /* 99366 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35220 | /* 99370 */ GIR_RootConstrainSelectedInstOperands, |
| 35221 | /* 99371 */ // GIR_Coverage, 2517, |
| 35222 | /* 99371 */ GIR_EraseRootFromParent_Done, |
| 35223 | /* 99372 */ // Label 2141: @99372 |
| 35224 | /* 99372 */ GIM_Try, /*On fail goto*//*Label 2142*/ GIMT_Encode4(99433), // Rule ID 16997 // |
| 35225 | /* 99377 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_In64BitMode_NoEGPR), |
| 35226 | /* 99380 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ldtilecfg), |
| 35227 | /* 99385 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35228 | /* 99389 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35229 | /* 99396 */ // (intrinsic_void 15736:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (LDTILECFG:{ *:[x86amx] } addr:{ *:[iPTR] }:$src) |
| 35230 | /* 99396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LDTILECFG), |
| 35231 | /* 99399 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35232 | /* 99403 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM0*/0, |
| 35233 | /* 99406 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM1*/1, |
| 35234 | /* 99409 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM2*/2, |
| 35235 | /* 99412 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM3*/3, |
| 35236 | /* 99415 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM4*/4, |
| 35237 | /* 99418 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM5*/5, |
| 35238 | /* 99421 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM6*/6, |
| 35239 | /* 99424 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM7*/7, |
| 35240 | /* 99427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35241 | /* 99431 */ GIR_RootConstrainSelectedInstOperands, |
| 35242 | /* 99432 */ // GIR_Coverage, 16997, |
| 35243 | /* 99432 */ GIR_EraseRootFromParent_Done, |
| 35244 | /* 99433 */ // Label 2142: @99433 |
| 35245 | /* 99433 */ GIM_Try, /*On fail goto*//*Label 2143*/ GIMT_Encode4(99470), // Rule ID 16998 // |
| 35246 | /* 99438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_In64BitMode_NoEGPR), |
| 35247 | /* 99441 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sttilecfg), |
| 35248 | /* 99446 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35249 | /* 99450 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35250 | /* 99457 */ // (intrinsic_void 16032:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (STTILECFG addr:{ *:[iPTR] }:$src) |
| 35251 | /* 99457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::STTILECFG), |
| 35252 | /* 99460 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35253 | /* 99464 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35254 | /* 99468 */ GIR_RootConstrainSelectedInstOperands, |
| 35255 | /* 99469 */ // GIR_Coverage, 16998, |
| 35256 | /* 99469 */ GIR_EraseRootFromParent_Done, |
| 35257 | /* 99470 */ // Label 2143: @99470 |
| 35258 | /* 99470 */ GIM_Try, /*On fail goto*//*Label 2144*/ GIMT_Encode4(99531), // Rule ID 16999 // |
| 35259 | /* 99475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_HasEGPR_In64BitMode), |
| 35260 | /* 99478 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ldtilecfg), |
| 35261 | /* 99483 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35262 | /* 99487 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35263 | /* 99494 */ // (intrinsic_void 15736:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (LDTILECFG_EVEX:{ *:[x86amx] } addr:{ *:[iPTR] }:$src) |
| 35264 | /* 99494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LDTILECFG_EVEX), |
| 35265 | /* 99497 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35266 | /* 99501 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM0*/0, |
| 35267 | /* 99504 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM1*/1, |
| 35268 | /* 99507 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM2*/2, |
| 35269 | /* 99510 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM3*/3, |
| 35270 | /* 99513 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM4*/4, |
| 35271 | /* 99516 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM5*/5, |
| 35272 | /* 99519 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM6*/6, |
| 35273 | /* 99522 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::TMM7*/7, |
| 35274 | /* 99525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35275 | /* 99529 */ GIR_RootConstrainSelectedInstOperands, |
| 35276 | /* 99530 */ // GIR_Coverage, 16999, |
| 35277 | /* 99530 */ GIR_EraseRootFromParent_Done, |
| 35278 | /* 99531 */ // Label 2144: @99531 |
| 35279 | /* 99531 */ GIM_Try, /*On fail goto*//*Label 2145*/ GIMT_Encode4(99568), // Rule ID 17000 // |
| 35280 | /* 99536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_HasEGPR_In64BitMode), |
| 35281 | /* 99539 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sttilecfg), |
| 35282 | /* 99544 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35283 | /* 99548 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35284 | /* 99555 */ // (intrinsic_void 16032:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (STTILECFG_EVEX addr:{ *:[iPTR] }:$src) |
| 35285 | /* 99555 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::STTILECFG_EVEX), |
| 35286 | /* 99558 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35287 | /* 99562 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35288 | /* 99566 */ GIR_RootConstrainSelectedInstOperands, |
| 35289 | /* 99567 */ // GIR_Coverage, 17000, |
| 35290 | /* 99567 */ GIR_EraseRootFromParent_Done, |
| 35291 | /* 99568 */ // Label 2145: @99568 |
| 35292 | /* 99568 */ GIM_Try, /*On fail goto*//*Label 2146*/ GIMT_Encode4(99605), // Rule ID 17081 // |
| 35293 | /* 99573 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_rstorssp), |
| 35294 | /* 99578 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35295 | /* 99582 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35296 | /* 99589 */ // (intrinsic_void 15845:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (RSTORSSP addr:{ *:[iPTR] }:$src) |
| 35297 | /* 99589 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RSTORSSP), |
| 35298 | /* 99592 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35299 | /* 99596 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 35300 | /* 99599 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35301 | /* 99603 */ GIR_RootConstrainSelectedInstOperands, |
| 35302 | /* 99604 */ // GIR_Coverage, 17081, |
| 35303 | /* 99604 */ GIR_EraseRootFromParent_Done, |
| 35304 | /* 99605 */ // Label 2146: @99605 |
| 35305 | /* 99605 */ GIM_Try, /*On fail goto*//*Label 2147*/ GIMT_Encode4(99642), // Rule ID 17091 // |
| 35306 | /* 99610 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_clrssbsy), |
| 35307 | /* 99615 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 35308 | /* 99619 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35309 | /* 99626 */ // (intrinsic_void 15708:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (CLRSSBSY addr:{ *:[iPTR] }:$src) |
| 35310 | /* 99626 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CLRSSBSY), |
| 35311 | /* 99629 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35312 | /* 99633 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 35313 | /* 99636 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35314 | /* 99640 */ GIR_RootConstrainSelectedInstOperands, |
| 35315 | /* 99641 */ // GIR_Coverage, 17091, |
| 35316 | /* 99641 */ GIR_EraseRootFromParent_Done, |
| 35317 | /* 99642 */ // Label 2147: @99642 |
| 35318 | /* 99642 */ GIM_Try, /*On fail goto*//*Label 2148*/ GIMT_Encode4(99672), // Rule ID 17063 // |
| 35319 | /* 99647 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_int), |
| 35320 | /* 99652 */ // MIs[0] Operand 1 |
| 35321 | /* 99652 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(3), |
| 35322 | /* 99663 */ // (intrinsic_void 15734:{ *:[iPTR] }, 3:{ *:[i8] }) => (INT3) |
| 35323 | /* 99663 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INT3), |
| 35324 | /* 99666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35325 | /* 99670 */ GIR_RootConstrainSelectedInstOperands, |
| 35326 | /* 99671 */ // GIR_Coverage, 17063, |
| 35327 | /* 99671 */ GIR_EraseRootFromParent_Done, |
| 35328 | /* 99672 */ // Label 2148: @99672 |
| 35329 | /* 99672 */ GIM_Try, /*On fail goto*//*Label 2149*/ GIMT_Encode4(99699), // Rule ID 16991 // |
| 35330 | /* 99677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRTM), |
| 35331 | /* 99680 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xabort), |
| 35332 | /* 99685 */ // MIs[0] imm |
| 35333 | /* 99685 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 35334 | /* 99688 */ // (intrinsic_void 16149:{ *:[iPTR] }, (timm:{ *:[i8] }):$imm) => (XABORT (timm:{ *:[i8] }):$imm) |
| 35335 | /* 99688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XABORT), |
| 35336 | /* 99691 */ GIR_RootToRootCopy, /*OpIdx*/1, // imm |
| 35337 | /* 99693 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35338 | /* 99697 */ GIR_RootConstrainSelectedInstOperands, |
| 35339 | /* 99698 */ // GIR_Coverage, 16991, |
| 35340 | /* 99698 */ GIR_EraseRootFromParent_Done, |
| 35341 | /* 99699 */ // Label 2149: @99699 |
| 35342 | /* 99699 */ GIM_Try, /*On fail goto*//*Label 2150*/ GIMT_Encode4(99726), // Rule ID 17003 // |
| 35343 | /* 99704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTILE_In64BitMode), |
| 35344 | /* 99707 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tilezero), |
| 35345 | /* 99712 */ // MIs[0] src |
| 35346 | /* 99712 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 35347 | /* 99715 */ // (intrinsic_void 16092:{ *:[iPTR] }, (timm:{ *:[i8] }):$src) => (PTILEZERO (timm:{ *:[i8] }):$src) |
| 35348 | /* 99715 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTILEZERO), |
| 35349 | /* 99718 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35350 | /* 99720 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35351 | /* 99724 */ GIR_RootConstrainSelectedInstOperands, |
| 35352 | /* 99725 */ // GIR_Coverage, 17003, |
| 35353 | /* 99725 */ GIR_EraseRootFromParent_Done, |
| 35354 | /* 99726 */ // Label 2150: @99726 |
| 35355 | /* 99726 */ GIM_Try, /*On fail goto*//*Label 2151*/ GIMT_Encode4(99750), // Rule ID 17065 // |
| 35356 | /* 99731 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_int), |
| 35357 | /* 99736 */ // MIs[0] trap |
| 35358 | /* 99736 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 35359 | /* 99739 */ // (intrinsic_void 15734:{ *:[iPTR] }, (timm:{ *:[i8] }):$trap) => (INT (timm:{ *:[i8] }):$trap) |
| 35360 | /* 99739 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INT), |
| 35361 | /* 99742 */ GIR_RootToRootCopy, /*OpIdx*/1, // trap |
| 35362 | /* 99744 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35363 | /* 99748 */ GIR_RootConstrainSelectedInstOperands, |
| 35364 | /* 99749 */ // GIR_Coverage, 17065, |
| 35365 | /* 99749 */ GIR_EraseRootFromParent_Done, |
| 35366 | /* 99750 */ // Label 2151: @99750 |
| 35367 | /* 99750 */ GIM_Try, /*On fail goto*//*Label 2152*/ GIMT_Encode4(99784), // Rule ID 1 // |
| 35368 | /* 99755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode), |
| 35369 | /* 99758 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_flags_read_u32), |
| 35370 | /* 99763 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35371 | /* 99766 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35372 | /* 99770 */ // (intrinsic_w_chain:{ *:[i32] } 15720:{ *:[iPTR] }) => (RDFLAGS32:{ *:[i32] }:{ *:[i32] }) |
| 35373 | /* 99770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDFLAGS32), |
| 35374 | /* 99773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35375 | /* 99775 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ESP*/0, |
| 35376 | /* 99778 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35377 | /* 99782 */ GIR_RootConstrainSelectedInstOperands, |
| 35378 | /* 99783 */ // GIR_Coverage, 1, |
| 35379 | /* 99783 */ GIR_EraseRootFromParent_Done, |
| 35380 | /* 99784 */ // Label 2152: @99784 |
| 35381 | /* 99784 */ GIM_Try, /*On fail goto*//*Label 2153*/ GIMT_Encode4(99818), // Rule ID 2 // |
| 35382 | /* 99789 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 35383 | /* 99792 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_flags_read_u64), |
| 35384 | /* 99797 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 35385 | /* 99800 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35386 | /* 99804 */ // (intrinsic_w_chain:{ *:[i64] } 15721:{ *:[iPTR] }) => (RDFLAGS64:{ *:[i64] }:{ *:[i32] }) |
| 35387 | /* 99804 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDFLAGS64), |
| 35388 | /* 99807 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35389 | /* 99809 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ESP*/0, |
| 35390 | /* 99812 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35391 | /* 99816 */ GIR_RootConstrainSelectedInstOperands, |
| 35392 | /* 99817 */ // GIR_Coverage, 2, |
| 35393 | /* 99817 */ GIR_EraseRootFromParent_Done, |
| 35394 | /* 99818 */ // Label 2153: @99818 |
| 35395 | /* 99818 */ GIM_Try, /*On fail goto*//*Label 2154*/ GIMT_Encode4(99849), // Rule ID 115 // |
| 35396 | /* 99823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 35397 | /* 99826 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_slwpcb), |
| 35398 | /* 99831 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35399 | /* 99834 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35400 | /* 99838 */ // (intrinsic_w_chain:{ *:[i32] } 15860:{ *:[iPTR] }) => (SLWPCB:{ *:[i32] }) |
| 35401 | /* 99838 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SLWPCB), |
| 35402 | /* 99841 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35403 | /* 99843 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35404 | /* 99847 */ GIR_RootConstrainSelectedInstOperands, |
| 35405 | /* 99848 */ // GIR_Coverage, 115, |
| 35406 | /* 99848 */ GIR_EraseRootFromParent_Done, |
| 35407 | /* 99849 */ // Label 2154: @99849 |
| 35408 | /* 99849 */ GIM_Try, /*On fail goto*//*Label 2155*/ GIMT_Encode4(99880), // Rule ID 117 // |
| 35409 | /* 99854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 35410 | /* 99857 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_slwpcb), |
| 35411 | /* 99862 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 35412 | /* 99865 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35413 | /* 99869 */ // (intrinsic_w_chain:{ *:[i64] } 15860:{ *:[iPTR] }) => (SLWPCB64:{ *:[i64] }) |
| 35414 | /* 99869 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SLWPCB64), |
| 35415 | /* 99872 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35416 | /* 99874 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35417 | /* 99878 */ GIR_RootConstrainSelectedInstOperands, |
| 35418 | /* 99879 */ // GIR_Coverage, 117, |
| 35419 | /* 99879 */ GIR_EraseRootFromParent_Done, |
| 35420 | /* 99880 */ // Label 2155: @99880 |
| 35421 | /* 99880 */ GIM_Try, /*On fail goto*//*Label 2156*/ GIMT_Encode4(99911), // Rule ID 16988 // |
| 35422 | /* 99885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRTM), |
| 35423 | /* 99888 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_xbegin), |
| 35424 | /* 99893 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35425 | /* 99896 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35426 | /* 99900 */ // (intrinsic_w_chain:{ *:[i32] } 16150:{ *:[iPTR] }) => (XBEGIN:{ *:[i32] }) |
| 35427 | /* 99900 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XBEGIN), |
| 35428 | /* 99903 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35429 | /* 99905 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35430 | /* 99909 */ GIR_RootConstrainSelectedInstOperands, |
| 35431 | /* 99910 */ // GIR_Coverage, 16988, |
| 35432 | /* 99910 */ GIR_EraseRootFromParent_Done, |
| 35433 | /* 99911 */ // Label 2156: @99911 |
| 35434 | /* 99911 */ GIM_Try, /*On fail goto*//*Label 2157*/ GIMT_Encode4(99942), // Rule ID 17107 // |
| 35435 | /* 99916 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 35436 | /* 99919 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdfsbase_32), |
| 35437 | /* 99924 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35438 | /* 99927 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35439 | /* 99931 */ // (intrinsic_w_chain:{ *:[i32] } 15827:{ *:[iPTR] }) => (RDFSBASE:{ *:[i32] }) |
| 35440 | /* 99931 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDFSBASE), |
| 35441 | /* 99934 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35442 | /* 99936 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35443 | /* 99940 */ GIR_RootConstrainSelectedInstOperands, |
| 35444 | /* 99941 */ // GIR_Coverage, 17107, |
| 35445 | /* 99941 */ GIR_EraseRootFromParent_Done, |
| 35446 | /* 99942 */ // Label 2157: @99942 |
| 35447 | /* 99942 */ GIM_Try, /*On fail goto*//*Label 2158*/ GIMT_Encode4(99973), // Rule ID 17108 // |
| 35448 | /* 99947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 35449 | /* 99950 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdfsbase_64), |
| 35450 | /* 99955 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 35451 | /* 99958 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35452 | /* 99962 */ // (intrinsic_w_chain:{ *:[i64] } 15828:{ *:[iPTR] }) => (RDFSBASE64:{ *:[i64] }) |
| 35453 | /* 99962 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDFSBASE64), |
| 35454 | /* 99965 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35455 | /* 99967 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35456 | /* 99971 */ GIR_RootConstrainSelectedInstOperands, |
| 35457 | /* 99972 */ // GIR_Coverage, 17108, |
| 35458 | /* 99972 */ GIR_EraseRootFromParent_Done, |
| 35459 | /* 99973 */ // Label 2158: @99973 |
| 35460 | /* 99973 */ GIM_Try, /*On fail goto*//*Label 2159*/ GIMT_Encode4(100004), // Rule ID 17109 // |
| 35461 | /* 99978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 35462 | /* 99981 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdgsbase_32), |
| 35463 | /* 99986 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35464 | /* 99989 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35465 | /* 99993 */ // (intrinsic_w_chain:{ *:[i32] } 15829:{ *:[iPTR] }) => (RDGSBASE:{ *:[i32] }) |
| 35466 | /* 99993 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDGSBASE), |
| 35467 | /* 99996 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35468 | /* 99998 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35469 | /* 100002 */ GIR_RootConstrainSelectedInstOperands, |
| 35470 | /* 100003 */ // GIR_Coverage, 17109, |
| 35471 | /* 100003 */ GIR_EraseRootFromParent_Done, |
| 35472 | /* 100004 */ // Label 2159: @100004 |
| 35473 | /* 100004 */ GIM_Try, /*On fail goto*//*Label 2160*/ GIMT_Encode4(100035), // Rule ID 17110 // |
| 35474 | /* 100009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 35475 | /* 100012 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdgsbase_64), |
| 35476 | /* 100017 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 35477 | /* 100020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35478 | /* 100024 */ // (intrinsic_w_chain:{ *:[i64] } 15830:{ *:[iPTR] }) => (RDGSBASE64:{ *:[i64] }) |
| 35479 | /* 100024 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDGSBASE64), |
| 35480 | /* 100027 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35481 | /* 100029 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35482 | /* 100033 */ GIR_RootConstrainSelectedInstOperands, |
| 35483 | /* 100034 */ // GIR_Coverage, 17110, |
| 35484 | /* 100034 */ GIR_EraseRootFromParent_Done, |
| 35485 | /* 100035 */ // Label 2160: @100035 |
| 35486 | /* 100035 */ GIM_Try, /*On fail goto*//*Label 2161*/ GIMT_Encode4(100066), // Rule ID 17116 // |
| 35487 | /* 100040 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRDPID_Not64BitMode), |
| 35488 | /* 100043 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdpid), |
| 35489 | /* 100048 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35490 | /* 100051 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35491 | /* 100055 */ // (intrinsic_w_chain:{ *:[i32] } 15831:{ *:[iPTR] }) => (RDPID32:{ *:[i32] }) |
| 35492 | /* 100055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDPID32), |
| 35493 | /* 100058 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35494 | /* 100060 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35495 | /* 100064 */ GIR_RootConstrainSelectedInstOperands, |
| 35496 | /* 100065 */ // GIR_Coverage, 17116, |
| 35497 | /* 100065 */ GIR_EraseRootFromParent_Done, |
| 35498 | /* 100066 */ // Label 2161: @100066 |
| 35499 | /* 100066 */ GIM_Try, /*On fail goto*//*Label 2162*/ GIMT_Encode4(100123), // Rule ID 22442 // |
| 35500 | /* 100071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasRDPID_In64BitMode), |
| 35501 | /* 100074 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdpid), |
| 35502 | /* 100079 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35503 | /* 100082 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35504 | /* 100086 */ // (intrinsic_w_chain:{ *:[i32] } 15831:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[i32] } (RDPID64:{ *:[i64] }), sub_32bit:{ *:[i32] }) |
| 35505 | /* 100086 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 35506 | /* 100089 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::RDPID64), |
| 35507 | /* 100093 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 35508 | /* 100098 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 35509 | /* 100100 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 35510 | /* 100103 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35511 | /* 100105 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_32bit), |
| 35512 | /* 100112 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 35513 | /* 100117 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 35514 | /* 100122 */ // GIR_Coverage, 22442, |
| 35515 | /* 100122 */ GIR_EraseRootFromParent_Done, |
| 35516 | /* 100123 */ // Label 2162: @100123 |
| 35517 | /* 100123 */ GIM_Try, /*On fail goto*//*Label 2163*/ GIMT_Encode4(100163), // Rule ID 3 // |
| 35518 | /* 100128 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode), |
| 35519 | /* 100131 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_flags_write_u32), |
| 35520 | /* 100136 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 35521 | /* 100139 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35522 | /* 100143 */ // (intrinsic_void 15722:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (WRFLAGS32:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 35523 | /* 100143 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRFLAGS32), |
| 35524 | /* 100146 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35525 | /* 100148 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::ESP*/0, |
| 35526 | /* 100151 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/1, |
| 35527 | /* 100154 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::DF*/2, |
| 35528 | /* 100157 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35529 | /* 100161 */ GIR_RootConstrainSelectedInstOperands, |
| 35530 | /* 100162 */ // GIR_Coverage, 3, |
| 35531 | /* 100162 */ GIR_EraseRootFromParent_Done, |
| 35532 | /* 100163 */ // Label 2163: @100163 |
| 35533 | /* 100163 */ GIM_Try, /*On fail goto*//*Label 2164*/ GIMT_Encode4(100203), // Rule ID 4 // |
| 35534 | /* 100168 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 35535 | /* 100171 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_flags_write_u64), |
| 35536 | /* 100176 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 35537 | /* 100179 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35538 | /* 100183 */ // (intrinsic_void 15723:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (WRFLAGS64:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 35539 | /* 100183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRFLAGS64), |
| 35540 | /* 100186 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35541 | /* 100188 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::RSP*/0, |
| 35542 | /* 100191 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/1, |
| 35543 | /* 100194 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::DF*/2, |
| 35544 | /* 100197 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35545 | /* 100201 */ GIR_RootConstrainSelectedInstOperands, |
| 35546 | /* 100202 */ // GIR_Coverage, 4, |
| 35547 | /* 100202 */ GIR_EraseRootFromParent_Done, |
| 35548 | /* 100203 */ // Label 2164: @100203 |
| 35549 | /* 100203 */ GIM_Try, /*On fail goto*//*Label 2165*/ GIMT_Encode4(100234), // Rule ID 154 // |
| 35550 | /* 100208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUINTR_In64BitMode), |
| 35551 | /* 100211 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_senduipi), |
| 35552 | /* 100216 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 35553 | /* 100219 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35554 | /* 100223 */ // (intrinsic_void 15850:{ *:[iPTR] }, GR64:{ *:[i64] }:$arg) => (SENDUIPI GR64:{ *:[i64] }:$arg) |
| 35555 | /* 100223 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SENDUIPI), |
| 35556 | /* 100226 */ GIR_RootToRootCopy, /*OpIdx*/1, // arg |
| 35557 | /* 100228 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35558 | /* 100232 */ GIR_RootConstrainSelectedInstOperands, |
| 35559 | /* 100233 */ // GIR_Coverage, 154, |
| 35560 | /* 100233 */ GIR_EraseRootFromParent_Done, |
| 35561 | /* 100234 */ // Label 2165: @100234 |
| 35562 | /* 100234 */ GIM_Try, /*On fail goto*//*Label 2166*/ GIMT_Encode4(100265), // Rule ID 17076 // |
| 35563 | /* 100239 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_incsspd), |
| 35564 | /* 100244 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 35565 | /* 100247 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35566 | /* 100251 */ // (intrinsic_void 15732:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (INCSSPD GR32:{ *:[i32] }:$src) |
| 35567 | /* 100251 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INCSSPD), |
| 35568 | /* 100254 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35569 | /* 100256 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 35570 | /* 100259 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35571 | /* 100263 */ GIR_RootConstrainSelectedInstOperands, |
| 35572 | /* 100264 */ // GIR_Coverage, 17076, |
| 35573 | /* 100264 */ GIR_EraseRootFromParent_Done, |
| 35574 | /* 100265 */ // Label 2166: @100265 |
| 35575 | /* 100265 */ GIM_Try, /*On fail goto*//*Label 2167*/ GIMT_Encode4(100296), // Rule ID 17077 // |
| 35576 | /* 100270 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_incsspq), |
| 35577 | /* 100275 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 35578 | /* 100278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35579 | /* 100282 */ // (intrinsic_void 15733:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (INCSSPQ GR64:{ *:[i64] }:$src) |
| 35580 | /* 100282 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INCSSPQ), |
| 35581 | /* 100285 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35582 | /* 100287 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::SSP*/0, |
| 35583 | /* 100290 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35584 | /* 100294 */ GIR_RootConstrainSelectedInstOperands, |
| 35585 | /* 100295 */ // GIR_Coverage, 17077, |
| 35586 | /* 100295 */ GIR_EraseRootFromParent_Done, |
| 35587 | /* 100296 */ // Label 2167: @100296 |
| 35588 | /* 100296 */ GIM_Try, /*On fail goto*//*Label 2168*/ GIMT_Encode4(100327), // Rule ID 17111 // |
| 35589 | /* 100301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 35590 | /* 100304 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrfsbase_32), |
| 35591 | /* 100309 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 35592 | /* 100312 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35593 | /* 100316 */ // (intrinsic_void 16140:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (WRFSBASE GR32:{ *:[i32] }:$src) |
| 35594 | /* 100316 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRFSBASE), |
| 35595 | /* 100319 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35596 | /* 100321 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35597 | /* 100325 */ GIR_RootConstrainSelectedInstOperands, |
| 35598 | /* 100326 */ // GIR_Coverage, 17111, |
| 35599 | /* 100326 */ GIR_EraseRootFromParent_Done, |
| 35600 | /* 100327 */ // Label 2168: @100327 |
| 35601 | /* 100327 */ GIM_Try, /*On fail goto*//*Label 2169*/ GIMT_Encode4(100358), // Rule ID 17112 // |
| 35602 | /* 100332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 35603 | /* 100335 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrfsbase_64), |
| 35604 | /* 100340 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 35605 | /* 100343 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35606 | /* 100347 */ // (intrinsic_void 16141:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (WRFSBASE64 GR64:{ *:[i64] }:$src) |
| 35607 | /* 100347 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRFSBASE64), |
| 35608 | /* 100350 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35609 | /* 100352 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35610 | /* 100356 */ GIR_RootConstrainSelectedInstOperands, |
| 35611 | /* 100357 */ // GIR_Coverage, 17112, |
| 35612 | /* 100357 */ GIR_EraseRootFromParent_Done, |
| 35613 | /* 100358 */ // Label 2169: @100358 |
| 35614 | /* 100358 */ GIM_Try, /*On fail goto*//*Label 2170*/ GIMT_Encode4(100389), // Rule ID 17113 // |
| 35615 | /* 100363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 35616 | /* 100366 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrgsbase_32), |
| 35617 | /* 100371 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 35618 | /* 100374 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35619 | /* 100378 */ // (intrinsic_void 16142:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (WRGSBASE GR32:{ *:[i32] }:$src) |
| 35620 | /* 100378 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRGSBASE), |
| 35621 | /* 100381 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35622 | /* 100383 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35623 | /* 100387 */ GIR_RootConstrainSelectedInstOperands, |
| 35624 | /* 100388 */ // GIR_Coverage, 17113, |
| 35625 | /* 100388 */ GIR_EraseRootFromParent_Done, |
| 35626 | /* 100389 */ // Label 2170: @100389 |
| 35627 | /* 100389 */ GIM_Try, /*On fail goto*//*Label 2171*/ GIMT_Encode4(100420), // Rule ID 17114 // |
| 35628 | /* 100394 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFSGSBase_In64BitMode), |
| 35629 | /* 100397 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrgsbase_64), |
| 35630 | /* 100402 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 35631 | /* 100405 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35632 | /* 100409 */ // (intrinsic_void 16143:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (WRGSBASE64 GR64:{ *:[i64] }:$src) |
| 35633 | /* 100409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRGSBASE64), |
| 35634 | /* 100412 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35635 | /* 100414 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35636 | /* 100418 */ GIR_RootConstrainSelectedInstOperands, |
| 35637 | /* 100419 */ // GIR_Coverage, 17114, |
| 35638 | /* 100419 */ GIR_EraseRootFromParent_Done, |
| 35639 | /* 100420 */ // Label 2171: @100420 |
| 35640 | /* 100420 */ GIM_Try, /*On fail goto*//*Label 2172*/ GIMT_Encode4(100451), // Rule ID 17119 // |
| 35641 | /* 100425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPTWRITE), |
| 35642 | /* 100428 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ptwrite32), |
| 35643 | /* 100433 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 35644 | /* 100436 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35645 | /* 100440 */ // (intrinsic_void 15825:{ *:[iPTR] }, GR32:{ *:[i32] }:$dst) => (PTWRITEr GR32:{ *:[i32] }:$dst) |
| 35646 | /* 100440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTWRITEr), |
| 35647 | /* 100443 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 35648 | /* 100445 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35649 | /* 100449 */ GIR_RootConstrainSelectedInstOperands, |
| 35650 | /* 100450 */ // GIR_Coverage, 17119, |
| 35651 | /* 100450 */ GIR_EraseRootFromParent_Done, |
| 35652 | /* 100451 */ // Label 2172: @100451 |
| 35653 | /* 100451 */ GIM_Try, /*On fail goto*//*Label 2173*/ GIMT_Encode4(100482), // Rule ID 17120 // |
| 35654 | /* 100456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPTWRITE_In64BitMode), |
| 35655 | /* 100459 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_ptwrite64), |
| 35656 | /* 100464 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 35657 | /* 100467 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35658 | /* 100471 */ // (intrinsic_void 15826:{ *:[iPTR] }, GR64:{ *:[i64] }:$dst) => (PTWRITE64r GR64:{ *:[i64] }:$dst) |
| 35659 | /* 100471 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTWRITE64r), |
| 35660 | /* 100474 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 35661 | /* 100476 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35662 | /* 100480 */ GIR_RootConstrainSelectedInstOperands, |
| 35663 | /* 100481 */ // GIR_Coverage, 17120, |
| 35664 | /* 100481 */ GIR_EraseRootFromParent_Done, |
| 35665 | /* 100482 */ // Label 2173: @100482 |
| 35666 | /* 100482 */ GIM_Try, /*On fail goto*//*Label 2174*/ GIMT_Encode4(100514), // Rule ID 114 // |
| 35667 | /* 100487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 35668 | /* 100490 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_llwpcb), |
| 35669 | /* 100495 */ // MIs[0] src |
| 35670 | /* 100495 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 35671 | /* 100499 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35672 | /* 100503 */ // (intrinsic_void 15738:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (LLWPCB GR32:{ *:[i32] }:$src) |
| 35673 | /* 100503 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LLWPCB), |
| 35674 | /* 100506 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35675 | /* 100508 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35676 | /* 100512 */ GIR_RootConstrainSelectedInstOperands, |
| 35677 | /* 100513 */ // GIR_Coverage, 114, |
| 35678 | /* 100513 */ GIR_EraseRootFromParent_Done, |
| 35679 | /* 100514 */ // Label 2174: @100514 |
| 35680 | /* 100514 */ GIM_Try, /*On fail goto*//*Label 2175*/ GIMT_Encode4(100546), // Rule ID 116 // |
| 35681 | /* 100519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 35682 | /* 100522 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_llwpcb), |
| 35683 | /* 100527 */ // MIs[0] src |
| 35684 | /* 100527 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 35685 | /* 100531 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35686 | /* 100535 */ // (intrinsic_void 15738:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (LLWPCB64 GR64:{ *:[i64] }:$src) |
| 35687 | /* 100535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LLWPCB64), |
| 35688 | /* 100538 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35689 | /* 100540 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35690 | /* 100544 */ GIR_RootConstrainSelectedInstOperands, |
| 35691 | /* 100545 */ // GIR_Coverage, 116, |
| 35692 | /* 100545 */ GIR_EraseRootFromParent_Done, |
| 35693 | /* 100546 */ // Label 2175: @100546 |
| 35694 | /* 100546 */ GIM_Try, /*On fail goto*//*Label 2176*/ GIMT_Encode4(100578), // Rule ID 126 // |
| 35695 | /* 100551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasWAITPKG_Not64BitMode), |
| 35696 | /* 100554 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_umonitor), |
| 35697 | /* 100559 */ // MIs[0] src |
| 35698 | /* 100559 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/16, |
| 35699 | /* 100563 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 35700 | /* 100567 */ // (intrinsic_void 16097:{ *:[iPTR] }, GR16:{ *:[i16] }:$src) => (UMONITOR16 GR16:{ *:[i16] }:$src) |
| 35701 | /* 100567 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UMONITOR16), |
| 35702 | /* 100570 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35703 | /* 100572 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35704 | /* 100576 */ GIR_RootConstrainSelectedInstOperands, |
| 35705 | /* 100577 */ // GIR_Coverage, 126, |
| 35706 | /* 100577 */ GIR_EraseRootFromParent_Done, |
| 35707 | /* 100578 */ // Label 2176: @100578 |
| 35708 | /* 100578 */ GIM_Try, /*On fail goto*//*Label 2177*/ GIMT_Encode4(100610), // Rule ID 127 // |
| 35709 | /* 100583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasWAITPKG), |
| 35710 | /* 100586 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_umonitor), |
| 35711 | /* 100591 */ // MIs[0] src |
| 35712 | /* 100591 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 35713 | /* 100595 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35714 | /* 100599 */ // (intrinsic_void 16097:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (UMONITOR32 GR32:{ *:[i32] }:$src) |
| 35715 | /* 100599 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UMONITOR32), |
| 35716 | /* 100602 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35717 | /* 100604 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35718 | /* 100608 */ GIR_RootConstrainSelectedInstOperands, |
| 35719 | /* 100609 */ // GIR_Coverage, 127, |
| 35720 | /* 100609 */ GIR_EraseRootFromParent_Done, |
| 35721 | /* 100610 */ // Label 2177: @100610 |
| 35722 | /* 100610 */ GIM_Try, /*On fail goto*//*Label 2178*/ GIMT_Encode4(100642), // Rule ID 128 // |
| 35723 | /* 100615 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasWAITPKG_In64BitMode), |
| 35724 | /* 100618 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_umonitor), |
| 35725 | /* 100623 */ // MIs[0] src |
| 35726 | /* 100623 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 35727 | /* 100627 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35728 | /* 100631 */ // (intrinsic_void 16097:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (UMONITOR64 GR64:{ *:[i64] }:$src) |
| 35729 | /* 100631 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UMONITOR64), |
| 35730 | /* 100634 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 35731 | /* 100636 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35732 | /* 100640 */ GIR_RootConstrainSelectedInstOperands, |
| 35733 | /* 100641 */ // GIR_Coverage, 128, |
| 35734 | /* 100641 */ GIR_EraseRootFromParent_Done, |
| 35735 | /* 100642 */ // Label 2178: @100642 |
| 35736 | /* 100642 */ GIM_Reject, |
| 35737 | /* 100643 */ // Label 2126: @100643 |
| 35738 | /* 100643 */ GIM_Try, /*On fail goto*//*Label 2179*/ GIMT_Encode4(103567), |
| 35739 | /* 100648 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 35740 | /* 100651 */ GIM_Try, /*On fail goto*//*Label 2180*/ GIMT_Encode4(100697), // Rule ID 165 // |
| 35741 | /* 100656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS_In64BitMode_NoEGPR), |
| 35742 | /* 100659 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrsqi), |
| 35743 | /* 100664 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s8, |
| 35744 | /* 100667 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 35745 | /* 100671 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35746 | /* 100675 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35747 | /* 100682 */ // (intrinsic_w_chain:{ *:[i8] } 15818:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS8rm:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 35748 | /* 100682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS8rm), |
| 35749 | /* 100685 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35750 | /* 100687 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35751 | /* 100691 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35752 | /* 100695 */ GIR_RootConstrainSelectedInstOperands, |
| 35753 | /* 100696 */ // GIR_Coverage, 165, |
| 35754 | /* 100696 */ GIR_EraseRootFromParent_Done, |
| 35755 | /* 100697 */ // Label 2180: @100697 |
| 35756 | /* 100697 */ GIM_Try, /*On fail goto*//*Label 2181*/ GIMT_Encode4(100743), // Rule ID 166 // |
| 35757 | /* 100702 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS_In64BitMode_NoEGPR), |
| 35758 | /* 100705 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrshi), |
| 35759 | /* 100710 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s16, |
| 35760 | /* 100713 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 35761 | /* 100717 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35762 | /* 100721 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35763 | /* 100728 */ // (intrinsic_w_chain:{ *:[i16] } 15817:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS16rm:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 35764 | /* 100728 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS16rm), |
| 35765 | /* 100731 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35766 | /* 100733 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35767 | /* 100737 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35768 | /* 100741 */ GIR_RootConstrainSelectedInstOperands, |
| 35769 | /* 100742 */ // GIR_Coverage, 166, |
| 35770 | /* 100742 */ GIR_EraseRootFromParent_Done, |
| 35771 | /* 100743 */ // Label 2181: @100743 |
| 35772 | /* 100743 */ GIM_Try, /*On fail goto*//*Label 2182*/ GIMT_Encode4(100789), // Rule ID 167 // |
| 35773 | /* 100748 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS_In64BitMode_NoEGPR), |
| 35774 | /* 100751 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrssi), |
| 35775 | /* 100756 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35776 | /* 100759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35777 | /* 100763 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35778 | /* 100767 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35779 | /* 100774 */ // (intrinsic_w_chain:{ *:[i32] } 15819:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 35780 | /* 100774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS32rm), |
| 35781 | /* 100777 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35782 | /* 100779 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35783 | /* 100783 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35784 | /* 100787 */ GIR_RootConstrainSelectedInstOperands, |
| 35785 | /* 100788 */ // GIR_Coverage, 167, |
| 35786 | /* 100788 */ GIR_EraseRootFromParent_Done, |
| 35787 | /* 100789 */ // Label 2182: @100789 |
| 35788 | /* 100789 */ GIM_Try, /*On fail goto*//*Label 2183*/ GIMT_Encode4(100835), // Rule ID 168 // |
| 35789 | /* 100794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVRS_In64BitMode_NoEGPR), |
| 35790 | /* 100797 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrsdi), |
| 35791 | /* 100802 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 35792 | /* 100805 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35793 | /* 100809 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35794 | /* 100813 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35795 | /* 100820 */ // (intrinsic_w_chain:{ *:[i64] } 15816:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 35796 | /* 100820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS64rm), |
| 35797 | /* 100823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35798 | /* 100825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35799 | /* 100829 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35800 | /* 100833 */ GIR_RootConstrainSelectedInstOperands, |
| 35801 | /* 100834 */ // GIR_Coverage, 168, |
| 35802 | /* 100834 */ GIR_EraseRootFromParent_Done, |
| 35803 | /* 100835 */ // Label 2183: @100835 |
| 35804 | /* 100835 */ GIM_Try, /*On fail goto*//*Label 2184*/ GIMT_Encode4(100881), // Rule ID 170 // |
| 35805 | /* 100840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVRS_In64BitMode), |
| 35806 | /* 100843 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrsqi), |
| 35807 | /* 100848 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s8, |
| 35808 | /* 100851 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 35809 | /* 100855 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35810 | /* 100859 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35811 | /* 100866 */ // (intrinsic_w_chain:{ *:[i8] } 15818:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS8rm_EVEX:{ *:[i8] } addr:{ *:[iPTR] }:$src) |
| 35812 | /* 100866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS8rm_EVEX), |
| 35813 | /* 100869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35814 | /* 100871 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35815 | /* 100875 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35816 | /* 100879 */ GIR_RootConstrainSelectedInstOperands, |
| 35817 | /* 100880 */ // GIR_Coverage, 170, |
| 35818 | /* 100880 */ GIR_EraseRootFromParent_Done, |
| 35819 | /* 100881 */ // Label 2184: @100881 |
| 35820 | /* 100881 */ GIM_Try, /*On fail goto*//*Label 2185*/ GIMT_Encode4(100927), // Rule ID 171 // |
| 35821 | /* 100886 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVRS_In64BitMode), |
| 35822 | /* 100889 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrshi), |
| 35823 | /* 100894 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s16, |
| 35824 | /* 100897 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 35825 | /* 100901 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35826 | /* 100905 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35827 | /* 100912 */ // (intrinsic_w_chain:{ *:[i16] } 15817:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS16rm_EVEX:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 35828 | /* 100912 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS16rm_EVEX), |
| 35829 | /* 100915 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35830 | /* 100917 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35831 | /* 100921 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35832 | /* 100925 */ GIR_RootConstrainSelectedInstOperands, |
| 35833 | /* 100926 */ // GIR_Coverage, 171, |
| 35834 | /* 100926 */ GIR_EraseRootFromParent_Done, |
| 35835 | /* 100927 */ // Label 2185: @100927 |
| 35836 | /* 100927 */ GIM_Try, /*On fail goto*//*Label 2186*/ GIMT_Encode4(100973), // Rule ID 172 // |
| 35837 | /* 100932 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVRS_In64BitMode), |
| 35838 | /* 100935 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrssi), |
| 35839 | /* 100940 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 35840 | /* 100943 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 35841 | /* 100947 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35842 | /* 100951 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35843 | /* 100958 */ // (intrinsic_w_chain:{ *:[i32] } 15819:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS32rm_EVEX:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 35844 | /* 100958 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS32rm_EVEX), |
| 35845 | /* 100961 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35846 | /* 100963 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35847 | /* 100967 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35848 | /* 100971 */ GIR_RootConstrainSelectedInstOperands, |
| 35849 | /* 100972 */ // GIR_Coverage, 172, |
| 35850 | /* 100972 */ GIR_EraseRootFromParent_Done, |
| 35851 | /* 100973 */ // Label 2186: @100973 |
| 35852 | /* 100973 */ GIM_Try, /*On fail goto*//*Label 2187*/ GIMT_Encode4(101019), // Rule ID 173 // |
| 35853 | /* 100978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVRS_In64BitMode), |
| 35854 | /* 100981 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_movrsdi), |
| 35855 | /* 100986 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 35856 | /* 100989 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 35857 | /* 100993 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35858 | /* 100997 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35859 | /* 101004 */ // (intrinsic_w_chain:{ *:[i64] } 15816:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (MOVRS64rm_EVEX:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 35860 | /* 101004 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVRS64rm_EVEX), |
| 35861 | /* 101007 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35862 | /* 101009 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35863 | /* 101013 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35864 | /* 101017 */ GIR_RootConstrainSelectedInstOperands, |
| 35865 | /* 101018 */ // GIR_Coverage, 173, |
| 35866 | /* 101018 */ GIR_EraseRootFromParent_Done, |
| 35867 | /* 101019 */ // Label 2187: @101019 |
| 35868 | /* 101019 */ GIM_Try, /*On fail goto*//*Label 2188*/ GIMT_Encode4(101065), // Rule ID 2951 // |
| 35869 | /* 101024 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 35870 | /* 101027 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse3_ldu_dq), |
| 35871 | /* 101032 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 35872 | /* 101035 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35873 | /* 101039 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35874 | /* 101043 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35875 | /* 101050 */ // (intrinsic_w_chain:{ *:[v16i8] } 15964:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VLDDQUrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 35876 | /* 101050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VLDDQUrm), |
| 35877 | /* 101053 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35878 | /* 101055 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35879 | /* 101059 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35880 | /* 101063 */ GIR_RootConstrainSelectedInstOperands, |
| 35881 | /* 101064 */ // GIR_Coverage, 2951, |
| 35882 | /* 101064 */ GIR_EraseRootFromParent_Done, |
| 35883 | /* 101065 */ // Label 2188: @101065 |
| 35884 | /* 101065 */ GIM_Try, /*On fail goto*//*Label 2189*/ GIMT_Encode4(101111), // Rule ID 2952 // |
| 35885 | /* 101070 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 35886 | /* 101073 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_ldu_dq_256), |
| 35887 | /* 101078 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s8, |
| 35888 | /* 101081 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35889 | /* 101085 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35890 | /* 101089 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35891 | /* 101096 */ // (intrinsic_w_chain:{ *:[v32i8] } 14585:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VLDDQUYrm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 35892 | /* 101096 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VLDDQUYrm), |
| 35893 | /* 101099 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35894 | /* 101101 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35895 | /* 101105 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35896 | /* 101109 */ GIR_RootConstrainSelectedInstOperands, |
| 35897 | /* 101110 */ // GIR_Coverage, 2952, |
| 35898 | /* 101110 */ GIR_EraseRootFromParent_Done, |
| 35899 | /* 101111 */ // Label 2189: @101111 |
| 35900 | /* 101111 */ GIM_Try, /*On fail goto*//*Label 2190*/ GIMT_Encode4(101157), // Rule ID 2953 // |
| 35901 | /* 101116 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE3), |
| 35902 | /* 101119 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_sse3_ldu_dq), |
| 35903 | /* 101124 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 35904 | /* 101127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35905 | /* 101131 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35906 | /* 101135 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35907 | /* 101142 */ // (intrinsic_w_chain:{ *:[v16i8] } 15964:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (LDDQUrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 35908 | /* 101142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LDDQUrm), |
| 35909 | /* 101145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35910 | /* 101147 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35911 | /* 101151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35912 | /* 101155 */ GIR_RootConstrainSelectedInstOperands, |
| 35913 | /* 101156 */ // GIR_Coverage, 2953, |
| 35914 | /* 101156 */ GIR_EraseRootFromParent_Done, |
| 35915 | /* 101157 */ // Label 2190: @101157 |
| 35916 | /* 101157 */ GIM_Try, /*On fail goto*//*Label 2191*/ GIMT_Encode4(101203), // Rule ID 3543 // |
| 35917 | /* 101162 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 35918 | /* 101165 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vbcstnebf162ps128), |
| 35919 | /* 101170 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35920 | /* 101173 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35921 | /* 101177 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35922 | /* 101181 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35923 | /* 101188 */ // (intrinsic_w_chain:{ *:[v4f32] } 16101:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VBCSTNEBF162PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 35924 | /* 101188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VBCSTNEBF162PSrm), |
| 35925 | /* 101191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35926 | /* 101193 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35927 | /* 101197 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35928 | /* 101201 */ GIR_RootConstrainSelectedInstOperands, |
| 35929 | /* 101202 */ // GIR_Coverage, 3543, |
| 35930 | /* 101202 */ GIR_EraseRootFromParent_Done, |
| 35931 | /* 101203 */ // Label 2191: @101203 |
| 35932 | /* 101203 */ GIM_Try, /*On fail goto*//*Label 2192*/ GIMT_Encode4(101249), // Rule ID 3544 // |
| 35933 | /* 101208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 35934 | /* 101211 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vbcstnebf162ps256), |
| 35935 | /* 101216 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 35936 | /* 101219 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35937 | /* 101223 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35938 | /* 101227 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35939 | /* 101234 */ // (intrinsic_w_chain:{ *:[v8f32] } 16102:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VBCSTNEBF162PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 35940 | /* 101234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VBCSTNEBF162PSYrm), |
| 35941 | /* 101237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35942 | /* 101239 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35943 | /* 101243 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35944 | /* 101247 */ GIR_RootConstrainSelectedInstOperands, |
| 35945 | /* 101248 */ // GIR_Coverage, 3544, |
| 35946 | /* 101248 */ GIR_EraseRootFromParent_Done, |
| 35947 | /* 101249 */ // Label 2192: @101249 |
| 35948 | /* 101249 */ GIM_Try, /*On fail goto*//*Label 2193*/ GIMT_Encode4(101295), // Rule ID 3545 // |
| 35949 | /* 101254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 35950 | /* 101257 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vbcstnesh2ps128), |
| 35951 | /* 101262 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35952 | /* 101265 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35953 | /* 101269 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35954 | /* 101273 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35955 | /* 101280 */ // (intrinsic_w_chain:{ *:[v4f32] } 16103:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VBCSTNESH2PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 35956 | /* 101280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VBCSTNESH2PSrm), |
| 35957 | /* 101283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35958 | /* 101285 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35959 | /* 101289 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35960 | /* 101293 */ GIR_RootConstrainSelectedInstOperands, |
| 35961 | /* 101294 */ // GIR_Coverage, 3545, |
| 35962 | /* 101294 */ GIR_EraseRootFromParent_Done, |
| 35963 | /* 101295 */ // Label 2193: @101295 |
| 35964 | /* 101295 */ GIM_Try, /*On fail goto*//*Label 2194*/ GIMT_Encode4(101341), // Rule ID 3546 // |
| 35965 | /* 101300 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 35966 | /* 101303 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vbcstnesh2ps256), |
| 35967 | /* 101308 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 35968 | /* 101311 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 35969 | /* 101315 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35970 | /* 101319 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35971 | /* 101326 */ // (intrinsic_w_chain:{ *:[v8f32] } 16104:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VBCSTNESH2PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 35972 | /* 101326 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VBCSTNESH2PSYrm), |
| 35973 | /* 101329 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35974 | /* 101331 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35975 | /* 101335 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35976 | /* 101339 */ GIR_RootConstrainSelectedInstOperands, |
| 35977 | /* 101340 */ // GIR_Coverage, 3546, |
| 35978 | /* 101340 */ GIR_EraseRootFromParent_Done, |
| 35979 | /* 101341 */ // Label 2194: @101341 |
| 35980 | /* 101341 */ GIM_Try, /*On fail goto*//*Label 2195*/ GIMT_Encode4(101387), // Rule ID 3547 // |
| 35981 | /* 101346 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 35982 | /* 101349 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneebf162ps128), |
| 35983 | /* 101354 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 35984 | /* 101357 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 35985 | /* 101361 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 35986 | /* 101365 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 35987 | /* 101372 */ // (intrinsic_w_chain:{ *:[v4f32] } 16105:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEEBF162PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 35988 | /* 101372 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEEBF162PSrm), |
| 35989 | /* 101375 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 35990 | /* 101377 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 35991 | /* 101381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 35992 | /* 101385 */ GIR_RootConstrainSelectedInstOperands, |
| 35993 | /* 101386 */ // GIR_Coverage, 3547, |
| 35994 | /* 101386 */ GIR_EraseRootFromParent_Done, |
| 35995 | /* 101387 */ // Label 2195: @101387 |
| 35996 | /* 101387 */ GIM_Try, /*On fail goto*//*Label 2196*/ GIMT_Encode4(101433), // Rule ID 3548 // |
| 35997 | /* 101392 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 35998 | /* 101395 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneebf162ps256), |
| 35999 | /* 101400 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36000 | /* 101403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36001 | /* 101407 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36002 | /* 101411 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36003 | /* 101418 */ // (intrinsic_w_chain:{ *:[v8f32] } 16106:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEEBF162PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36004 | /* 101418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEEBF162PSYrm), |
| 36005 | /* 101421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36006 | /* 101423 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36007 | /* 101427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36008 | /* 101431 */ GIR_RootConstrainSelectedInstOperands, |
| 36009 | /* 101432 */ // GIR_Coverage, 3548, |
| 36010 | /* 101432 */ GIR_EraseRootFromParent_Done, |
| 36011 | /* 101433 */ // Label 2196: @101433 |
| 36012 | /* 101433 */ GIM_Try, /*On fail goto*//*Label 2197*/ GIMT_Encode4(101479), // Rule ID 3549 // |
| 36013 | /* 101438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36014 | /* 101441 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneeph2ps128), |
| 36015 | /* 101446 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36016 | /* 101449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36017 | /* 101453 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36018 | /* 101457 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36019 | /* 101464 */ // (intrinsic_w_chain:{ *:[v4f32] } 16107:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEEPH2PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36020 | /* 101464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEEPH2PSrm), |
| 36021 | /* 101467 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36022 | /* 101469 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36023 | /* 101473 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36024 | /* 101477 */ GIR_RootConstrainSelectedInstOperands, |
| 36025 | /* 101478 */ // GIR_Coverage, 3549, |
| 36026 | /* 101478 */ GIR_EraseRootFromParent_Done, |
| 36027 | /* 101479 */ // Label 2197: @101479 |
| 36028 | /* 101479 */ GIM_Try, /*On fail goto*//*Label 2198*/ GIMT_Encode4(101525), // Rule ID 3550 // |
| 36029 | /* 101484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36030 | /* 101487 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneeph2ps256), |
| 36031 | /* 101492 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36032 | /* 101495 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36033 | /* 101499 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36034 | /* 101503 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36035 | /* 101510 */ // (intrinsic_w_chain:{ *:[v8f32] } 16108:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEEPH2PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36036 | /* 101510 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEEPH2PSYrm), |
| 36037 | /* 101513 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36038 | /* 101515 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36039 | /* 101519 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36040 | /* 101523 */ GIR_RootConstrainSelectedInstOperands, |
| 36041 | /* 101524 */ // GIR_Coverage, 3550, |
| 36042 | /* 101524 */ GIR_EraseRootFromParent_Done, |
| 36043 | /* 101525 */ // Label 2198: @101525 |
| 36044 | /* 101525 */ GIM_Try, /*On fail goto*//*Label 2199*/ GIMT_Encode4(101571), // Rule ID 3551 // |
| 36045 | /* 101530 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36046 | /* 101533 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneobf162ps128), |
| 36047 | /* 101538 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36048 | /* 101541 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36049 | /* 101545 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36050 | /* 101549 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36051 | /* 101556 */ // (intrinsic_w_chain:{ *:[v4f32] } 16109:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEOBF162PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36052 | /* 101556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEOBF162PSrm), |
| 36053 | /* 101559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36054 | /* 101561 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36055 | /* 101565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36056 | /* 101569 */ GIR_RootConstrainSelectedInstOperands, |
| 36057 | /* 101570 */ // GIR_Coverage, 3551, |
| 36058 | /* 101570 */ GIR_EraseRootFromParent_Done, |
| 36059 | /* 101571 */ // Label 2199: @101571 |
| 36060 | /* 101571 */ GIM_Try, /*On fail goto*//*Label 2200*/ GIMT_Encode4(101617), // Rule ID 3552 // |
| 36061 | /* 101576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36062 | /* 101579 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneobf162ps256), |
| 36063 | /* 101584 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36064 | /* 101587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36065 | /* 101591 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36066 | /* 101595 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36067 | /* 101602 */ // (intrinsic_w_chain:{ *:[v8f32] } 16110:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEOBF162PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36068 | /* 101602 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEOBF162PSYrm), |
| 36069 | /* 101605 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36070 | /* 101607 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36071 | /* 101611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36072 | /* 101615 */ GIR_RootConstrainSelectedInstOperands, |
| 36073 | /* 101616 */ // GIR_Coverage, 3552, |
| 36074 | /* 101616 */ GIR_EraseRootFromParent_Done, |
| 36075 | /* 101617 */ // Label 2200: @101617 |
| 36076 | /* 101617 */ GIM_Try, /*On fail goto*//*Label 2201*/ GIMT_Encode4(101663), // Rule ID 3553 // |
| 36077 | /* 101622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36078 | /* 101625 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneoph2ps128), |
| 36079 | /* 101630 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36080 | /* 101633 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36081 | /* 101637 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36082 | /* 101641 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36083 | /* 101648 */ // (intrinsic_w_chain:{ *:[v4f32] } 16111:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEOPH2PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 36084 | /* 101648 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEOPH2PSrm), |
| 36085 | /* 101651 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36086 | /* 101653 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36087 | /* 101657 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36088 | /* 101661 */ GIR_RootConstrainSelectedInstOperands, |
| 36089 | /* 101662 */ // GIR_Coverage, 3553, |
| 36090 | /* 101662 */ GIR_EraseRootFromParent_Done, |
| 36091 | /* 101663 */ // Label 2201: @101663 |
| 36092 | /* 101663 */ GIM_Try, /*On fail goto*//*Label 2202*/ GIMT_Encode4(101709), // Rule ID 3554 // |
| 36093 | /* 101668 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVXNECONVERT), |
| 36094 | /* 101671 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_vcvtneoph2ps256), |
| 36095 | /* 101676 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36096 | /* 101679 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36097 | /* 101683 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36098 | /* 101687 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36099 | /* 101694 */ // (intrinsic_w_chain:{ *:[v8f32] } 16112:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VCVTNEOPH2PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 36100 | /* 101694 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTNEOPH2PSYrm), |
| 36101 | /* 101697 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36102 | /* 101699 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36103 | /* 101703 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36104 | /* 101707 */ GIR_RootConstrainSelectedInstOperands, |
| 36105 | /* 101708 */ // GIR_Coverage, 3554, |
| 36106 | /* 101708 */ GIR_EraseRootFromParent_Done, |
| 36107 | /* 101709 */ // Label 2202: @101709 |
| 36108 | /* 101709 */ GIM_Try, /*On fail goto*//*Label 2203*/ GIMT_Encode4(101755), // Rule ID 16757 // |
| 36109 | /* 101714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36110 | /* 101717 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsb512), |
| 36111 | /* 101722 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v64s8, |
| 36112 | /* 101725 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 36113 | /* 101729 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36114 | /* 101733 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36115 | /* 101740 */ // (intrinsic_w_chain:{ *:[v64i8] } 14841:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSBZm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src) |
| 36116 | /* 101740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSBZm), |
| 36117 | /* 101743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36118 | /* 101745 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36119 | /* 101749 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36120 | /* 101753 */ GIR_RootConstrainSelectedInstOperands, |
| 36121 | /* 101754 */ // GIR_Coverage, 16757, |
| 36122 | /* 101754 */ GIR_EraseRootFromParent_Done, |
| 36123 | /* 101755 */ // Label 2203: @101755 |
| 36124 | /* 101755 */ GIM_Try, /*On fail goto*//*Label 2204*/ GIMT_Encode4(101801), // Rule ID 16760 // |
| 36125 | /* 101760 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36126 | /* 101763 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsb128), |
| 36127 | /* 101768 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 36128 | /* 101771 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 36129 | /* 101775 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36130 | /* 101779 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36131 | /* 101786 */ // (intrinsic_w_chain:{ *:[v16i8] } 14839:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSBZ128m:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 36132 | /* 101786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSBZ128m), |
| 36133 | /* 101789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36134 | /* 101791 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36135 | /* 101795 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36136 | /* 101799 */ GIR_RootConstrainSelectedInstOperands, |
| 36137 | /* 101800 */ // GIR_Coverage, 16760, |
| 36138 | /* 101800 */ GIR_EraseRootFromParent_Done, |
| 36139 | /* 101801 */ // Label 2204: @101801 |
| 36140 | /* 101801 */ GIM_Try, /*On fail goto*//*Label 2205*/ GIMT_Encode4(101847), // Rule ID 16763 // |
| 36141 | /* 101806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36142 | /* 101809 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsb256), |
| 36143 | /* 101814 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s8, |
| 36144 | /* 101817 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 36145 | /* 101821 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36146 | /* 101825 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36147 | /* 101832 */ // (intrinsic_w_chain:{ *:[v32i8] } 14840:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSBZ256m:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 36148 | /* 101832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSBZ256m), |
| 36149 | /* 101835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36150 | /* 101837 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36151 | /* 101841 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36152 | /* 101845 */ GIR_RootConstrainSelectedInstOperands, |
| 36153 | /* 101846 */ // GIR_Coverage, 16763, |
| 36154 | /* 101846 */ GIR_EraseRootFromParent_Done, |
| 36155 | /* 101847 */ // Label 2205: @101847 |
| 36156 | /* 101847 */ GIM_Try, /*On fail goto*//*Label 2206*/ GIMT_Encode4(101893), // Rule ID 16766 // |
| 36157 | /* 101852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36158 | /* 101855 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsw512), |
| 36159 | /* 101860 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 36160 | /* 101863 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 36161 | /* 101867 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36162 | /* 101871 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36163 | /* 101878 */ // (intrinsic_w_chain:{ *:[v32i16] } 14850:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSWZm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 36164 | /* 101878 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSWZm), |
| 36165 | /* 101881 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36166 | /* 101883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36167 | /* 101887 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36168 | /* 101891 */ GIR_RootConstrainSelectedInstOperands, |
| 36169 | /* 101892 */ // GIR_Coverage, 16766, |
| 36170 | /* 101892 */ GIR_EraseRootFromParent_Done, |
| 36171 | /* 101893 */ // Label 2206: @101893 |
| 36172 | /* 101893 */ GIM_Try, /*On fail goto*//*Label 2207*/ GIMT_Encode4(101939), // Rule ID 16769 // |
| 36173 | /* 101898 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36174 | /* 101901 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsw128), |
| 36175 | /* 101906 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 36176 | /* 101909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 36177 | /* 101913 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36178 | /* 101917 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36179 | /* 101924 */ // (intrinsic_w_chain:{ *:[v8i16] } 14848:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSWZ128m:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 36180 | /* 101924 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSWZ128m), |
| 36181 | /* 101927 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36182 | /* 101929 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36183 | /* 101933 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36184 | /* 101937 */ GIR_RootConstrainSelectedInstOperands, |
| 36185 | /* 101938 */ // GIR_Coverage, 16769, |
| 36186 | /* 101938 */ GIR_EraseRootFromParent_Done, |
| 36187 | /* 101939 */ // Label 2207: @101939 |
| 36188 | /* 101939 */ GIM_Try, /*On fail goto*//*Label 2208*/ GIMT_Encode4(101985), // Rule ID 16772 // |
| 36189 | /* 101944 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36190 | /* 101947 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsw256), |
| 36191 | /* 101952 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s16, |
| 36192 | /* 101955 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 36193 | /* 101959 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36194 | /* 101963 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36195 | /* 101970 */ // (intrinsic_w_chain:{ *:[v16i16] } 14849:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSWZ256m:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 36196 | /* 101970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSWZ256m), |
| 36197 | /* 101973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36198 | /* 101975 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36199 | /* 101979 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36200 | /* 101983 */ GIR_RootConstrainSelectedInstOperands, |
| 36201 | /* 101984 */ // GIR_Coverage, 16772, |
| 36202 | /* 101984 */ GIR_EraseRootFromParent_Done, |
| 36203 | /* 101985 */ // Label 2208: @101985 |
| 36204 | /* 101985 */ GIM_Try, /*On fail goto*//*Label 2209*/ GIMT_Encode4(102031), // Rule ID 16775 // |
| 36205 | /* 101990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36206 | /* 101993 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsd512), |
| 36207 | /* 101998 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 36208 | /* 102001 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 36209 | /* 102005 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36210 | /* 102009 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36211 | /* 102016 */ // (intrinsic_w_chain:{ *:[v16i32] } 14844:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSDZm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 36212 | /* 102016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSDZm), |
| 36213 | /* 102019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36214 | /* 102021 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36215 | /* 102025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36216 | /* 102029 */ GIR_RootConstrainSelectedInstOperands, |
| 36217 | /* 102030 */ // GIR_Coverage, 16775, |
| 36218 | /* 102030 */ GIR_EraseRootFromParent_Done, |
| 36219 | /* 102031 */ // Label 2209: @102031 |
| 36220 | /* 102031 */ GIM_Try, /*On fail goto*//*Label 2210*/ GIMT_Encode4(102077), // Rule ID 16778 // |
| 36221 | /* 102036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36222 | /* 102039 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsd128), |
| 36223 | /* 102044 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36224 | /* 102047 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 36225 | /* 102051 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36226 | /* 102055 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36227 | /* 102062 */ // (intrinsic_w_chain:{ *:[v4i32] } 14842:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSDZ128m:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 36228 | /* 102062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSDZ128m), |
| 36229 | /* 102065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36230 | /* 102067 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36231 | /* 102071 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36232 | /* 102075 */ GIR_RootConstrainSelectedInstOperands, |
| 36233 | /* 102076 */ // GIR_Coverage, 16778, |
| 36234 | /* 102076 */ GIR_EraseRootFromParent_Done, |
| 36235 | /* 102077 */ // Label 2210: @102077 |
| 36236 | /* 102077 */ GIM_Try, /*On fail goto*//*Label 2211*/ GIMT_Encode4(102123), // Rule ID 16781 // |
| 36237 | /* 102082 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36238 | /* 102085 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsd256), |
| 36239 | /* 102090 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36240 | /* 102093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 36241 | /* 102097 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36242 | /* 102101 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36243 | /* 102108 */ // (intrinsic_w_chain:{ *:[v8i32] } 14843:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSDZ256m:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 36244 | /* 102108 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSDZ256m), |
| 36245 | /* 102111 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36246 | /* 102113 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36247 | /* 102117 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36248 | /* 102121 */ GIR_RootConstrainSelectedInstOperands, |
| 36249 | /* 102122 */ // GIR_Coverage, 16781, |
| 36250 | /* 102122 */ GIR_EraseRootFromParent_Done, |
| 36251 | /* 102123 */ // Label 2211: @102123 |
| 36252 | /* 102123 */ GIM_Try, /*On fail goto*//*Label 2212*/ GIMT_Encode4(102169), // Rule ID 16784 // |
| 36253 | /* 102128 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36254 | /* 102131 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsq512), |
| 36255 | /* 102136 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s64, |
| 36256 | /* 102139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 36257 | /* 102143 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36258 | /* 102147 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36259 | /* 102154 */ // (intrinsic_w_chain:{ *:[v8i64] } 14847:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSQZm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 36260 | /* 102154 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSQZm), |
| 36261 | /* 102157 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36262 | /* 102159 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36263 | /* 102163 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36264 | /* 102167 */ GIR_RootConstrainSelectedInstOperands, |
| 36265 | /* 102168 */ // GIR_Coverage, 16784, |
| 36266 | /* 102168 */ GIR_EraseRootFromParent_Done, |
| 36267 | /* 102169 */ // Label 2212: @102169 |
| 36268 | /* 102169 */ GIM_Try, /*On fail goto*//*Label 2213*/ GIMT_Encode4(102215), // Rule ID 16787 // |
| 36269 | /* 102174 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36270 | /* 102177 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsq128), |
| 36271 | /* 102182 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 36272 | /* 102185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 36273 | /* 102189 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36274 | /* 102193 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36275 | /* 102200 */ // (intrinsic_w_chain:{ *:[v2i64] } 14845:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSQZ128m:{ *:[v2i64] } addr:{ *:[iPTR] }:$src) |
| 36276 | /* 102200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSQZ128m), |
| 36277 | /* 102203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36278 | /* 102205 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36279 | /* 102209 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36280 | /* 102213 */ GIR_RootConstrainSelectedInstOperands, |
| 36281 | /* 102214 */ // GIR_Coverage, 16787, |
| 36282 | /* 102214 */ GIR_EraseRootFromParent_Done, |
| 36283 | /* 102215 */ // Label 2213: @102215 |
| 36284 | /* 102215 */ GIM_Try, /*On fail goto*//*Label 2214*/ GIMT_Encode4(102261), // Rule ID 16790 // |
| 36285 | /* 102220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX10_2_HasMOVRS_In64BitMode), |
| 36286 | /* 102223 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx10_vmovrsq256), |
| 36287 | /* 102228 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 36288 | /* 102231 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 36289 | /* 102235 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36290 | /* 102239 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36291 | /* 102246 */ // (intrinsic_w_chain:{ *:[v4i64] } 14846:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src) => (VMOVRSQZ256m:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 36292 | /* 102246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVRSQZ256m), |
| 36293 | /* 102249 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36294 | /* 102251 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36295 | /* 102255 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36296 | /* 102259 */ GIR_RootConstrainSelectedInstOperands, |
| 36297 | /* 102260 */ // GIR_Coverage, 16790, |
| 36298 | /* 102260 */ GIR_EraseRootFromParent_Done, |
| 36299 | /* 102261 */ // Label 2214: @102261 |
| 36300 | /* 102261 */ GIM_Try, /*On fail goto*//*Label 2215*/ GIMT_Encode4(102307), // Rule ID 17082 // |
| 36301 | /* 102266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoEGPR), |
| 36302 | /* 102269 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrssd), |
| 36303 | /* 102274 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36304 | /* 102277 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36305 | /* 102281 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36306 | /* 102285 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36307 | /* 102292 */ // (intrinsic_void 16145:{ *:[iPTR] }, GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst) => (WRSSD addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 36308 | /* 102292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRSSD), |
| 36309 | /* 102295 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36310 | /* 102299 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36311 | /* 102301 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36312 | /* 102305 */ GIR_RootConstrainSelectedInstOperands, |
| 36313 | /* 102306 */ // GIR_Coverage, 17082, |
| 36314 | /* 102306 */ GIR_EraseRootFromParent_Done, |
| 36315 | /* 102307 */ // Label 2215: @102307 |
| 36316 | /* 102307 */ GIM_Try, /*On fail goto*//*Label 2216*/ GIMT_Encode4(102353), // Rule ID 17083 // |
| 36317 | /* 102312 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoEGPR), |
| 36318 | /* 102315 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrssq), |
| 36319 | /* 102320 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36320 | /* 102323 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36321 | /* 102327 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36322 | /* 102331 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36323 | /* 102338 */ // (intrinsic_void 16146:{ *:[iPTR] }, GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst) => (WRSSQ addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 36324 | /* 102338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRSSQ), |
| 36325 | /* 102341 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36326 | /* 102345 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36327 | /* 102347 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36328 | /* 102351 */ GIR_RootConstrainSelectedInstOperands, |
| 36329 | /* 102352 */ // GIR_Coverage, 17083, |
| 36330 | /* 102352 */ GIR_EraseRootFromParent_Done, |
| 36331 | /* 102353 */ // Label 2216: @102353 |
| 36332 | /* 102353 */ GIM_Try, /*On fail goto*//*Label 2217*/ GIMT_Encode4(102399), // Rule ID 17084 // |
| 36333 | /* 102358 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoEGPR), |
| 36334 | /* 102361 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrussd), |
| 36335 | /* 102366 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36336 | /* 102369 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36337 | /* 102373 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36338 | /* 102377 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36339 | /* 102384 */ // (intrinsic_void 16147:{ *:[iPTR] }, GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst) => (WRUSSD addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 36340 | /* 102384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRUSSD), |
| 36341 | /* 102387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36342 | /* 102391 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36343 | /* 102393 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36344 | /* 102397 */ GIR_RootConstrainSelectedInstOperands, |
| 36345 | /* 102398 */ // GIR_Coverage, 17084, |
| 36346 | /* 102398 */ GIR_EraseRootFromParent_Done, |
| 36347 | /* 102399 */ // Label 2217: @102399 |
| 36348 | /* 102399 */ GIM_Try, /*On fail goto*//*Label 2218*/ GIMT_Encode4(102445), // Rule ID 17085 // |
| 36349 | /* 102404 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoEGPR), |
| 36350 | /* 102407 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrussq), |
| 36351 | /* 102412 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36352 | /* 102415 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36353 | /* 102419 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36354 | /* 102423 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36355 | /* 102430 */ // (intrinsic_void 16148:{ *:[iPTR] }, GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst) => (WRUSSQ addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 36356 | /* 102430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRUSSQ), |
| 36357 | /* 102433 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36358 | /* 102437 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36359 | /* 102439 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36360 | /* 102443 */ GIR_RootConstrainSelectedInstOperands, |
| 36361 | /* 102444 */ // GIR_Coverage, 17085, |
| 36362 | /* 102444 */ GIR_EraseRootFromParent_Done, |
| 36363 | /* 102445 */ // Label 2218: @102445 |
| 36364 | /* 102445 */ GIM_Try, /*On fail goto*//*Label 2219*/ GIMT_Encode4(102491), // Rule ID 17086 // |
| 36365 | /* 102450 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_In64BitMode), |
| 36366 | /* 102453 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrssd), |
| 36367 | /* 102458 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36368 | /* 102461 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36369 | /* 102465 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36370 | /* 102469 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36371 | /* 102476 */ // (intrinsic_void 16145:{ *:[iPTR] }, GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst) => (WRSSD_EVEX addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 36372 | /* 102476 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRSSD_EVEX), |
| 36373 | /* 102479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36374 | /* 102483 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36375 | /* 102485 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36376 | /* 102489 */ GIR_RootConstrainSelectedInstOperands, |
| 36377 | /* 102490 */ // GIR_Coverage, 17086, |
| 36378 | /* 102490 */ GIR_EraseRootFromParent_Done, |
| 36379 | /* 102491 */ // Label 2219: @102491 |
| 36380 | /* 102491 */ GIM_Try, /*On fail goto*//*Label 2220*/ GIMT_Encode4(102537), // Rule ID 17087 // |
| 36381 | /* 102496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_In64BitMode), |
| 36382 | /* 102499 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrssq), |
| 36383 | /* 102504 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36384 | /* 102507 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36385 | /* 102511 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36386 | /* 102515 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36387 | /* 102522 */ // (intrinsic_void 16146:{ *:[iPTR] }, GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst) => (WRSSQ_EVEX addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 36388 | /* 102522 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRSSQ_EVEX), |
| 36389 | /* 102525 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36390 | /* 102529 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36391 | /* 102531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36392 | /* 102535 */ GIR_RootConstrainSelectedInstOperands, |
| 36393 | /* 102536 */ // GIR_Coverage, 17087, |
| 36394 | /* 102536 */ GIR_EraseRootFromParent_Done, |
| 36395 | /* 102537 */ // Label 2220: @102537 |
| 36396 | /* 102537 */ GIM_Try, /*On fail goto*//*Label 2221*/ GIMT_Encode4(102583), // Rule ID 17088 // |
| 36397 | /* 102542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_In64BitMode), |
| 36398 | /* 102545 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrussd), |
| 36399 | /* 102550 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36400 | /* 102553 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36401 | /* 102557 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36402 | /* 102561 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36403 | /* 102568 */ // (intrinsic_void 16147:{ *:[iPTR] }, GR32:{ *:[i32] }:$src, addr:{ *:[iPTR] }:$dst) => (WRUSSD_EVEX addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 36404 | /* 102568 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRUSSD_EVEX), |
| 36405 | /* 102571 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36406 | /* 102575 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36407 | /* 102577 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36408 | /* 102581 */ GIR_RootConstrainSelectedInstOperands, |
| 36409 | /* 102582 */ // GIR_Coverage, 17088, |
| 36410 | /* 102582 */ GIR_EraseRootFromParent_Done, |
| 36411 | /* 102583 */ // Label 2221: @102583 |
| 36412 | /* 102583 */ GIM_Try, /*On fail goto*//*Label 2222*/ GIMT_Encode4(102629), // Rule ID 17089 // |
| 36413 | /* 102588 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_In64BitMode), |
| 36414 | /* 102591 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_wrussq), |
| 36415 | /* 102596 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36416 | /* 102599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36417 | /* 102603 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36418 | /* 102607 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36419 | /* 102614 */ // (intrinsic_void 16148:{ *:[iPTR] }, GR64:{ *:[i64] }:$src, addr:{ *:[iPTR] }:$dst) => (WRUSSQ_EVEX addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 36420 | /* 102614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::WRUSSQ_EVEX), |
| 36421 | /* 102617 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36422 | /* 102621 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 36423 | /* 102623 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36424 | /* 102627 */ GIR_RootConstrainSelectedInstOperands, |
| 36425 | /* 102628 */ // GIR_Coverage, 17089, |
| 36426 | /* 102628 */ GIR_EraseRootFromParent_Done, |
| 36427 | /* 102629 */ // Label 2222: @102629 |
| 36428 | /* 102629 */ GIM_Try, /*On fail goto*//*Label 2223*/ GIMT_Encode4(102675), // Rule ID 17115 // |
| 36429 | /* 102634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasINVPCID_Not64BitMode), |
| 36430 | /* 102637 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_invpcid), |
| 36431 | /* 102642 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36432 | /* 102645 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36433 | /* 102649 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36434 | /* 102653 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36435 | /* 102660 */ // (intrinsic_void 15735:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) => (INVPCID32 GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36436 | /* 102660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INVPCID32), |
| 36437 | /* 102663 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 36438 | /* 102665 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36439 | /* 102669 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36440 | /* 102673 */ GIR_RootConstrainSelectedInstOperands, |
| 36441 | /* 102674 */ // GIR_Coverage, 17115, |
| 36442 | /* 102674 */ GIR_EraseRootFromParent_Done, |
| 36443 | /* 102675 */ // Label 2223: @102675 |
| 36444 | /* 102675 */ GIM_Try, /*On fail goto*//*Label 2224*/ GIMT_Encode4(102764), // Rule ID 22440 // |
| 36445 | /* 102680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasINVPCID_NoEGPR), |
| 36446 | /* 102683 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_invpcid), |
| 36447 | /* 102688 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36448 | /* 102691 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36449 | /* 102695 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36450 | /* 102699 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36451 | /* 102706 */ // (intrinsic_void 15735:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) => (INVPCID64 (SUBREG_TO_REG:{ *:[i64] } (MOV32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1), sub_32bit:{ *:[i32] }), addr:{ *:[iPTR] }:$src2) |
| 36452 | /* 102706 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 36453 | /* 102709 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(X86::MOV32rr), |
| 36454 | /* 102713 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 36455 | /* 102718 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 36456 | /* 102722 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 36457 | /* 102724 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 36458 | /* 102727 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 36459 | /* 102731 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 36460 | /* 102736 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 36461 | /* 102739 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/6, |
| 36462 | /* 102742 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 36463 | /* 102747 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 36464 | /* 102752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INVPCID64), |
| 36465 | /* 102755 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 36466 | /* 102758 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36467 | /* 102762 */ GIR_RootConstrainSelectedInstOperands, |
| 36468 | /* 102763 */ // GIR_Coverage, 22440, |
| 36469 | /* 102763 */ GIR_EraseRootFromParent_Done, |
| 36470 | /* 102764 */ // Label 2224: @102764 |
| 36471 | /* 102764 */ GIM_Try, /*On fail goto*//*Label 2225*/ GIMT_Encode4(102853), // Rule ID 22441 // |
| 36472 | /* 102769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasINVPCID), |
| 36473 | /* 102772 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_invpcid), |
| 36474 | /* 102777 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36475 | /* 102780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36476 | /* 102784 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36477 | /* 102788 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36478 | /* 102795 */ // (intrinsic_void 15735:{ *:[iPTR] }, GR32:{ *:[i32] }:$src1, addr:{ *:[iPTR] }:$src2) => (INVPCID64_EVEX (SUBREG_TO_REG:{ *:[i64] } (MOV32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1), sub_32bit:{ *:[i32] }), addr:{ *:[iPTR] }:$src2) |
| 36479 | /* 102795 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 36480 | /* 102798 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(X86::MOV32rr), |
| 36481 | /* 102802 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 36482 | /* 102807 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 36483 | /* 102811 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 36484 | /* 102813 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 36485 | /* 102816 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 36486 | /* 102820 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 36487 | /* 102825 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 36488 | /* 102828 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/6, |
| 36489 | /* 102831 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 36490 | /* 102836 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 36491 | /* 102841 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INVPCID64_EVEX), |
| 36492 | /* 102844 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 36493 | /* 102847 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36494 | /* 102851 */ GIR_RootConstrainSelectedInstOperands, |
| 36495 | /* 102852 */ // GIR_Coverage, 22441, |
| 36496 | /* 102852 */ GIR_EraseRootFromParent_Done, |
| 36497 | /* 102853 */ // Label 2225: @102853 |
| 36498 | /* 102853 */ GIM_Try, /*On fail goto*//*Label 2226*/ GIMT_Encode4(102899), // Rule ID 131 // |
| 36499 | /* 102858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVDIRI_NoEGPR), |
| 36500 | /* 102861 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_directstore32), |
| 36501 | /* 102866 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 36502 | /* 102869 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36503 | /* 102873 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36504 | /* 102877 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36505 | /* 102884 */ // (intrinsic_void 15714:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) => (MOVDIRI32 addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 36506 | /* 102884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIRI32), |
| 36507 | /* 102887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36508 | /* 102891 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 36509 | /* 102893 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36510 | /* 102897 */ GIR_RootConstrainSelectedInstOperands, |
| 36511 | /* 102898 */ // GIR_Coverage, 131, |
| 36512 | /* 102898 */ GIR_EraseRootFromParent_Done, |
| 36513 | /* 102899 */ // Label 2226: @102899 |
| 36514 | /* 102899 */ GIM_Try, /*On fail goto*//*Label 2227*/ GIMT_Encode4(102945), // Rule ID 132 // |
| 36515 | /* 102904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVDIRI_In64BitMode_NoEGPR), |
| 36516 | /* 102907 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_directstore64), |
| 36517 | /* 102912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 36518 | /* 102915 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36519 | /* 102919 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36520 | /* 102923 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36521 | /* 102930 */ // (intrinsic_void 15715:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) => (MOVDIRI64 addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 36522 | /* 102930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIRI64), |
| 36523 | /* 102933 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36524 | /* 102937 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 36525 | /* 102939 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36526 | /* 102943 */ GIR_RootConstrainSelectedInstOperands, |
| 36527 | /* 102944 */ // GIR_Coverage, 132, |
| 36528 | /* 102944 */ GIR_EraseRootFromParent_Done, |
| 36529 | /* 102945 */ // Label 2227: @102945 |
| 36530 | /* 102945 */ GIM_Try, /*On fail goto*//*Label 2228*/ GIMT_Encode4(102991), // Rule ID 133 // |
| 36531 | /* 102950 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVDIRI_In64BitMode), |
| 36532 | /* 102953 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_directstore32), |
| 36533 | /* 102958 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 36534 | /* 102961 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36535 | /* 102965 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36536 | /* 102969 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36537 | /* 102976 */ // (intrinsic_void 15714:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) => (MOVDIRI32_EVEX addr:{ *:[iPTR] }:$dst, GR32:{ *:[i32] }:$src) |
| 36538 | /* 102976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIRI32_EVEX), |
| 36539 | /* 102979 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36540 | /* 102983 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 36541 | /* 102985 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36542 | /* 102989 */ GIR_RootConstrainSelectedInstOperands, |
| 36543 | /* 102990 */ // GIR_Coverage, 133, |
| 36544 | /* 102990 */ GIR_EraseRootFromParent_Done, |
| 36545 | /* 102991 */ // Label 2228: @102991 |
| 36546 | /* 102991 */ GIM_Try, /*On fail goto*//*Label 2229*/ GIMT_Encode4(103037), // Rule ID 134 // |
| 36547 | /* 102996 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVDIRI_In64BitMode), |
| 36548 | /* 102999 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_directstore64), |
| 36549 | /* 103004 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 36550 | /* 103007 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36551 | /* 103011 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36552 | /* 103015 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36553 | /* 103022 */ // (intrinsic_void 15715:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) => (MOVDIRI64_EVEX addr:{ *:[iPTR] }:$dst, GR64:{ *:[i64] }:$src) |
| 36554 | /* 103022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIRI64_EVEX), |
| 36555 | /* 103025 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36556 | /* 103029 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 36557 | /* 103031 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36558 | /* 103035 */ GIR_RootConstrainSelectedInstOperands, |
| 36559 | /* 103036 */ // GIR_Coverage, 134, |
| 36560 | /* 103036 */ GIR_EraseRootFromParent_Done, |
| 36561 | /* 103037 */ // Label 2229: @103037 |
| 36562 | /* 103037 */ GIM_Try, /*On fail goto*//*Label 2230*/ GIMT_Encode4(103084), // Rule ID 135 // |
| 36563 | /* 103042 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVDIR64B_NoEGPR), |
| 36564 | /* 103045 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_movdir64b), |
| 36565 | /* 103050 */ // MIs[0] dst |
| 36566 | /* 103050 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 36567 | /* 103054 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36568 | /* 103058 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36569 | /* 103062 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36570 | /* 103069 */ // (intrinsic_void 15815:{ *:[iPTR] }, GR32:{ *:[i32] }:$dst, addr:{ *:[iPTR] }:$src) => (MOVDIR64B32 GR32:{ *:[i32] }:$dst, addr:{ *:[iPTR] }:$src) |
| 36571 | /* 103069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIR64B32), |
| 36572 | /* 103072 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 36573 | /* 103074 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36574 | /* 103078 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36575 | /* 103082 */ GIR_RootConstrainSelectedInstOperands, |
| 36576 | /* 103083 */ // GIR_Coverage, 135, |
| 36577 | /* 103083 */ GIR_EraseRootFromParent_Done, |
| 36578 | /* 103084 */ // Label 2230: @103084 |
| 36579 | /* 103084 */ GIM_Try, /*On fail goto*//*Label 2231*/ GIMT_Encode4(103131), // Rule ID 136 // |
| 36580 | /* 103089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVDIR64B_In64BitMode_NoEGPR), |
| 36581 | /* 103092 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_movdir64b), |
| 36582 | /* 103097 */ // MIs[0] dst |
| 36583 | /* 103097 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 36584 | /* 103101 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36585 | /* 103105 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36586 | /* 103109 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36587 | /* 103116 */ // (intrinsic_void 15815:{ *:[iPTR] }, GR64:{ *:[i64] }:$dst, addr:{ *:[iPTR] }:$src) => (MOVDIR64B64 GR64:{ *:[i64] }:$dst, addr:{ *:[iPTR] }:$src) |
| 36588 | /* 103116 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIR64B64), |
| 36589 | /* 103119 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 36590 | /* 103121 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36591 | /* 103125 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36592 | /* 103129 */ GIR_RootConstrainSelectedInstOperands, |
| 36593 | /* 103130 */ // GIR_Coverage, 136, |
| 36594 | /* 103130 */ GIR_EraseRootFromParent_Done, |
| 36595 | /* 103131 */ // Label 2231: @103131 |
| 36596 | /* 103131 */ GIM_Try, /*On fail goto*//*Label 2232*/ GIMT_Encode4(103178), // Rule ID 137 // |
| 36597 | /* 103136 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVDIR64B_In64BitMode), |
| 36598 | /* 103139 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_movdir64b), |
| 36599 | /* 103144 */ // MIs[0] dst |
| 36600 | /* 103144 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 36601 | /* 103148 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36602 | /* 103152 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36603 | /* 103156 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36604 | /* 103163 */ // (intrinsic_void 15815:{ *:[iPTR] }, GR32:{ *:[i32] }:$dst, addr:{ *:[iPTR] }:$src) => (MOVDIR64B32_EVEX GR32:{ *:[i32] }:$dst, addr:{ *:[iPTR] }:$src) |
| 36605 | /* 103163 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIR64B32_EVEX), |
| 36606 | /* 103166 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 36607 | /* 103168 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36608 | /* 103172 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36609 | /* 103176 */ GIR_RootConstrainSelectedInstOperands, |
| 36610 | /* 103177 */ // GIR_Coverage, 137, |
| 36611 | /* 103177 */ GIR_EraseRootFromParent_Done, |
| 36612 | /* 103178 */ // Label 2232: @103178 |
| 36613 | /* 103178 */ GIM_Try, /*On fail goto*//*Label 2233*/ GIMT_Encode4(103225), // Rule ID 138 // |
| 36614 | /* 103183 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVDIR64B_In64BitMode), |
| 36615 | /* 103186 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_movdir64b), |
| 36616 | /* 103191 */ // MIs[0] dst |
| 36617 | /* 103191 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 36618 | /* 103195 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36619 | /* 103199 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36620 | /* 103203 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36621 | /* 103210 */ // (intrinsic_void 15815:{ *:[iPTR] }, GR64:{ *:[i64] }:$dst, addr:{ *:[iPTR] }:$src) => (MOVDIR64B64_EVEX GR64:{ *:[i64] }:$dst, addr:{ *:[iPTR] }:$src) |
| 36622 | /* 103210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVDIR64B64_EVEX), |
| 36623 | /* 103213 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 36624 | /* 103215 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 36625 | /* 103219 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36626 | /* 103223 */ GIR_RootConstrainSelectedInstOperands, |
| 36627 | /* 103224 */ // GIR_Coverage, 138, |
| 36628 | /* 103224 */ GIR_EraseRootFromParent_Done, |
| 36629 | /* 103225 */ // Label 2233: @103225 |
| 36630 | /* 103225 */ GIM_Try, /*On fail goto*//*Label 2234*/ GIMT_Encode4(103268), // Rule ID 17140 // |
| 36631 | /* 103230 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::asan_check_memaccess), |
| 36632 | /* 103235 */ // MIs[0] addr |
| 36633 | /* 103235 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/64, |
| 36634 | /* 103239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64PLTSafeRegClassID), |
| 36635 | /* 103243 */ // MIs[0] accessinfo |
| 36636 | /* 103243 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 36637 | /* 103246 */ // (intrinsic_void 14:{ *:[iPTR] }, GR64PLTSafe:{ *:[i64] }:$addr, (timm:{ *:[i32] }):$accessinfo) => (ASAN_CHECK_MEMACCESS:{ *:[i64] } GR64PLTSafe:{ *:[i64] }:$addr, (timm:{ *:[i32] }):$accessinfo) |
| 36638 | /* 103246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ASAN_CHECK_MEMACCESS), |
| 36639 | /* 103249 */ GIR_RootToRootCopy, /*OpIdx*/1, // addr |
| 36640 | /* 103251 */ GIR_RootToRootCopy, /*OpIdx*/2, // accessinfo |
| 36641 | /* 103253 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::R10*/0, |
| 36642 | /* 103256 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::R11*/1, |
| 36643 | /* 103259 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/2, |
| 36644 | /* 103262 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36645 | /* 103266 */ GIR_RootConstrainSelectedInstOperands, |
| 36646 | /* 103267 */ // GIR_Coverage, 17140, |
| 36647 | /* 103267 */ GIR_EraseRootFromParent_Done, |
| 36648 | /* 103268 */ // Label 2234: @103268 |
| 36649 | /* 103268 */ GIM_Try, /*On fail goto*//*Label 2235*/ GIMT_Encode4(103308), // Rule ID 17066 // |
| 36650 | /* 103273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUSERMSR_NoEGPR), |
| 36651 | /* 103276 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_urdmsr), |
| 36652 | /* 103281 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36653 | /* 103284 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 36654 | /* 103287 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36655 | /* 103291 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36656 | /* 103295 */ // (intrinsic_w_chain:{ *:[i64] } 16099:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (URDMSRrr:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 36657 | /* 103295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::URDMSRrr), |
| 36658 | /* 103298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36659 | /* 103300 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 36660 | /* 103302 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36661 | /* 103306 */ GIR_RootConstrainSelectedInstOperands, |
| 36662 | /* 103307 */ // GIR_Coverage, 17066, |
| 36663 | /* 103307 */ GIR_EraseRootFromParent_Done, |
| 36664 | /* 103308 */ // Label 2235: @103308 |
| 36665 | /* 103308 */ GIM_Try, /*On fail goto*//*Label 2236*/ GIMT_Encode4(103348), // Rule ID 17070 // |
| 36666 | /* 103313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasUSERMSR_In64BitMode), |
| 36667 | /* 103316 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_urdmsr), |
| 36668 | /* 103321 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36669 | /* 103324 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 36670 | /* 103327 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36671 | /* 103331 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36672 | /* 103335 */ // (intrinsic_w_chain:{ *:[i64] } 16099:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (URDMSRrr_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 36673 | /* 103335 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::URDMSRrr_EVEX), |
| 36674 | /* 103338 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36675 | /* 103340 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 36676 | /* 103342 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36677 | /* 103346 */ GIR_RootConstrainSelectedInstOperands, |
| 36678 | /* 103347 */ // GIR_Coverage, 17070, |
| 36679 | /* 103347 */ GIR_EraseRootFromParent_Done, |
| 36680 | /* 103348 */ // Label 2236: @103348 |
| 36681 | /* 103348 */ GIM_Try, /*On fail goto*//*Label 2237*/ GIMT_Encode4(103385), // Rule ID 17078 // |
| 36682 | /* 103353 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdsspd), |
| 36683 | /* 103358 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 36684 | /* 103361 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 36685 | /* 103364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36686 | /* 103368 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36687 | /* 103372 */ // (intrinsic_w_chain:{ *:[i32] } 15841:{ *:[iPTR] }, GR32:{ *:[i32] }:$src) => (RDSSPD:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 36688 | /* 103372 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDSSPD), |
| 36689 | /* 103375 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36690 | /* 103377 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 36691 | /* 103379 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36692 | /* 103383 */ GIR_RootConstrainSelectedInstOperands, |
| 36693 | /* 103384 */ // GIR_Coverage, 17078, |
| 36694 | /* 103384 */ GIR_EraseRootFromParent_Done, |
| 36695 | /* 103385 */ // Label 2237: @103385 |
| 36696 | /* 103385 */ GIM_Try, /*On fail goto*//*Label 2238*/ GIMT_Encode4(103422), // Rule ID 17079 // |
| 36697 | /* 103390 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_rdsspq), |
| 36698 | /* 103395 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 36699 | /* 103398 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 36700 | /* 103401 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36701 | /* 103405 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36702 | /* 103409 */ // (intrinsic_w_chain:{ *:[i64] } 15842:{ *:[iPTR] }, GR64:{ *:[i64] }:$src) => (RDSSPQ:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 36703 | /* 103409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RDSSPQ), |
| 36704 | /* 103412 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36705 | /* 103414 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 36706 | /* 103416 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36707 | /* 103420 */ GIR_RootConstrainSelectedInstOperands, |
| 36708 | /* 103421 */ // GIR_Coverage, 17079, |
| 36709 | /* 103421 */ GIR_EraseRootFromParent_Done, |
| 36710 | /* 103422 */ // Label 2238: @103422 |
| 36711 | /* 103422 */ GIM_Try, /*On fail goto*//*Label 2239*/ GIMT_Encode4(103486), // Rule ID 3086 // |
| 36712 | /* 103427 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 36713 | /* 103430 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse3_mwait), |
| 36714 | /* 103435 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36715 | /* 103438 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 36716 | /* 103441 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32_ArgRef_and_GR32_CBRegClassID), |
| 36717 | /* 103445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 36718 | /* 103449 */ // (intrinsic_void 15966:{ *:[iPTR] }, ECX:{ *:[i32] }, EAX:{ *:[i32] }) => (MWAITrr) |
| 36719 | /* 103449 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 36720 | /* 103453 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 36721 | /* 103459 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // EAX |
| 36722 | /* 103463 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 36723 | /* 103467 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::ECX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 36724 | /* 103473 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // ECX |
| 36725 | /* 103477 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MWAITrr), |
| 36726 | /* 103480 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36727 | /* 103484 */ GIR_RootConstrainSelectedInstOperands, |
| 36728 | /* 103485 */ // GIR_Coverage, 3086, |
| 36729 | /* 103485 */ GIR_EraseRootFromParent_Done, |
| 36730 | /* 103486 */ // Label 2239: @103486 |
| 36731 | /* 103486 */ GIM_Try, /*On fail goto*//*Label 2240*/ GIMT_Encode4(103526), // Rule ID 17068 // |
| 36732 | /* 103491 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasUSERMSR_NoEGPR), |
| 36733 | /* 103494 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_uwrmsr), |
| 36734 | /* 103499 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36735 | /* 103502 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 36736 | /* 103505 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36737 | /* 103509 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36738 | /* 103513 */ // (intrinsic_void 16100:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (UWRMSRrr GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 36739 | /* 103513 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UWRMSRrr), |
| 36740 | /* 103516 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 36741 | /* 103518 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 36742 | /* 103520 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36743 | /* 103524 */ GIR_RootConstrainSelectedInstOperands, |
| 36744 | /* 103525 */ // GIR_Coverage, 17068, |
| 36745 | /* 103525 */ GIR_EraseRootFromParent_Done, |
| 36746 | /* 103526 */ // Label 2240: @103526 |
| 36747 | /* 103526 */ GIM_Try, /*On fail goto*//*Label 2241*/ GIMT_Encode4(103566), // Rule ID 17072 // |
| 36748 | /* 103531 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasUSERMSR_In64BitMode), |
| 36749 | /* 103534 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_uwrmsr), |
| 36750 | /* 103539 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36751 | /* 103542 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 36752 | /* 103545 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36753 | /* 103549 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36754 | /* 103553 */ // (intrinsic_void 16100:{ *:[iPTR] }, GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) => (UWRMSRrr_EVEX GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 36755 | /* 103553 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::UWRMSRrr_EVEX), |
| 36756 | /* 103556 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 36757 | /* 103558 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 36758 | /* 103560 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36759 | /* 103564 */ GIR_RootConstrainSelectedInstOperands, |
| 36760 | /* 103565 */ // GIR_Coverage, 17072, |
| 36761 | /* 103565 */ GIR_EraseRootFromParent_Done, |
| 36762 | /* 103566 */ // Label 2241: @103566 |
| 36763 | /* 103566 */ GIM_Reject, |
| 36764 | /* 103567 */ // Label 2179: @103567 |
| 36765 | /* 103567 */ GIM_Try, /*On fail goto*//*Label 2242*/ GIMT_Encode4(106842), |
| 36766 | /* 103572 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/4, |
| 36767 | /* 103575 */ GIM_Try, /*On fail goto*//*Label 2243*/ GIMT_Encode4(103647), // Rule ID 123 // |
| 36768 | /* 103580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 36769 | /* 103583 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_lwpval32), |
| 36770 | /* 103588 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 36771 | /* 103591 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 36772 | /* 103594 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 36773 | /* 103598 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 36774 | /* 103602 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 36775 | /* 103606 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 36776 | /* 103609 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 36777 | /* 103613 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 36778 | /* 103617 */ // MIs[0] cntl |
| 36779 | /* 103617 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 36780 | /* 103620 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 36781 | /* 103622 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36782 | /* 103629 */ // (intrinsic_void 15742:{ *:[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) |
| 36783 | /* 103629 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LWPVAL32rmi), |
| 36784 | /* 103632 */ GIR_RootToRootCopy, /*OpIdx*/1, // src0 |
| 36785 | /* 103634 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 36786 | /* 103638 */ GIR_RootToRootCopy, /*OpIdx*/3, // cntl |
| 36787 | /* 103640 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 36788 | /* 103645 */ GIR_RootConstrainSelectedInstOperands, |
| 36789 | /* 103646 */ // GIR_Coverage, 123, |
| 36790 | /* 103646 */ GIR_EraseRootFromParent_Done, |
| 36791 | /* 103647 */ // Label 2243: @103647 |
| 36792 | /* 103647 */ GIM_Try, /*On fail goto*//*Label 2244*/ GIMT_Encode4(103719), // Rule ID 125 // |
| 36793 | /* 103652 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 36794 | /* 103655 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_lwpval64), |
| 36795 | /* 103660 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 36796 | /* 103663 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 36797 | /* 103666 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 36798 | /* 103670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 36799 | /* 103674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 36800 | /* 103678 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 36801 | /* 103681 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 36802 | /* 103685 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 36803 | /* 103689 */ // MIs[0] cntl |
| 36804 | /* 103689 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 36805 | /* 103692 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 36806 | /* 103694 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36807 | /* 103701 */ // (intrinsic_void 15743:{ *:[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) |
| 36808 | /* 103701 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LWPVAL64rmi), |
| 36809 | /* 103704 */ GIR_RootToRootCopy, /*OpIdx*/1, // src0 |
| 36810 | /* 103706 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 36811 | /* 103710 */ GIR_RootToRootCopy, /*OpIdx*/3, // cntl |
| 36812 | /* 103712 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 36813 | /* 103717 */ GIR_RootConstrainSelectedInstOperands, |
| 36814 | /* 103718 */ // GIR_Coverage, 125, |
| 36815 | /* 103718 */ GIR_EraseRootFromParent_Done, |
| 36816 | /* 103719 */ // Label 2244: @103719 |
| 36817 | /* 103719 */ GIM_Try, /*On fail goto*//*Label 2245*/ GIMT_Encode4(103774), // Rule ID 3387 // |
| 36818 | /* 103724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 36819 | /* 103727 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_maskload_ps), |
| 36820 | /* 103732 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36821 | /* 103735 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 36822 | /* 103738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36823 | /* 103742 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36824 | /* 103746 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36825 | /* 103750 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36826 | /* 103757 */ // (intrinsic_w_chain:{ *:[v4f32] } 14588:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src1) => (VMASKMOVPSrm:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36827 | /* 103757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPSrm), |
| 36828 | /* 103760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36829 | /* 103762 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 36830 | /* 103764 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36831 | /* 103768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36832 | /* 103772 */ GIR_RootConstrainSelectedInstOperands, |
| 36833 | /* 103773 */ // GIR_Coverage, 3387, |
| 36834 | /* 103773 */ GIR_EraseRootFromParent_Done, |
| 36835 | /* 103774 */ // Label 2245: @103774 |
| 36836 | /* 103774 */ GIM_Try, /*On fail goto*//*Label 2246*/ GIMT_Encode4(103829), // Rule ID 3388 // |
| 36837 | /* 103779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 36838 | /* 103782 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_maskload_ps_256), |
| 36839 | /* 103787 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36840 | /* 103790 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 36841 | /* 103793 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36842 | /* 103797 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36843 | /* 103801 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36844 | /* 103805 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36845 | /* 103812 */ // (intrinsic_w_chain:{ *:[v8f32] } 14589:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v8i32] }:$src1) => (VMASKMOVPSYrm:{ *:[v8f32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36846 | /* 103812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPSYrm), |
| 36847 | /* 103815 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36848 | /* 103817 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 36849 | /* 103819 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36850 | /* 103823 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36851 | /* 103827 */ GIR_RootConstrainSelectedInstOperands, |
| 36852 | /* 103828 */ // GIR_Coverage, 3388, |
| 36853 | /* 103828 */ GIR_EraseRootFromParent_Done, |
| 36854 | /* 103829 */ // Label 2246: @103829 |
| 36855 | /* 103829 */ GIM_Try, /*On fail goto*//*Label 2247*/ GIMT_Encode4(103884), // Rule ID 3391 // |
| 36856 | /* 103834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 36857 | /* 103837 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_maskload_pd), |
| 36858 | /* 103842 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 36859 | /* 103845 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 36860 | /* 103848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36861 | /* 103852 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36862 | /* 103856 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36863 | /* 103860 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36864 | /* 103867 */ // (intrinsic_w_chain:{ *:[v2f64] } 14586:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src1) => (VMASKMOVPDrm:{ *:[v2f64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36865 | /* 103867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPDrm), |
| 36866 | /* 103870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36867 | /* 103872 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 36868 | /* 103874 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36869 | /* 103878 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36870 | /* 103882 */ GIR_RootConstrainSelectedInstOperands, |
| 36871 | /* 103883 */ // GIR_Coverage, 3391, |
| 36872 | /* 103883 */ GIR_EraseRootFromParent_Done, |
| 36873 | /* 103884 */ // Label 2247: @103884 |
| 36874 | /* 103884 */ GIM_Try, /*On fail goto*//*Label 2248*/ GIMT_Encode4(103939), // Rule ID 3392 // |
| 36875 | /* 103889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 36876 | /* 103892 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx_maskload_pd_256), |
| 36877 | /* 103897 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 36878 | /* 103900 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 36879 | /* 103903 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36880 | /* 103907 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36881 | /* 103911 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36882 | /* 103915 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36883 | /* 103922 */ // (intrinsic_w_chain:{ *:[v4f64] } 14587:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v4i64] }:$src1) => (VMASKMOVPDYrm:{ *:[v4f64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36884 | /* 103922 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPDYrm), |
| 36885 | /* 103925 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36886 | /* 103927 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 36887 | /* 103929 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36888 | /* 103933 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36889 | /* 103937 */ GIR_RootConstrainSelectedInstOperands, |
| 36890 | /* 103938 */ // GIR_Coverage, 3392, |
| 36891 | /* 103938 */ GIR_EraseRootFromParent_Done, |
| 36892 | /* 103939 */ // Label 2248: @103939 |
| 36893 | /* 103939 */ GIM_Try, /*On fail goto*//*Label 2249*/ GIMT_Encode4(103994), // Rule ID 3465 // |
| 36894 | /* 103944 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 36895 | /* 103947 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_maskload_d), |
| 36896 | /* 103952 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 36897 | /* 103955 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 36898 | /* 103958 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36899 | /* 103962 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36900 | /* 103966 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36901 | /* 103970 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36902 | /* 103977 */ // (intrinsic_w_chain:{ *:[v4i32] } 14886:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v4i32] }:$src1) => (VPMASKMOVDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36903 | /* 103977 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVDrm), |
| 36904 | /* 103980 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36905 | /* 103982 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 36906 | /* 103984 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36907 | /* 103988 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36908 | /* 103992 */ GIR_RootConstrainSelectedInstOperands, |
| 36909 | /* 103993 */ // GIR_Coverage, 3465, |
| 36910 | /* 103993 */ GIR_EraseRootFromParent_Done, |
| 36911 | /* 103994 */ // Label 2249: @103994 |
| 36912 | /* 103994 */ GIM_Try, /*On fail goto*//*Label 2250*/ GIMT_Encode4(104049), // Rule ID 3466 // |
| 36913 | /* 103999 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 36914 | /* 104002 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_maskload_d_256), |
| 36915 | /* 104007 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s32, |
| 36916 | /* 104010 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 36917 | /* 104013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36918 | /* 104017 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36919 | /* 104021 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36920 | /* 104025 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36921 | /* 104032 */ // (intrinsic_w_chain:{ *:[v8i32] } 14887:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v8i32] }:$src1) => (VPMASKMOVDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36922 | /* 104032 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVDYrm), |
| 36923 | /* 104035 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36924 | /* 104037 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 36925 | /* 104039 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36926 | /* 104043 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36927 | /* 104047 */ GIR_RootConstrainSelectedInstOperands, |
| 36928 | /* 104048 */ // GIR_Coverage, 3466, |
| 36929 | /* 104048 */ GIR_EraseRootFromParent_Done, |
| 36930 | /* 104049 */ // Label 2250: @104049 |
| 36931 | /* 104049 */ GIM_Try, /*On fail goto*//*Label 2251*/ GIMT_Encode4(104104), // Rule ID 3469 // |
| 36932 | /* 104054 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 36933 | /* 104057 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_maskload_q), |
| 36934 | /* 104062 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 36935 | /* 104065 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 36936 | /* 104068 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36937 | /* 104072 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36938 | /* 104076 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36939 | /* 104080 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36940 | /* 104087 */ // (intrinsic_w_chain:{ *:[v2i64] } 14888:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR128:{ *:[v2i64] }:$src1) => (VPMASKMOVQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36941 | /* 104087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVQrm), |
| 36942 | /* 104090 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36943 | /* 104092 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 36944 | /* 104094 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36945 | /* 104098 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36946 | /* 104102 */ GIR_RootConstrainSelectedInstOperands, |
| 36947 | /* 104103 */ // GIR_Coverage, 3469, |
| 36948 | /* 104103 */ GIR_EraseRootFromParent_Done, |
| 36949 | /* 104104 */ // Label 2251: @104104 |
| 36950 | /* 104104 */ GIM_Try, /*On fail goto*//*Label 2252*/ GIMT_Encode4(104159), // Rule ID 3470 // |
| 36951 | /* 104109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 36952 | /* 104112 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_avx2_maskload_q_256), |
| 36953 | /* 104117 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s64, |
| 36954 | /* 104120 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 36955 | /* 104123 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36956 | /* 104127 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 36957 | /* 104131 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36958 | /* 104135 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/2, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36959 | /* 104142 */ // (intrinsic_w_chain:{ *:[v4i64] } 14889:{ *:[iPTR] }, addr:{ *:[iPTR] }:$src2, VR256:{ *:[v4i64] }:$src1) => (VPMASKMOVQYrm:{ *:[v4i64] } VR256:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 36960 | /* 104142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVQYrm), |
| 36961 | /* 104145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 36962 | /* 104147 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 36963 | /* 104149 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 36964 | /* 104153 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36965 | /* 104157 */ GIR_RootConstrainSelectedInstOperands, |
| 36966 | /* 104158 */ // GIR_Coverage, 3470, |
| 36967 | /* 104158 */ GIR_EraseRootFromParent_Done, |
| 36968 | /* 104159 */ // Label 2252: @104159 |
| 36969 | /* 104159 */ GIM_Try, /*On fail goto*//*Label 2253*/ GIMT_Encode4(104214), // Rule ID 3389 // |
| 36970 | /* 104164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 36971 | /* 104167 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_maskstore_ps), |
| 36972 | /* 104172 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 36973 | /* 104175 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 36974 | /* 104178 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36975 | /* 104182 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36976 | /* 104186 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 36977 | /* 104190 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36978 | /* 104197 */ // (intrinsic_void 14592:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VMASKMOVPSmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 36979 | /* 104197 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPSmr), |
| 36980 | /* 104200 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 36981 | /* 104204 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 36982 | /* 104206 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 36983 | /* 104208 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 36984 | /* 104212 */ GIR_RootConstrainSelectedInstOperands, |
| 36985 | /* 104213 */ // GIR_Coverage, 3389, |
| 36986 | /* 104213 */ GIR_EraseRootFromParent_Done, |
| 36987 | /* 104214 */ // Label 2253: @104214 |
| 36988 | /* 104214 */ GIM_Try, /*On fail goto*//*Label 2254*/ GIMT_Encode4(104269), // Rule ID 3390 // |
| 36989 | /* 104219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 36990 | /* 104222 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_maskstore_ps_256), |
| 36991 | /* 104227 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 36992 | /* 104230 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 36993 | /* 104233 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 36994 | /* 104237 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36995 | /* 104241 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 36996 | /* 104245 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 36997 | /* 104252 */ // (intrinsic_void 14593:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VMASKMOVPSYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 36998 | /* 104252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPSYmr), |
| 36999 | /* 104255 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37000 | /* 104259 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37001 | /* 104261 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37002 | /* 104263 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37003 | /* 104267 */ GIR_RootConstrainSelectedInstOperands, |
| 37004 | /* 104268 */ // GIR_Coverage, 3390, |
| 37005 | /* 104268 */ GIR_EraseRootFromParent_Done, |
| 37006 | /* 104269 */ // Label 2254: @104269 |
| 37007 | /* 104269 */ GIM_Try, /*On fail goto*//*Label 2255*/ GIMT_Encode4(104324), // Rule ID 3393 // |
| 37008 | /* 104274 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37009 | /* 104277 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_maskstore_pd), |
| 37010 | /* 104282 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 37011 | /* 104285 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 37012 | /* 104288 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37013 | /* 104292 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37014 | /* 104296 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37015 | /* 104300 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37016 | /* 104307 */ // (intrinsic_void 14590:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VMASKMOVPDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 37017 | /* 104307 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPDmr), |
| 37018 | /* 104310 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37019 | /* 104314 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37020 | /* 104316 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37021 | /* 104318 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37022 | /* 104322 */ GIR_RootConstrainSelectedInstOperands, |
| 37023 | /* 104323 */ // GIR_Coverage, 3393, |
| 37024 | /* 104323 */ GIR_EraseRootFromParent_Done, |
| 37025 | /* 104324 */ // Label 2255: @104324 |
| 37026 | /* 104324 */ GIM_Try, /*On fail goto*//*Label 2256*/ GIMT_Encode4(104379), // Rule ID 3394 // |
| 37027 | /* 104329 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37028 | /* 104332 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx_maskstore_pd_256), |
| 37029 | /* 104337 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 37030 | /* 104340 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 37031 | /* 104343 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37032 | /* 104347 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37033 | /* 104351 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37034 | /* 104355 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37035 | /* 104362 */ // (intrinsic_void 14591:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VMASKMOVPDYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 37036 | /* 104362 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVPDYmr), |
| 37037 | /* 104365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37038 | /* 104369 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37039 | /* 104371 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37040 | /* 104373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37041 | /* 104377 */ GIR_RootConstrainSelectedInstOperands, |
| 37042 | /* 104378 */ // GIR_Coverage, 3394, |
| 37043 | /* 104378 */ GIR_EraseRootFromParent_Done, |
| 37044 | /* 104379 */ // Label 2256: @104379 |
| 37045 | /* 104379 */ GIM_Try, /*On fail goto*//*Label 2257*/ GIMT_Encode4(104434), // Rule ID 3467 // |
| 37046 | /* 104384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37047 | /* 104387 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx2_maskstore_d), |
| 37048 | /* 104392 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 37049 | /* 104395 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 37050 | /* 104398 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37051 | /* 104402 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37052 | /* 104406 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37053 | /* 104410 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37054 | /* 104417 */ // (intrinsic_void 14890:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMASKMOVDmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 37055 | /* 104417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVDmr), |
| 37056 | /* 104420 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37057 | /* 104424 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37058 | /* 104426 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37059 | /* 104428 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37060 | /* 104432 */ GIR_RootConstrainSelectedInstOperands, |
| 37061 | /* 104433 */ // GIR_Coverage, 3467, |
| 37062 | /* 104433 */ GIR_EraseRootFromParent_Done, |
| 37063 | /* 104434 */ // Label 2257: @104434 |
| 37064 | /* 104434 */ GIM_Try, /*On fail goto*//*Label 2258*/ GIMT_Encode4(104489), // Rule ID 3468 // |
| 37065 | /* 104439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37066 | /* 104442 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx2_maskstore_d_256), |
| 37067 | /* 104447 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 37068 | /* 104450 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 37069 | /* 104453 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37070 | /* 104457 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37071 | /* 104461 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37072 | /* 104465 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37073 | /* 104472 */ // (intrinsic_void 14891:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMASKMOVDYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 37074 | /* 104472 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVDYmr), |
| 37075 | /* 104475 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37076 | /* 104479 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37077 | /* 104481 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37078 | /* 104483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37079 | /* 104487 */ GIR_RootConstrainSelectedInstOperands, |
| 37080 | /* 104488 */ // GIR_Coverage, 3468, |
| 37081 | /* 104488 */ GIR_EraseRootFromParent_Done, |
| 37082 | /* 104489 */ // Label 2258: @104489 |
| 37083 | /* 104489 */ GIM_Try, /*On fail goto*//*Label 2259*/ GIMT_Encode4(104544), // Rule ID 3471 // |
| 37084 | /* 104494 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37085 | /* 104497 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx2_maskstore_q), |
| 37086 | /* 104502 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 37087 | /* 104505 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 37088 | /* 104508 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37089 | /* 104512 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37090 | /* 104516 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37091 | /* 104520 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37092 | /* 104527 */ // (intrinsic_void 14892:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPMASKMOVQmr addr:{ *:[iPTR] }:$dst, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 37093 | /* 104527 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVQmr), |
| 37094 | /* 104530 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37095 | /* 104534 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37096 | /* 104536 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37097 | /* 104538 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37098 | /* 104542 */ GIR_RootConstrainSelectedInstOperands, |
| 37099 | /* 104543 */ // GIR_Coverage, 3471, |
| 37100 | /* 104543 */ GIR_EraseRootFromParent_Done, |
| 37101 | /* 104544 */ // Label 2259: @104544 |
| 37102 | /* 104544 */ GIM_Try, /*On fail goto*//*Label 2260*/ GIMT_Encode4(104599), // Rule ID 3472 // |
| 37103 | /* 104549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2), |
| 37104 | /* 104552 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_avx2_maskstore_q_256), |
| 37105 | /* 104557 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 37106 | /* 104560 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 37107 | /* 104563 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37108 | /* 104567 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37109 | /* 104571 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 37110 | /* 104575 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37111 | /* 104582 */ // (intrinsic_void 14893:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) => (VPMASKMOVQYmr addr:{ *:[iPTR] }:$dst, VR256:{ *:[v4i64] }:$src1, VR256:{ *:[v4i64] }:$src2) |
| 37112 | /* 104582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMASKMOVQYmr), |
| 37113 | /* 104585 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37114 | /* 104589 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37115 | /* 104591 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37116 | /* 104593 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37117 | /* 104597 */ GIR_RootConstrainSelectedInstOperands, |
| 37118 | /* 104598 */ // GIR_Coverage, 3472, |
| 37119 | /* 104598 */ GIR_EraseRootFromParent_Done, |
| 37120 | /* 104599 */ // Label 2260: @104599 |
| 37121 | /* 104599 */ GIM_Try, /*On fail goto*//*Label 2261*/ GIMT_Encode4(104678), // Rule ID 17093 // |
| 37122 | /* 104604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE), |
| 37123 | /* 104607 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsave), |
| 37124 | /* 104612 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37125 | /* 104615 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37126 | /* 104618 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37127 | /* 104622 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37128 | /* 104626 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37129 | /* 104630 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37130 | /* 104637 */ // (intrinsic_void 16204:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVE addr:{ *:[iPTR] }:$dst) |
| 37131 | /* 104637 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37132 | /* 104641 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37133 | /* 104647 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37134 | /* 104651 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37135 | /* 104655 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37136 | /* 104661 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37137 | /* 104665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVE), |
| 37138 | /* 104668 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37139 | /* 104672 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37140 | /* 104676 */ GIR_RootConstrainSelectedInstOperands, |
| 37141 | /* 104677 */ // GIR_Coverage, 17093, |
| 37142 | /* 104677 */ GIR_EraseRootFromParent_Done, |
| 37143 | /* 104678 */ // Label 2261: @104678 |
| 37144 | /* 104678 */ GIM_Try, /*On fail goto*//*Label 2262*/ GIMT_Encode4(104757), // Rule ID 17094 // |
| 37145 | /* 104683 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE_In64BitMode), |
| 37146 | /* 104686 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsave64), |
| 37147 | /* 104691 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37148 | /* 104694 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37149 | /* 104697 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37150 | /* 104701 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37151 | /* 104705 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37152 | /* 104709 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37153 | /* 104716 */ // (intrinsic_void 16205:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVE64 addr:{ *:[iPTR] }:$dst) |
| 37154 | /* 104716 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37155 | /* 104720 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37156 | /* 104726 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37157 | /* 104730 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37158 | /* 104734 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37159 | /* 104740 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37160 | /* 104744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVE64), |
| 37161 | /* 104747 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37162 | /* 104751 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37163 | /* 104755 */ GIR_RootConstrainSelectedInstOperands, |
| 37164 | /* 104756 */ // GIR_Coverage, 17094, |
| 37165 | /* 104756 */ GIR_EraseRootFromParent_Done, |
| 37166 | /* 104757 */ // Label 2262: @104757 |
| 37167 | /* 104757 */ GIM_Try, /*On fail goto*//*Label 2263*/ GIMT_Encode4(104836), // Rule ID 17095 // |
| 37168 | /* 104762 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE), |
| 37169 | /* 104765 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xrstor), |
| 37170 | /* 104770 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37171 | /* 104773 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37172 | /* 104776 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37173 | /* 104780 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37174 | /* 104784 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37175 | /* 104788 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37176 | /* 104795 */ // (intrinsic_void 16200:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XRSTOR addr:{ *:[iPTR] }:$dst) |
| 37177 | /* 104795 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37178 | /* 104799 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37179 | /* 104805 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37180 | /* 104809 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37181 | /* 104813 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37182 | /* 104819 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37183 | /* 104823 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRSTOR), |
| 37184 | /* 104826 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37185 | /* 104830 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37186 | /* 104834 */ GIR_RootConstrainSelectedInstOperands, |
| 37187 | /* 104835 */ // GIR_Coverage, 17095, |
| 37188 | /* 104835 */ GIR_EraseRootFromParent_Done, |
| 37189 | /* 104836 */ // Label 2263: @104836 |
| 37190 | /* 104836 */ GIM_Try, /*On fail goto*//*Label 2264*/ GIMT_Encode4(104915), // Rule ID 17096 // |
| 37191 | /* 104841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE_In64BitMode), |
| 37192 | /* 104844 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xrstor64), |
| 37193 | /* 104849 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37194 | /* 104852 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37195 | /* 104855 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37196 | /* 104859 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37197 | /* 104863 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37198 | /* 104867 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37199 | /* 104874 */ // (intrinsic_void 16201:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XRSTOR64 addr:{ *:[iPTR] }:$dst) |
| 37200 | /* 104874 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37201 | /* 104878 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37202 | /* 104884 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37203 | /* 104888 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37204 | /* 104892 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37205 | /* 104898 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37206 | /* 104902 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRSTOR64), |
| 37207 | /* 104905 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37208 | /* 104909 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37209 | /* 104913 */ GIR_RootConstrainSelectedInstOperands, |
| 37210 | /* 104914 */ // GIR_Coverage, 17096, |
| 37211 | /* 104914 */ GIR_EraseRootFromParent_Done, |
| 37212 | /* 104915 */ // Label 2264: @104915 |
| 37213 | /* 104915 */ GIM_Try, /*On fail goto*//*Label 2265*/ GIMT_Encode4(104994), // Rule ID 17097 // |
| 37214 | /* 104920 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVEOPT), |
| 37215 | /* 104923 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsaveopt), |
| 37216 | /* 104928 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37217 | /* 104931 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37218 | /* 104934 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37219 | /* 104938 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37220 | /* 104942 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37221 | /* 104946 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37222 | /* 104953 */ // (intrinsic_void 16208:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVEOPT addr:{ *:[iPTR] }:$dst) |
| 37223 | /* 104953 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37224 | /* 104957 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37225 | /* 104963 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37226 | /* 104967 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37227 | /* 104971 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37228 | /* 104977 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37229 | /* 104981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVEOPT), |
| 37230 | /* 104984 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37231 | /* 104988 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37232 | /* 104992 */ GIR_RootConstrainSelectedInstOperands, |
| 37233 | /* 104993 */ // GIR_Coverage, 17097, |
| 37234 | /* 104993 */ GIR_EraseRootFromParent_Done, |
| 37235 | /* 104994 */ // Label 2265: @104994 |
| 37236 | /* 104994 */ GIM_Try, /*On fail goto*//*Label 2266*/ GIMT_Encode4(105073), // Rule ID 17098 // |
| 37237 | /* 104999 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVEOPT_In64BitMode), |
| 37238 | /* 105002 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsaveopt64), |
| 37239 | /* 105007 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37240 | /* 105010 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37241 | /* 105013 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37242 | /* 105017 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37243 | /* 105021 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37244 | /* 105025 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37245 | /* 105032 */ // (intrinsic_void 16209:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVEOPT64 addr:{ *:[iPTR] }:$dst) |
| 37246 | /* 105032 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37247 | /* 105036 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37248 | /* 105042 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37249 | /* 105046 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37250 | /* 105050 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37251 | /* 105056 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37252 | /* 105060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVEOPT64), |
| 37253 | /* 105063 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37254 | /* 105067 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37255 | /* 105071 */ GIR_RootConstrainSelectedInstOperands, |
| 37256 | /* 105072 */ // GIR_Coverage, 17098, |
| 37257 | /* 105072 */ GIR_EraseRootFromParent_Done, |
| 37258 | /* 105073 */ // Label 2266: @105073 |
| 37259 | /* 105073 */ GIM_Try, /*On fail goto*//*Label 2267*/ GIMT_Encode4(105152), // Rule ID 17099 // |
| 37260 | /* 105078 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVEC), |
| 37261 | /* 105081 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsavec), |
| 37262 | /* 105086 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37263 | /* 105089 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37264 | /* 105092 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37265 | /* 105096 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37266 | /* 105100 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37267 | /* 105104 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37268 | /* 105111 */ // (intrinsic_void 16206:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVEC addr:{ *:[iPTR] }:$dst) |
| 37269 | /* 105111 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37270 | /* 105115 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37271 | /* 105121 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37272 | /* 105125 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37273 | /* 105129 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37274 | /* 105135 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37275 | /* 105139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVEC), |
| 37276 | /* 105142 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37277 | /* 105146 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37278 | /* 105150 */ GIR_RootConstrainSelectedInstOperands, |
| 37279 | /* 105151 */ // GIR_Coverage, 17099, |
| 37280 | /* 105151 */ GIR_EraseRootFromParent_Done, |
| 37281 | /* 105152 */ // Label 2267: @105152 |
| 37282 | /* 105152 */ GIM_Try, /*On fail goto*//*Label 2268*/ GIMT_Encode4(105231), // Rule ID 17100 // |
| 37283 | /* 105157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVEC_In64BitMode), |
| 37284 | /* 105160 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsavec64), |
| 37285 | /* 105165 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37286 | /* 105168 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37287 | /* 105171 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37288 | /* 105175 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37289 | /* 105179 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37290 | /* 105183 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37291 | /* 105190 */ // (intrinsic_void 16207:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVEC64 addr:{ *:[iPTR] }:$dst) |
| 37292 | /* 105190 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37293 | /* 105194 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37294 | /* 105200 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37295 | /* 105204 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37296 | /* 105208 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37297 | /* 105214 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37298 | /* 105218 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVEC64), |
| 37299 | /* 105221 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37300 | /* 105225 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37301 | /* 105229 */ GIR_RootConstrainSelectedInstOperands, |
| 37302 | /* 105230 */ // GIR_Coverage, 17100, |
| 37303 | /* 105230 */ GIR_EraseRootFromParent_Done, |
| 37304 | /* 105231 */ // Label 2268: @105231 |
| 37305 | /* 105231 */ GIM_Try, /*On fail goto*//*Label 2269*/ GIMT_Encode4(105310), // Rule ID 17101 // |
| 37306 | /* 105236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVES), |
| 37307 | /* 105239 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsaves), |
| 37308 | /* 105244 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37309 | /* 105247 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37310 | /* 105250 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37311 | /* 105254 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37312 | /* 105258 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37313 | /* 105262 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37314 | /* 105269 */ // (intrinsic_void 16210:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVES addr:{ *:[iPTR] }:$dst) |
| 37315 | /* 105269 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37316 | /* 105273 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37317 | /* 105279 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37318 | /* 105283 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37319 | /* 105287 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37320 | /* 105293 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37321 | /* 105297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVES), |
| 37322 | /* 105300 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37323 | /* 105304 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37324 | /* 105308 */ GIR_RootConstrainSelectedInstOperands, |
| 37325 | /* 105309 */ // GIR_Coverage, 17101, |
| 37326 | /* 105309 */ GIR_EraseRootFromParent_Done, |
| 37327 | /* 105310 */ // Label 2269: @105310 |
| 37328 | /* 105310 */ GIM_Try, /*On fail goto*//*Label 2270*/ GIMT_Encode4(105389), // Rule ID 17102 // |
| 37329 | /* 105315 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVE_In64BitMode), |
| 37330 | /* 105318 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsaves64), |
| 37331 | /* 105323 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37332 | /* 105326 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37333 | /* 105329 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37334 | /* 105333 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37335 | /* 105337 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37336 | /* 105341 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37337 | /* 105348 */ // (intrinsic_void 16211:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSAVES64 addr:{ *:[iPTR] }:$dst) |
| 37338 | /* 105348 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37339 | /* 105352 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37340 | /* 105358 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37341 | /* 105362 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37342 | /* 105366 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37343 | /* 105372 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37344 | /* 105376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSAVES64), |
| 37345 | /* 105379 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37346 | /* 105383 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37347 | /* 105387 */ GIR_RootConstrainSelectedInstOperands, |
| 37348 | /* 105388 */ // GIR_Coverage, 17102, |
| 37349 | /* 105388 */ GIR_EraseRootFromParent_Done, |
| 37350 | /* 105389 */ // Label 2270: @105389 |
| 37351 | /* 105389 */ GIM_Try, /*On fail goto*//*Label 2271*/ GIMT_Encode4(105468), // Rule ID 17103 // |
| 37352 | /* 105394 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVES), |
| 37353 | /* 105397 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xrstors), |
| 37354 | /* 105402 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37355 | /* 105405 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37356 | /* 105408 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37357 | /* 105412 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37358 | /* 105416 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37359 | /* 105420 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37360 | /* 105427 */ // (intrinsic_void 16202:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XRSTORS addr:{ *:[iPTR] }:$dst) |
| 37361 | /* 105427 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37362 | /* 105431 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37363 | /* 105437 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37364 | /* 105441 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37365 | /* 105445 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37366 | /* 105451 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37367 | /* 105455 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRSTORS), |
| 37368 | /* 105458 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37369 | /* 105462 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37370 | /* 105466 */ GIR_RootConstrainSelectedInstOperands, |
| 37371 | /* 105467 */ // GIR_Coverage, 17103, |
| 37372 | /* 105467 */ GIR_EraseRootFromParent_Done, |
| 37373 | /* 105468 */ // Label 2271: @105468 |
| 37374 | /* 105468 */ GIM_Try, /*On fail goto*//*Label 2272*/ GIMT_Encode4(105547), // Rule ID 17104 // |
| 37375 | /* 105473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXSAVES_In64BitMode), |
| 37376 | /* 105476 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xrstors64), |
| 37377 | /* 105481 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37378 | /* 105484 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37379 | /* 105487 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 37380 | /* 105491 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37381 | /* 105495 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37382 | /* 105499 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 37383 | /* 105506 */ // (intrinsic_void 16203:{ *:[iPTR] }, addr:{ *:[iPTR] }:$dst, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XRSTORS64 addr:{ *:[iPTR] }:$dst) |
| 37384 | /* 105506 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37385 | /* 105510 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37386 | /* 105516 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37387 | /* 105520 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37388 | /* 105524 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37389 | /* 105530 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37390 | /* 105534 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XRSTORS64), |
| 37391 | /* 105537 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 37392 | /* 105541 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37393 | /* 105545 */ GIR_RootConstrainSelectedInstOperands, |
| 37394 | /* 105546 */ // GIR_Coverage, 17104, |
| 37395 | /* 105546 */ GIR_EraseRootFromParent_Done, |
| 37396 | /* 105547 */ // Label 2272: @105547 |
| 37397 | /* 105547 */ GIM_Try, /*On fail goto*//*Label 2273*/ GIMT_Encode4(105584), // Rule ID 17008 // |
| 37398 | /* 105552 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXINT8_In64BitMode), |
| 37399 | /* 105555 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbssd), |
| 37400 | /* 105560 */ // MIs[0] src1 |
| 37401 | /* 105560 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37402 | /* 105563 */ // MIs[0] src2 |
| 37403 | /* 105563 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37404 | /* 105566 */ // MIs[0] src3 |
| 37405 | /* 105566 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37406 | /* 105569 */ // (intrinsic_void 16063:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBSSD (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37407 | /* 105569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBSSD), |
| 37408 | /* 105572 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37409 | /* 105574 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37410 | /* 105576 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37411 | /* 105578 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37412 | /* 105582 */ GIR_RootConstrainSelectedInstOperands, |
| 37413 | /* 105583 */ // GIR_Coverage, 17008, |
| 37414 | /* 105583 */ GIR_EraseRootFromParent_Done, |
| 37415 | /* 105584 */ // Label 2273: @105584 |
| 37416 | /* 105584 */ GIM_Try, /*On fail goto*//*Label 2274*/ GIMT_Encode4(105621), // Rule ID 17009 // |
| 37417 | /* 105589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXINT8_In64BitMode), |
| 37418 | /* 105592 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbsud), |
| 37419 | /* 105597 */ // MIs[0] src1 |
| 37420 | /* 105597 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37421 | /* 105600 */ // MIs[0] src2 |
| 37422 | /* 105600 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37423 | /* 105603 */ // MIs[0] src3 |
| 37424 | /* 105603 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37425 | /* 105606 */ // (intrinsic_void 16065:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBSUD (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37426 | /* 105606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBSUD), |
| 37427 | /* 105609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37428 | /* 105611 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37429 | /* 105613 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37430 | /* 105615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37431 | /* 105619 */ GIR_RootConstrainSelectedInstOperands, |
| 37432 | /* 105620 */ // GIR_Coverage, 17009, |
| 37433 | /* 105620 */ GIR_EraseRootFromParent_Done, |
| 37434 | /* 105621 */ // Label 2274: @105621 |
| 37435 | /* 105621 */ GIM_Try, /*On fail goto*//*Label 2275*/ GIMT_Encode4(105658), // Rule ID 17010 // |
| 37436 | /* 105626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXINT8_In64BitMode), |
| 37437 | /* 105629 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbusd), |
| 37438 | /* 105634 */ // MIs[0] src1 |
| 37439 | /* 105634 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37440 | /* 105637 */ // MIs[0] src2 |
| 37441 | /* 105637 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37442 | /* 105640 */ // MIs[0] src3 |
| 37443 | /* 105640 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37444 | /* 105643 */ // (intrinsic_void 16067:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBUSD (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37445 | /* 105643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBUSD), |
| 37446 | /* 105646 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37447 | /* 105648 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37448 | /* 105650 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37449 | /* 105652 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37450 | /* 105656 */ GIR_RootConstrainSelectedInstOperands, |
| 37451 | /* 105657 */ // GIR_Coverage, 17010, |
| 37452 | /* 105657 */ GIR_EraseRootFromParent_Done, |
| 37453 | /* 105658 */ // Label 2275: @105658 |
| 37454 | /* 105658 */ GIM_Try, /*On fail goto*//*Label 2276*/ GIMT_Encode4(105695), // Rule ID 17011 // |
| 37455 | /* 105663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXINT8_In64BitMode), |
| 37456 | /* 105666 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbuud), |
| 37457 | /* 105671 */ // MIs[0] src1 |
| 37458 | /* 105671 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37459 | /* 105674 */ // MIs[0] src2 |
| 37460 | /* 105674 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37461 | /* 105677 */ // MIs[0] src3 |
| 37462 | /* 105677 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37463 | /* 105680 */ // (intrinsic_void 16069:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBUUD (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37464 | /* 105680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBUUD), |
| 37465 | /* 105683 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37466 | /* 105685 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37467 | /* 105687 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37468 | /* 105689 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37469 | /* 105693 */ GIR_RootConstrainSelectedInstOperands, |
| 37470 | /* 105694 */ // GIR_Coverage, 17011, |
| 37471 | /* 105694 */ GIR_EraseRootFromParent_Done, |
| 37472 | /* 105695 */ // Label 2276: @105695 |
| 37473 | /* 105695 */ GIM_Try, /*On fail goto*//*Label 2277*/ GIMT_Encode4(105732), // Rule ID 17013 // |
| 37474 | /* 105700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXBF16_In64BitMode), |
| 37475 | /* 105703 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbf16ps), |
| 37476 | /* 105708 */ // MIs[0] src1 |
| 37477 | /* 105708 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37478 | /* 105711 */ // MIs[0] src2 |
| 37479 | /* 105711 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37480 | /* 105714 */ // MIs[0] src3 |
| 37481 | /* 105714 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37482 | /* 105717 */ // (intrinsic_void 16057:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBF16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37483 | /* 105717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBF16PS), |
| 37484 | /* 105720 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37485 | /* 105722 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37486 | /* 105724 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37487 | /* 105726 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37488 | /* 105730 */ GIR_RootConstrainSelectedInstOperands, |
| 37489 | /* 105731 */ // GIR_Coverage, 17013, |
| 37490 | /* 105731 */ GIR_EraseRootFromParent_Done, |
| 37491 | /* 105732 */ // Label 2277: @105732 |
| 37492 | /* 105732 */ GIM_Try, /*On fail goto*//*Label 2278*/ GIMT_Encode4(105769), // Rule ID 17015 // |
| 37493 | /* 105737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP16_In64BitMode), |
| 37494 | /* 105740 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpfp16ps), |
| 37495 | /* 105745 */ // MIs[0] src1 |
| 37496 | /* 105745 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37497 | /* 105748 */ // MIs[0] src2 |
| 37498 | /* 105748 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37499 | /* 105751 */ // MIs[0] src3 |
| 37500 | /* 105751 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37501 | /* 105754 */ // (intrinsic_void 16071:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37502 | /* 105754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPFP16PS), |
| 37503 | /* 105757 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37504 | /* 105759 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37505 | /* 105761 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37506 | /* 105763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37507 | /* 105767 */ GIR_RootConstrainSelectedInstOperands, |
| 37508 | /* 105768 */ // GIR_Coverage, 17015, |
| 37509 | /* 105768 */ GIR_EraseRootFromParent_Done, |
| 37510 | /* 105769 */ // Label 2278: @105769 |
| 37511 | /* 105769 */ GIM_Try, /*On fail goto*//*Label 2279*/ GIMT_Encode4(105806), // Rule ID 17018 // |
| 37512 | /* 105774 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXCOMPLEX_In64BitMode), |
| 37513 | /* 105777 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tcmmimfp16ps), |
| 37514 | /* 105782 */ // MIs[0] src1 |
| 37515 | /* 105782 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37516 | /* 105785 */ // MIs[0] src2 |
| 37517 | /* 105785 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37518 | /* 105788 */ // MIs[0] src3 |
| 37519 | /* 105788 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37520 | /* 105791 */ // (intrinsic_void 16038:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTCMMIMFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37521 | /* 105791 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCMMIMFP16PS), |
| 37522 | /* 105794 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37523 | /* 105796 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37524 | /* 105798 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37525 | /* 105800 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37526 | /* 105804 */ GIR_RootConstrainSelectedInstOperands, |
| 37527 | /* 105805 */ // GIR_Coverage, 17018, |
| 37528 | /* 105805 */ GIR_EraseRootFromParent_Done, |
| 37529 | /* 105806 */ // Label 2279: @105806 |
| 37530 | /* 105806 */ GIM_Try, /*On fail goto*//*Label 2280*/ GIMT_Encode4(105843), // Rule ID 17019 // |
| 37531 | /* 105811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXCOMPLEX_In64BitMode), |
| 37532 | /* 105814 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tcmmrlfp16ps), |
| 37533 | /* 105819 */ // MIs[0] src1 |
| 37534 | /* 105819 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37535 | /* 105822 */ // MIs[0] src2 |
| 37536 | /* 105822 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37537 | /* 105825 */ // MIs[0] src3 |
| 37538 | /* 105825 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37539 | /* 105828 */ // (intrinsic_void 16040:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTCMMRLFP16PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37540 | /* 105828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCMMRLFP16PS), |
| 37541 | /* 105831 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37542 | /* 105833 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37543 | /* 105835 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37544 | /* 105837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37545 | /* 105841 */ GIR_RootConstrainSelectedInstOperands, |
| 37546 | /* 105842 */ // GIR_Coverage, 17019, |
| 37547 | /* 105842 */ GIR_EraseRootFromParent_Done, |
| 37548 | /* 105843 */ // Label 2280: @105843 |
| 37549 | /* 105843 */ GIM_Try, /*On fail goto*//*Label 2281*/ GIMT_Encode4(105880), // Rule ID 17020 // |
| 37550 | /* 105848 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP8_In64BitMode), |
| 37551 | /* 105851 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbf8ps), |
| 37552 | /* 105856 */ // MIs[0] src1 |
| 37553 | /* 105856 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37554 | /* 105859 */ // MIs[0] src2 |
| 37555 | /* 105859 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37556 | /* 105862 */ // MIs[0] src3 |
| 37557 | /* 105862 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37558 | /* 105865 */ // (intrinsic_void 16059:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBF8PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37559 | /* 105865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBF8PS), |
| 37560 | /* 105868 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37561 | /* 105870 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37562 | /* 105872 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37563 | /* 105874 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37564 | /* 105878 */ GIR_RootConstrainSelectedInstOperands, |
| 37565 | /* 105879 */ // GIR_Coverage, 17020, |
| 37566 | /* 105879 */ GIR_EraseRootFromParent_Done, |
| 37567 | /* 105880 */ // Label 2281: @105880 |
| 37568 | /* 105880 */ GIM_Try, /*On fail goto*//*Label 2282*/ GIMT_Encode4(105917), // Rule ID 17021 // |
| 37569 | /* 105885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP8_In64BitMode), |
| 37570 | /* 105888 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdpbhf8ps), |
| 37571 | /* 105893 */ // MIs[0] src1 |
| 37572 | /* 105893 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37573 | /* 105896 */ // MIs[0] src2 |
| 37574 | /* 105896 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37575 | /* 105899 */ // MIs[0] src3 |
| 37576 | /* 105899 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37577 | /* 105902 */ // (intrinsic_void 16061:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPBHF8PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37578 | /* 105902 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPBHF8PS), |
| 37579 | /* 105905 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37580 | /* 105907 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37581 | /* 105909 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37582 | /* 105911 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37583 | /* 105915 */ GIR_RootConstrainSelectedInstOperands, |
| 37584 | /* 105916 */ // GIR_Coverage, 17021, |
| 37585 | /* 105916 */ GIR_EraseRootFromParent_Done, |
| 37586 | /* 105917 */ // Label 2282: @105917 |
| 37587 | /* 105917 */ GIM_Try, /*On fail goto*//*Label 2283*/ GIMT_Encode4(105954), // Rule ID 17022 // |
| 37588 | /* 105922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP8_In64BitMode), |
| 37589 | /* 105925 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdphbf8ps), |
| 37590 | /* 105930 */ // MIs[0] src1 |
| 37591 | /* 105930 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37592 | /* 105933 */ // MIs[0] src2 |
| 37593 | /* 105933 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37594 | /* 105936 */ // MIs[0] src3 |
| 37595 | /* 105936 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37596 | /* 105939 */ // (intrinsic_void 16073:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPHBF8PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37597 | /* 105939 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPHBF8PS), |
| 37598 | /* 105942 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37599 | /* 105944 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37600 | /* 105946 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37601 | /* 105948 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37602 | /* 105952 */ GIR_RootConstrainSelectedInstOperands, |
| 37603 | /* 105953 */ // GIR_Coverage, 17022, |
| 37604 | /* 105953 */ GIR_EraseRootFromParent_Done, |
| 37605 | /* 105954 */ // Label 2283: @105954 |
| 37606 | /* 105954 */ GIM_Try, /*On fail goto*//*Label 2284*/ GIMT_Encode4(105991), // Rule ID 17023 // |
| 37607 | /* 105959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXFP8_In64BitMode), |
| 37608 | /* 105962 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tdphf8ps), |
| 37609 | /* 105967 */ // MIs[0] src1 |
| 37610 | /* 105967 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37611 | /* 105970 */ // MIs[0] src2 |
| 37612 | /* 105970 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37613 | /* 105973 */ // MIs[0] src3 |
| 37614 | /* 105973 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37615 | /* 105976 */ // (intrinsic_void 16075:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTDPHF8PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37616 | /* 105976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTDPHF8PS), |
| 37617 | /* 105979 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37618 | /* 105981 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37619 | /* 105983 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37620 | /* 105985 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37621 | /* 105989 */ GIR_RootConstrainSelectedInstOperands, |
| 37622 | /* 105990 */ // GIR_Coverage, 17023, |
| 37623 | /* 105990 */ GIR_EraseRootFromParent_Done, |
| 37624 | /* 105991 */ // Label 2284: @105991 |
| 37625 | /* 105991 */ GIM_Try, /*On fail goto*//*Label 2285*/ GIMT_Encode4(106028), // Rule ID 17045 // |
| 37626 | /* 105996 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXTF32_In64BitMode), |
| 37627 | /* 105999 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_tmmultf32ps), |
| 37628 | /* 106004 */ // MIs[0] src1 |
| 37629 | /* 106004 */ GIM_CheckIsImm, /*MI*/0, /*Op*/1, |
| 37630 | /* 106007 */ // MIs[0] src2 |
| 37631 | /* 106007 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37632 | /* 106010 */ // MIs[0] src3 |
| 37633 | /* 106010 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37634 | /* 106013 */ // (intrinsic_void 16094:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) => (PTMMULTF32PS (timm:{ *:[i8] }):$src1, (timm:{ *:[i8] }):$src2, (timm:{ *:[i8] }):$src3) |
| 37635 | /* 106013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTMMULTF32PS), |
| 37636 | /* 106016 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 37637 | /* 106018 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 37638 | /* 106020 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 37639 | /* 106022 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37640 | /* 106026 */ GIR_RootConstrainSelectedInstOperands, |
| 37641 | /* 106027 */ // GIR_Coverage, 17045, |
| 37642 | /* 106027 */ GIR_EraseRootFromParent_Done, |
| 37643 | /* 106028 */ // Label 2285: @106028 |
| 37644 | /* 106028 */ GIM_Try, /*On fail goto*//*Label 2286*/ GIMT_Encode4(106069), // Rule ID 17028 // |
| 37645 | /* 106033 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode), |
| 37646 | /* 106036 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowd2psi), |
| 37647 | /* 106041 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 37648 | /* 106044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37649 | /* 106048 */ // MIs[0] src1 |
| 37650 | /* 106048 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37651 | /* 106051 */ // MIs[0] src2 |
| 37652 | /* 106051 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37653 | /* 106054 */ // (intrinsic_w_chain:{ *:[v16f32] } 16044:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i32] }):$src2) => (PTCVTROWD2PSrti:{ *:[v16f32] } (timm:{ *:[i8] }):$src1, (timm:{ *:[i32] }):$src2) |
| 37654 | /* 106054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWD2PSrti), |
| 37655 | /* 106057 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37656 | /* 106059 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37657 | /* 106061 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37658 | /* 106063 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37659 | /* 106067 */ GIR_RootConstrainSelectedInstOperands, |
| 37660 | /* 106068 */ // GIR_Coverage, 17028, |
| 37661 | /* 106068 */ GIR_EraseRootFromParent_Done, |
| 37662 | /* 106069 */ // Label 2286: @106069 |
| 37663 | /* 106069 */ GIM_Try, /*On fail goto*//*Label 2287*/ GIMT_Encode4(106110), // Rule ID 17037 // |
| 37664 | /* 106074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode), |
| 37665 | /* 106077 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowps2phhi), |
| 37666 | /* 106082 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 37667 | /* 106085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37668 | /* 106089 */ // MIs[0] src1 |
| 37669 | /* 106089 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37670 | /* 106092 */ // MIs[0] src2 |
| 37671 | /* 106092 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37672 | /* 106095 */ // (intrinsic_w_chain:{ *:[v32f16] } 16053:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i32] }):$src2) => (PTCVTROWPS2PHHrti:{ *:[v32f16] } (timm:{ *:[i8] }):$src1, (timm:{ *:[i32] }):$src2) |
| 37673 | /* 106095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWPS2PHHrti), |
| 37674 | /* 106098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37675 | /* 106100 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37676 | /* 106102 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37677 | /* 106104 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37678 | /* 106108 */ GIR_RootConstrainSelectedInstOperands, |
| 37679 | /* 106109 */ // GIR_Coverage, 17037, |
| 37680 | /* 106109 */ GIR_EraseRootFromParent_Done, |
| 37681 | /* 106110 */ // Label 2287: @106110 |
| 37682 | /* 106110 */ GIM_Try, /*On fail goto*//*Label 2288*/ GIMT_Encode4(106151), // Rule ID 17039 // |
| 37683 | /* 106115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode), |
| 37684 | /* 106118 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowps2phli), |
| 37685 | /* 106123 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 37686 | /* 106126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37687 | /* 106130 */ // MIs[0] src1 |
| 37688 | /* 106130 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37689 | /* 106133 */ // MIs[0] src2 |
| 37690 | /* 106133 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37691 | /* 106136 */ // (intrinsic_w_chain:{ *:[v32f16] } 16056:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i32] }):$src2) => (PTCVTROWPS2PHLrti:{ *:[v32f16] } (timm:{ *:[i8] }):$src1, (timm:{ *:[i32] }):$src2) |
| 37692 | /* 106136 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWPS2PHLrti), |
| 37693 | /* 106139 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37694 | /* 106141 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37695 | /* 106143 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37696 | /* 106145 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37697 | /* 106149 */ GIR_RootConstrainSelectedInstOperands, |
| 37698 | /* 106150 */ // GIR_Coverage, 17039, |
| 37699 | /* 106150 */ GIR_EraseRootFromParent_Done, |
| 37700 | /* 106151 */ // Label 2288: @106151 |
| 37701 | /* 106151 */ GIM_Try, /*On fail goto*//*Label 2289*/ GIMT_Encode4(106192), // Rule ID 17040 // |
| 37702 | /* 106156 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode), |
| 37703 | /* 106159 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tilemovrowi), |
| 37704 | /* 106164 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 37705 | /* 106167 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37706 | /* 106171 */ // MIs[0] src1 |
| 37707 | /* 106171 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37708 | /* 106174 */ // MIs[0] src2 |
| 37709 | /* 106174 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37710 | /* 106177 */ // (intrinsic_w_chain:{ *:[v16i32] } 16088:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, (timm:{ *:[i32] }):$src2) => (PTILEMOVROWrti:{ *:[v16i32] } (timm:{ *:[i8] }):$src1, (timm:{ *:[i32] }):$src2) |
| 37711 | /* 106177 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTILEMOVROWrti), |
| 37712 | /* 106180 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37713 | /* 106182 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37714 | /* 106184 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37715 | /* 106186 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37716 | /* 106190 */ GIR_RootConstrainSelectedInstOperands, |
| 37717 | /* 106191 */ // GIR_Coverage, 17040, |
| 37718 | /* 106191 */ GIR_EraseRootFromParent_Done, |
| 37719 | /* 106192 */ // Label 2289: @106192 |
| 37720 | /* 106192 */ GIM_Try, /*On fail goto*//*Label 2290*/ GIMT_Encode4(106237), // Rule ID 17029 // |
| 37721 | /* 106197 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode), |
| 37722 | /* 106200 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowd2ps), |
| 37723 | /* 106205 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 37724 | /* 106208 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37725 | /* 106211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37726 | /* 106215 */ // MIs[0] src1 |
| 37727 | /* 106215 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37728 | /* 106218 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37729 | /* 106222 */ // (intrinsic_w_chain:{ *:[v16f32] } 16042:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) => (PTCVTROWD2PSrte:{ *:[v16f32] } (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) |
| 37730 | /* 106222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWD2PSrte), |
| 37731 | /* 106225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37732 | /* 106227 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37733 | /* 106229 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37734 | /* 106231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37735 | /* 106235 */ GIR_RootConstrainSelectedInstOperands, |
| 37736 | /* 106236 */ // GIR_Coverage, 17029, |
| 37737 | /* 106236 */ GIR_EraseRootFromParent_Done, |
| 37738 | /* 106237 */ // Label 2290: @106237 |
| 37739 | /* 106237 */ GIM_Try, /*On fail goto*//*Label 2291*/ GIMT_Encode4(106282), // Rule ID 17036 // |
| 37740 | /* 106242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode), |
| 37741 | /* 106245 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowps2phh), |
| 37742 | /* 106250 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 37743 | /* 106253 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37744 | /* 106256 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37745 | /* 106260 */ // MIs[0] src1 |
| 37746 | /* 106260 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37747 | /* 106263 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37748 | /* 106267 */ // (intrinsic_w_chain:{ *:[v32f16] } 16051:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) => (PTCVTROWPS2PHHrte:{ *:[v32f16] } (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) |
| 37749 | /* 106267 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWPS2PHHrte), |
| 37750 | /* 106270 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37751 | /* 106272 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37752 | /* 106274 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37753 | /* 106276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37754 | /* 106280 */ GIR_RootConstrainSelectedInstOperands, |
| 37755 | /* 106281 */ // GIR_Coverage, 17036, |
| 37756 | /* 106281 */ GIR_EraseRootFromParent_Done, |
| 37757 | /* 106282 */ // Label 2291: @106282 |
| 37758 | /* 106282 */ GIM_Try, /*On fail goto*//*Label 2292*/ GIMT_Encode4(106327), // Rule ID 17038 // |
| 37759 | /* 106287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode), |
| 37760 | /* 106290 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tcvtrowps2phl), |
| 37761 | /* 106295 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v32s16, |
| 37762 | /* 106298 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37763 | /* 106301 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37764 | /* 106305 */ // MIs[0] src1 |
| 37765 | /* 106305 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37766 | /* 106308 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37767 | /* 106312 */ // (intrinsic_w_chain:{ *:[v32f16] } 16054:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) => (PTCVTROWPS2PHLrte:{ *:[v32f16] } (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) |
| 37768 | /* 106312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTCVTROWPS2PHLrte), |
| 37769 | /* 106315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37770 | /* 106317 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37771 | /* 106319 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37772 | /* 106321 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37773 | /* 106325 */ GIR_RootConstrainSelectedInstOperands, |
| 37774 | /* 106326 */ // GIR_Coverage, 17038, |
| 37775 | /* 106326 */ GIR_EraseRootFromParent_Done, |
| 37776 | /* 106327 */ // Label 2292: @106327 |
| 37777 | /* 106327 */ GIM_Try, /*On fail goto*//*Label 2293*/ GIMT_Encode4(106372), // Rule ID 17041 // |
| 37778 | /* 106332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAMXAVX512_HasAVX10_2_In64BitMode), |
| 37779 | /* 106335 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::x86_tilemovrow), |
| 37780 | /* 106340 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s32, |
| 37781 | /* 106343 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37782 | /* 106346 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 37783 | /* 106350 */ // MIs[0] src1 |
| 37784 | /* 106350 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 37785 | /* 106353 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37786 | /* 106357 */ // (intrinsic_w_chain:{ *:[v16i32] } 16086:{ *:[iPTR] }, (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) => (PTILEMOVROWrte:{ *:[v16i32] } (timm:{ *:[i8] }):$src1, GR32:{ *:[i32] }:$src2) |
| 37787 | /* 106357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::PTILEMOVROWrte), |
| 37788 | /* 106360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 37789 | /* 106362 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37790 | /* 106364 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37791 | /* 106366 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37792 | /* 106370 */ GIR_RootConstrainSelectedInstOperands, |
| 37793 | /* 106371 */ // GIR_Coverage, 17041, |
| 37794 | /* 106371 */ GIR_EraseRootFromParent_Done, |
| 37795 | /* 106372 */ // Label 2293: @106372 |
| 37796 | /* 106372 */ GIM_Try, /*On fail goto*//*Label 2294*/ GIMT_Encode4(106417), // Rule ID 122 // |
| 37797 | /* 106377 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 37798 | /* 106380 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_lwpval32), |
| 37799 | /* 106385 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37800 | /* 106388 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37801 | /* 106391 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37802 | /* 106395 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37803 | /* 106399 */ // MIs[0] cntl |
| 37804 | /* 106399 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37805 | /* 106402 */ // (intrinsic_void 15742:{ *:[iPTR] }, GR32:{ *:[i32] }:$src0, GR32:{ *:[i32] }:$src1, (timm:{ *:[i32] }):$cntl) => (LWPVAL32rri GR32:{ *:[i32] }:$src0, GR32:{ *:[i32] }:$src1, (timm:{ *:[i32] }):$cntl) |
| 37806 | /* 106402 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LWPVAL32rri), |
| 37807 | /* 106405 */ GIR_RootToRootCopy, /*OpIdx*/1, // src0 |
| 37808 | /* 106407 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37809 | /* 106409 */ GIR_RootToRootCopy, /*OpIdx*/3, // cntl |
| 37810 | /* 106411 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37811 | /* 106415 */ GIR_RootConstrainSelectedInstOperands, |
| 37812 | /* 106416 */ // GIR_Coverage, 122, |
| 37813 | /* 106416 */ GIR_EraseRootFromParent_Done, |
| 37814 | /* 106417 */ // Label 2294: @106417 |
| 37815 | /* 106417 */ GIM_Try, /*On fail goto*//*Label 2295*/ GIMT_Encode4(106462), // Rule ID 124 // |
| 37816 | /* 106422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLWP), |
| 37817 | /* 106425 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_lwpval64), |
| 37818 | /* 106430 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 37819 | /* 106433 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37820 | /* 106436 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 37821 | /* 106440 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37822 | /* 106444 */ // MIs[0] cntl |
| 37823 | /* 106444 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 37824 | /* 106447 */ // (intrinsic_void 15743:{ *:[iPTR] }, GR64:{ *:[i64] }:$src0, GR32:{ *:[i32] }:$src1, (timm:{ *:[i32] }):$cntl) => (LWPVAL64rri GR64:{ *:[i64] }:$src0, GR32:{ *:[i32] }:$src1, (timm:{ *:[i32] }):$cntl) |
| 37825 | /* 106447 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LWPVAL64rri), |
| 37826 | /* 106450 */ GIR_RootToRootCopy, /*OpIdx*/1, // src0 |
| 37827 | /* 106452 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37828 | /* 106454 */ GIR_RootToRootCopy, /*OpIdx*/3, // cntl |
| 37829 | /* 106456 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37830 | /* 106460 */ GIR_RootConstrainSelectedInstOperands, |
| 37831 | /* 106461 */ // GIR_Coverage, 124, |
| 37832 | /* 106461 */ GIR_EraseRootFromParent_Done, |
| 37833 | /* 106462 */ // Label 2295: @106462 |
| 37834 | /* 106462 */ GIM_Try, /*On fail goto*//*Label 2296*/ GIMT_Encode4(106544), // Rule ID 17092 // |
| 37835 | /* 106467 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_xsetbv), |
| 37836 | /* 106472 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37837 | /* 106475 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37838 | /* 106478 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37839 | /* 106481 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32_ArgRef_and_GR32_CBRegClassID), |
| 37840 | /* 106485 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32_AD_and_GR32_ArgRefRegClassID), |
| 37841 | /* 106489 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37842 | /* 106493 */ // (intrinsic_void 16212:{ *:[iPTR] }, ECX:{ *:[i32] }, EDX:{ *:[i32] }, EAX:{ *:[i32] }) => (XSETBV) |
| 37843 | /* 106493 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37844 | /* 106497 */ GIR_AddRegister, /*InsnID*/3, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37845 | /* 106503 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/3, // EAX |
| 37846 | /* 106507 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37847 | /* 106511 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EDX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37848 | /* 106517 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // EDX |
| 37849 | /* 106521 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37850 | /* 106525 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::ECX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37851 | /* 106531 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // ECX |
| 37852 | /* 106535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::XSETBV), |
| 37853 | /* 106538 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37854 | /* 106542 */ GIR_RootConstrainSelectedInstOperands, |
| 37855 | /* 106543 */ // GIR_Coverage, 17092, |
| 37856 | /* 106543 */ GIR_EraseRootFromParent_Done, |
| 37857 | /* 106544 */ // Label 2296: @106544 |
| 37858 | /* 106544 */ GIM_Try, /*On fail goto*//*Label 2297*/ GIMT_Encode4(106593), // Rule ID 17281 // |
| 37859 | /* 106549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMWAITX), |
| 37860 | /* 106552 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_mwaitx), |
| 37861 | /* 106557 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 37862 | /* 106560 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 37863 | /* 106563 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 37864 | /* 106566 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37865 | /* 106570 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37866 | /* 106574 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 37867 | /* 106578 */ // (intrinsic_void 15820:{ *:[iPTR] }, GR32:{ *:[i32] }:$ecx, GR32:{ *:[i32] }:$eax, GR32:{ *:[i32] }:$ebx) => (MWAITX GR32:{ *:[i32] }:$ecx, GR32:{ *:[i32] }:$eax, GR32:{ *:[i32] }:$ebx) |
| 37868 | /* 106578 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MWAITX), |
| 37869 | /* 106581 */ GIR_RootToRootCopy, /*OpIdx*/1, // ecx |
| 37870 | /* 106583 */ GIR_RootToRootCopy, /*OpIdx*/2, // eax |
| 37871 | /* 106585 */ GIR_RootToRootCopy, /*OpIdx*/3, // ebx |
| 37872 | /* 106587 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37873 | /* 106591 */ GIR_RootConstrainSelectedInstOperands, |
| 37874 | /* 106592 */ // GIR_Coverage, 17281, |
| 37875 | /* 106592 */ GIR_EraseRootFromParent_Done, |
| 37876 | /* 106593 */ // Label 2297: @106593 |
| 37877 | /* 106593 */ GIM_Try, /*On fail goto*//*Label 2298*/ GIMT_Encode4(106655), // Rule ID 2903 // |
| 37878 | /* 106598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_In64BitMode), |
| 37879 | /* 106601 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_maskmov_dqu), |
| 37880 | /* 106606 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 37881 | /* 106609 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 37882 | /* 106612 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37883 | /* 106616 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37884 | /* 106620 */ // MIs[0] Operand 3 |
| 37885 | /* 106620 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/3, /*SizeInBits*/64, |
| 37886 | /* 106624 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR64_with_sub_32bit_in_GR32_DIBP_and_GR32_SIDIRegClassID), |
| 37887 | /* 106628 */ // (intrinsic_void 15918:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask, RDI:{ *:[i64] }) => (VMASKMOVDQU64 VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 37888 | /* 106628 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37889 | /* 106632 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::RDI), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37890 | /* 106638 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // RDI |
| 37891 | /* 106642 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVDQU64), |
| 37892 | /* 106645 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37893 | /* 106647 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 37894 | /* 106649 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37895 | /* 106653 */ GIR_RootConstrainSelectedInstOperands, |
| 37896 | /* 106654 */ // GIR_Coverage, 2903, |
| 37897 | /* 106654 */ GIR_EraseRootFromParent_Done, |
| 37898 | /* 106655 */ // Label 2298: @106655 |
| 37899 | /* 106655 */ GIM_Try, /*On fail goto*//*Label 2299*/ GIMT_Encode4(106717), // Rule ID 2904 // |
| 37900 | /* 106660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX), |
| 37901 | /* 106663 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_maskmov_dqu), |
| 37902 | /* 106668 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 37903 | /* 106671 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 37904 | /* 106674 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37905 | /* 106678 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37906 | /* 106682 */ // MIs[0] Operand 3 |
| 37907 | /* 106682 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/3, /*SizeInBits*/32, |
| 37908 | /* 106686 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_DIBP_and_GR32_SIDIRegClassID), |
| 37909 | /* 106690 */ // (intrinsic_void 15918:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask, EDI:{ *:[i32] }) => (VMASKMOVDQU VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 37910 | /* 106690 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37911 | /* 106694 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDI), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37912 | /* 106700 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // EDI |
| 37913 | /* 106704 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMASKMOVDQU), |
| 37914 | /* 106707 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37915 | /* 106709 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 37916 | /* 106711 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37917 | /* 106715 */ GIR_RootConstrainSelectedInstOperands, |
| 37918 | /* 106716 */ // GIR_Coverage, 2904, |
| 37919 | /* 106716 */ GIR_EraseRootFromParent_Done, |
| 37920 | /* 106717 */ // Label 2299: @106717 |
| 37921 | /* 106717 */ GIM_Try, /*On fail goto*//*Label 2300*/ GIMT_Encode4(106779), // Rule ID 2905 // |
| 37922 | /* 106722 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode_UseSSE2), |
| 37923 | /* 106725 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_maskmov_dqu), |
| 37924 | /* 106730 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 37925 | /* 106733 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 37926 | /* 106736 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37927 | /* 106740 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37928 | /* 106744 */ // MIs[0] Operand 3 |
| 37929 | /* 106744 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/3, /*SizeInBits*/64, |
| 37930 | /* 106748 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR64_with_sub_32bit_in_GR32_DIBP_and_GR32_SIDIRegClassID), |
| 37931 | /* 106752 */ // (intrinsic_void 15918:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask, RDI:{ *:[i64] }) => (MASKMOVDQU64 VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 37932 | /* 106752 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37933 | /* 106756 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::RDI), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37934 | /* 106762 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // RDI |
| 37935 | /* 106766 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MASKMOVDQU64), |
| 37936 | /* 106769 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37937 | /* 106771 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 37938 | /* 106773 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37939 | /* 106777 */ GIR_RootConstrainSelectedInstOperands, |
| 37940 | /* 106778 */ // GIR_Coverage, 2905, |
| 37941 | /* 106778 */ GIR_EraseRootFromParent_Done, |
| 37942 | /* 106779 */ // Label 2300: @106779 |
| 37943 | /* 106779 */ GIM_Try, /*On fail goto*//*Label 2301*/ GIMT_Encode4(106841), // Rule ID 2906 // |
| 37944 | /* 106784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 37945 | /* 106787 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_sse2_maskmov_dqu), |
| 37946 | /* 106792 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 37947 | /* 106795 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 37948 | /* 106798 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37949 | /* 106802 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37950 | /* 106806 */ // MIs[0] Operand 3 |
| 37951 | /* 106806 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/3, /*SizeInBits*/32, |
| 37952 | /* 106810 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR32_DIBP_and_GR32_SIDIRegClassID), |
| 37953 | /* 106814 */ // (intrinsic_void 15918:{ *:[iPTR] }, VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask, EDI:{ *:[i32] }) => (MASKMOVDQU VR128:{ *:[v16i8] }:$src, VR128:{ *:[v16i8] }:$mask) |
| 37954 | /* 106814 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37955 | /* 106818 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::EDI), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37956 | /* 106824 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // EDI |
| 37957 | /* 106828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MASKMOVDQU), |
| 37958 | /* 106831 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 37959 | /* 106833 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 37960 | /* 106835 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37961 | /* 106839 */ GIR_RootConstrainSelectedInstOperands, |
| 37962 | /* 106840 */ // GIR_Coverage, 2906, |
| 37963 | /* 106840 */ GIR_EraseRootFromParent_Done, |
| 37964 | /* 106841 */ // Label 2301: @106841 |
| 37965 | /* 106841 */ GIM_Reject, |
| 37966 | /* 106842 */ // Label 2242: @106842 |
| 37967 | /* 106842 */ GIM_Try, /*On fail goto*//*Label 2302*/ GIMT_Encode4(106930), // Rule ID 16992 // |
| 37968 | /* 106847 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasKL), |
| 37969 | /* 106850 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/5, |
| 37970 | /* 106853 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::x86_loadiwkey), |
| 37971 | /* 106858 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 37972 | /* 106861 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 37973 | /* 106864 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 37974 | /* 106867 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_s32, |
| 37975 | /* 106870 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37976 | /* 106874 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37977 | /* 106878 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 37978 | /* 106882 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(X86::GR32_ADRegClassID), |
| 37979 | /* 106886 */ // (intrinsic_void 15739:{ *:[iPTR] }, XMM0:{ *:[v2i64] }, VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2, EAX:{ *:[i32] }) => (LOADIWKEY:{ *:[i32] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 37980 | /* 106886 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37981 | /* 106890 */ GIR_AddRegister, /*InsnID*/2, GIMT_Encode2(X86::EAX), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37982 | /* 106896 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/4, // EAX |
| 37983 | /* 106900 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 37984 | /* 106904 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::XMM0), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 37985 | /* 106910 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // XMM0 |
| 37986 | /* 106914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LOADIWKEY), |
| 37987 | /* 106917 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 37988 | /* 106919 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 37989 | /* 106921 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 37990 | /* 106924 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 37991 | /* 106928 */ GIR_RootConstrainSelectedInstOperands, |
| 37992 | /* 106929 */ // GIR_Coverage, 16992, |
| 37993 | /* 106929 */ GIR_EraseRootFromParent_Done, |
| 37994 | /* 106930 */ // Label 2302: @106930 |
| 37995 | /* 106930 */ GIM_Reject, |
| 37996 | /* 106931 */ // Label 20: @106931 |
| 37997 | /* 106931 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 2306*/ GIMT_Encode4(107359), |
| 37998 | /* 106942 */ /*GILLT_s16*//*Label 2303*/ GIMT_Encode4(106954), |
| 37999 | /* 106946 */ /*GILLT_s32*//*Label 2304*/ GIMT_Encode4(107012), |
| 38000 | /* 106950 */ /*GILLT_s64*//*Label 2305*/ GIMT_Encode4(107187), |
| 38001 | /* 106954 */ // Label 2303: @106954 |
| 38002 | /* 106954 */ GIM_Try, /*On fail goto*//*Label 2307*/ GIMT_Encode4(107011), // Rule ID 22672 // |
| 38003 | /* 106959 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 38004 | /* 106962 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38005 | /* 106966 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38006 | /* 106970 */ // (anyext:{ *:[i16] } GR8:{ *:[i8] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_16bit:{ *:[i32] }) |
| 38007 | /* 106970 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38008 | /* 106973 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 38009 | /* 106977 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38010 | /* 106982 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38011 | /* 106986 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38012 | /* 106988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38013 | /* 106991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38014 | /* 106993 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 38015 | /* 107000 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 38016 | /* 107005 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38017 | /* 107010 */ // GIR_Coverage, 22672, |
| 38018 | /* 107010 */ GIR_EraseRootFromParent_Done, |
| 38019 | /* 107011 */ // Label 2307: @107011 |
| 38020 | /* 107011 */ GIM_Reject, |
| 38021 | /* 107012 */ // Label 2304: @107012 |
| 38022 | /* 107012 */ GIM_Try, /*On fail goto*//*Label 2308*/ GIMT_Encode4(107058), // Rule ID 19435 // |
| 38023 | /* 107017 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 38024 | /* 107020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38025 | /* 107024 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 38026 | /* 107028 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 38027 | /* 107032 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 38028 | /* 107036 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 38029 | /* 107041 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38030 | /* 107043 */ // (anyext:{ *:[i32] } (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src)) => (COPY_TO_REGCLASS:{ *:[i32] } VK16:{ *:[v16i1] }:$src, GR32:{ *:[i32] }) |
| 38031 | /* 107043 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38032 | /* 107046 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38033 | /* 107048 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 38034 | /* 107052 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 38035 | /* 107057 */ // GIR_Coverage, 19435, |
| 38036 | /* 107057 */ GIR_EraseRootFromParent_Done, |
| 38037 | /* 107058 */ // Label 2308: @107058 |
| 38038 | /* 107058 */ GIM_Try, /*On fail goto*//*Label 2309*/ GIMT_Encode4(107104), // Rule ID 19438 // |
| 38039 | /* 107063 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 38040 | /* 107066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38041 | /* 107070 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 38042 | /* 107074 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 38043 | /* 107078 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 38044 | /* 107082 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 38045 | /* 107087 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38046 | /* 107089 */ // (anyext:{ *:[i32] } (bitconvert:{ *:[i8] } VK8:{ *:[v8i1] }:$src)) => (COPY_TO_REGCLASS:{ *:[i32] } VK8:{ *:[v8i1] }:$src, GR32:{ *:[i32] }) |
| 38047 | /* 107089 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38048 | /* 107092 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38049 | /* 107094 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 38050 | /* 107098 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 38051 | /* 107103 */ // GIR_Coverage, 19438, |
| 38052 | /* 107103 */ GIR_EraseRootFromParent_Done, |
| 38053 | /* 107104 */ // Label 2309: @107104 |
| 38054 | /* 107104 */ GIM_Try, /*On fail goto*//*Label 2310*/ GIMT_Encode4(107127), // Rule ID 22673 // |
| 38055 | /* 107109 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 38056 | /* 107112 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38057 | /* 107116 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38058 | /* 107120 */ // (anyext:{ *:[i32] } GR8:{ *:[i8] }:$src) => (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 38059 | /* 107120 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 38060 | /* 107125 */ GIR_RootConstrainSelectedInstOperands, |
| 38061 | /* 107126 */ // GIR_Coverage, 22673, |
| 38062 | /* 107126 */ GIR_Done, |
| 38063 | /* 107127 */ // Label 2310: @107127 |
| 38064 | /* 107127 */ GIM_Try, /*On fail goto*//*Label 2311*/ GIMT_Encode4(107186), // Rule ID 22674 // |
| 38065 | /* 107132 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 38066 | /* 107135 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 38067 | /* 107139 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38068 | /* 107143 */ // (anyext:{ *:[i32] } GR16:{ *:[i16] }:$src) => (INSERT_SUBREG:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR16:{ *:[i16] }:$src, sub_16bit:{ *:[i32] }) |
| 38069 | /* 107143 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38070 | /* 107146 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 38071 | /* 107150 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38072 | /* 107155 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38073 | /* 107157 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 38074 | /* 107160 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38075 | /* 107162 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38076 | /* 107165 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 38077 | /* 107167 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 38078 | /* 107170 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 38079 | /* 107175 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 38080 | /* 107180 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR16RegClassID), |
| 38081 | /* 107185 */ // GIR_Coverage, 22674, |
| 38082 | /* 107185 */ GIR_EraseRootFromParent_Done, |
| 38083 | /* 107186 */ // Label 2311: @107186 |
| 38084 | /* 107186 */ GIM_Reject, |
| 38085 | /* 107187 */ // Label 2305: @107187 |
| 38086 | /* 107187 */ GIM_Try, /*On fail goto*//*Label 2312*/ GIMT_Encode4(107243), // Rule ID 22675 // |
| 38087 | /* 107192 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 38088 | /* 107195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38089 | /* 107199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38090 | /* 107203 */ // (anyext:{ *:[i64] } GR8:{ *:[i8] }:$src) => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_32bit:{ *:[i32] }) |
| 38091 | /* 107203 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38092 | /* 107206 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 38093 | /* 107210 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38094 | /* 107215 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38095 | /* 107219 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38096 | /* 107221 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 38097 | /* 107224 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38098 | /* 107226 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38099 | /* 107229 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 38100 | /* 107232 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 38101 | /* 107237 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38102 | /* 107242 */ // GIR_Coverage, 22675, |
| 38103 | /* 107242 */ GIR_EraseRootFromParent_Done, |
| 38104 | /* 107243 */ // Label 2312: @107243 |
| 38105 | /* 107243 */ GIM_Try, /*On fail goto*//*Label 2313*/ GIMT_Encode4(107299), // Rule ID 22676 // |
| 38106 | /* 107248 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 38107 | /* 107251 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38108 | /* 107255 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38109 | /* 107259 */ // (anyext:{ *:[i64] } GR16:{ *:[i16] }:$src) => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rr16:{ *:[i32] } GR16:{ *:[i16] }:$src), sub_32bit:{ *:[i32] }) |
| 38110 | /* 107259 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38111 | /* 107262 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr16), |
| 38112 | /* 107266 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38113 | /* 107271 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38114 | /* 107275 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38115 | /* 107277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 38116 | /* 107280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38117 | /* 107282 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38118 | /* 107285 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 38119 | /* 107288 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 38120 | /* 107293 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38121 | /* 107298 */ // GIR_Coverage, 22676, |
| 38122 | /* 107298 */ GIR_EraseRootFromParent_Done, |
| 38123 | /* 107299 */ // Label 2313: @107299 |
| 38124 | /* 107299 */ GIM_Try, /*On fail goto*//*Label 2314*/ GIMT_Encode4(107358), // Rule ID 22677 // |
| 38125 | /* 107304 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 38126 | /* 107307 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38127 | /* 107311 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38128 | /* 107315 */ // (anyext:{ *:[i64] } GR32:{ *:[i32] }:$src) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GR32:{ *:[i32] }:$src, sub_32bit:{ *:[i32] }) |
| 38129 | /* 107315 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 38130 | /* 107318 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 38131 | /* 107322 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38132 | /* 107327 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38133 | /* 107329 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 38134 | /* 107332 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38135 | /* 107334 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38136 | /* 107337 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 38137 | /* 107339 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 38138 | /* 107342 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 38139 | /* 107347 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR64RegClassID), |
| 38140 | /* 107352 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(X86::GR32RegClassID), |
| 38141 | /* 107357 */ // GIR_Coverage, 22677, |
| 38142 | /* 107357 */ GIR_EraseRootFromParent_Done, |
| 38143 | /* 107358 */ // Label 2314: @107358 |
| 38144 | /* 107358 */ GIM_Reject, |
| 38145 | /* 107359 */ // Label 2306: @107359 |
| 38146 | /* 107359 */ GIM_Reject, |
| 38147 | /* 107360 */ // Label 21: @107360 |
| 38148 | /* 107360 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(22), /*)*//*default:*//*Label 2323*/ GIMT_Encode4(108448), |
| 38149 | /* 107371 */ /*GILLT_s8*//*Label 2315*/ GIMT_Encode4(107455), |
| 38150 | /* 107375 */ /*GILLT_s16*//*Label 2316*/ GIMT_Encode4(107739), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 38151 | /* 107407 */ /*GILLT_v4s32*//*Label 2317*/ GIMT_Encode4(107778), GIMT_Encode4(0), GIMT_Encode4(0), |
| 38152 | /* 107419 */ /*GILLT_v8s16*//*Label 2318*/ GIMT_Encode4(107918), |
| 38153 | /* 107423 */ /*GILLT_v8s32*//*Label 2319*/ GIMT_Encode4(108081), GIMT_Encode4(0), GIMT_Encode4(0), |
| 38154 | /* 107435 */ /*GILLT_v16s8*//*Label 2320*/ GIMT_Encode4(108108), |
| 38155 | /* 107439 */ /*GILLT_v16s16*//*Label 2321*/ GIMT_Encode4(108394), GIMT_Encode4(0), GIMT_Encode4(0), |
| 38156 | /* 107451 */ /*GILLT_v32s8*//*Label 2322*/ GIMT_Encode4(108421), |
| 38157 | /* 107455 */ // Label 2315: @107455 |
| 38158 | /* 107455 */ GIM_Try, /*On fail goto*//*Label 2324*/ GIMT_Encode4(107530), // Rule ID 19430 // |
| 38159 | /* 107460 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 38160 | /* 107463 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38161 | /* 107467 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 38162 | /* 107471 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 38163 | /* 107475 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 38164 | /* 107479 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 38165 | /* 107484 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38166 | /* 107486 */ // (trunc:{ *:[i8] } (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src)) => (EXTRACT_SUBREG:{ *:[i8] } (COPY_TO_REGCLASS:{ *:[i32] } VK16:{ *:[v16i1] }:$src, GR32:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 38167 | /* 107486 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38168 | /* 107489 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38169 | /* 107493 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38170 | /* 107498 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 38171 | /* 107502 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR32RegClassID), |
| 38172 | /* 107507 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38173 | /* 107510 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38174 | /* 107512 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 38175 | /* 107519 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 38176 | /* 107524 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38177 | /* 107529 */ // GIR_Coverage, 19430, |
| 38178 | /* 107529 */ GIR_EraseRootFromParent_Done, |
| 38179 | /* 107530 */ // Label 2324: @107530 |
| 38180 | /* 107530 */ GIM_Try, /*On fail goto*//*Label 2325*/ GIMT_Encode4(107593), // Rule ID 22734 // |
| 38181 | /* 107535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode), |
| 38182 | /* 107538 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 38183 | /* 107541 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 38184 | /* 107545 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38185 | /* 107549 */ // (trunc:{ *:[i8] } GR32:{ *:[i32] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } (COPY_TO_REGCLASS:{ *:[i32] } GR32:{ *:[i32] }:$src, GR32_ABCD:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 38186 | /* 107549 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38187 | /* 107552 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38188 | /* 107556 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38189 | /* 107561 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38190 | /* 107565 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR32_ABCDRegClassID), |
| 38191 | /* 107570 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38192 | /* 107573 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38193 | /* 107575 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 38194 | /* 107582 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 38195 | /* 107587 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32_ABCDRegClassID), |
| 38196 | /* 107592 */ // GIR_Coverage, 22734, |
| 38197 | /* 107592 */ GIR_EraseRootFromParent_Done, |
| 38198 | /* 107593 */ // Label 2325: @107593 |
| 38199 | /* 107593 */ GIM_Try, /*On fail goto*//*Label 2326*/ GIMT_Encode4(107656), // Rule ID 22735 // |
| 38200 | /* 107598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode), |
| 38201 | /* 107601 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 38202 | /* 107604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 38203 | /* 107608 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38204 | /* 107612 */ // (trunc:{ *:[i8] } GR16:{ *:[i16] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } (COPY_TO_REGCLASS:{ *:[i16] } GR16:{ *:[i16] }:$src, GR16_ABCD:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 38205 | /* 107612 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 38206 | /* 107615 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38207 | /* 107619 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38208 | /* 107624 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38209 | /* 107628 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16_ABCDRegClassID), |
| 38210 | /* 107633 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38211 | /* 107636 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38212 | /* 107638 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 38213 | /* 107645 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 38214 | /* 107650 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR16_ABCDRegClassID), |
| 38215 | /* 107655 */ // GIR_Coverage, 22735, |
| 38216 | /* 107655 */ GIR_EraseRootFromParent_Done, |
| 38217 | /* 107656 */ // Label 2326: @107656 |
| 38218 | /* 107656 */ GIM_Try, /*On fail goto*//*Label 2327*/ GIMT_Encode4(107697), // Rule ID 22739 // |
| 38219 | /* 107661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 38220 | /* 107664 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 38221 | /* 107667 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38222 | /* 107671 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38223 | /* 107675 */ // (trunc:{ *:[i8] } GR32:{ *:[i32] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } GR32:{ *:[i32] }:$src, sub_8bit:{ *:[i32] }) |
| 38224 | /* 107675 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38225 | /* 107678 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38226 | /* 107680 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 38227 | /* 107686 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 38228 | /* 107691 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38229 | /* 107696 */ // GIR_Coverage, 22739, |
| 38230 | /* 107696 */ GIR_EraseRootFromParent_Done, |
| 38231 | /* 107697 */ // Label 2327: @107697 |
| 38232 | /* 107697 */ GIM_Try, /*On fail goto*//*Label 2328*/ GIMT_Encode4(107738), // Rule ID 22740 // |
| 38233 | /* 107702 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 38234 | /* 107705 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 38235 | /* 107708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38236 | /* 107712 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38237 | /* 107716 */ // (trunc:{ *:[i8] } GR16:{ *:[i16] }:$src) => (EXTRACT_SUBREG:{ *:[i8] } GR16:{ *:[i16] }:$src, sub_8bit:{ *:[i32] }) |
| 38238 | /* 107716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38239 | /* 107719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38240 | /* 107721 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 38241 | /* 107727 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 38242 | /* 107732 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 38243 | /* 107737 */ // GIR_Coverage, 22740, |
| 38244 | /* 107737 */ GIR_EraseRootFromParent_Done, |
| 38245 | /* 107738 */ // Label 2328: @107738 |
| 38246 | /* 107738 */ GIM_Reject, |
| 38247 | /* 107739 */ // Label 2316: @107739 |
| 38248 | /* 107739 */ GIM_Try, /*On fail goto*//*Label 2329*/ GIMT_Encode4(107777), // Rule ID 22733 // |
| 38249 | /* 107744 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 38250 | /* 107747 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38251 | /* 107751 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38252 | /* 107755 */ // (trunc:{ *:[i16] } GR32:{ *:[i32] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } GR32:{ *:[i32] }:$src, sub_16bit:{ *:[i32] }) |
| 38253 | /* 107755 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38254 | /* 107758 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38255 | /* 107760 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(4), // src |
| 38256 | /* 107766 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 38257 | /* 107771 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38258 | /* 107776 */ // GIR_Coverage, 22733, |
| 38259 | /* 107776 */ GIR_EraseRootFromParent_Done, |
| 38260 | /* 107777 */ // Label 2329: @107777 |
| 38261 | /* 107777 */ GIM_Reject, |
| 38262 | /* 107778 */ // Label 2317: @107778 |
| 38263 | /* 107778 */ GIM_Try, /*On fail goto*//*Label 2330*/ GIMT_Encode4(107917), |
| 38264 | /* 107783 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 38265 | /* 107786 */ GIM_Try, /*On fail goto*//*Label 2331*/ GIMT_Encode4(107809), // Rule ID 12266 // |
| 38266 | /* 107791 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 38267 | /* 107794 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 38268 | /* 107798 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38269 | /* 107802 */ // (trunc:{ *:[v4i32] } VR256X:{ *:[v4i64] }:$src) => (VPMOVQDZ256rr:{ *:[v4i32] } VR256X:{ *:[v4i64] }:$src) |
| 38270 | /* 107802 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVQDZ256rr), |
| 38271 | /* 107807 */ GIR_RootConstrainSelectedInstOperands, |
| 38272 | /* 107808 */ // GIR_Coverage, 12266, |
| 38273 | /* 107808 */ GIR_Done, |
| 38274 | /* 107809 */ // Label 2331: @107809 |
| 38275 | /* 107809 */ GIM_Try, /*On fail goto*//*Label 2332*/ GIMT_Encode4(107916), // Rule ID 21568 // |
| 38276 | /* 107814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 38277 | /* 107817 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 38278 | /* 107821 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38279 | /* 107825 */ // (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] }) |
| 38280 | /* 107825 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 38281 | /* 107828 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 38282 | /* 107832 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38283 | /* 107837 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 38284 | /* 107839 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 38285 | /* 107842 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 38286 | /* 107846 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38287 | /* 107851 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 38288 | /* 107854 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38289 | /* 107858 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 38290 | /* 107861 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 38291 | /* 107866 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 38292 | /* 107871 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 38293 | /* 107876 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 38294 | /* 107879 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVQDZrr), |
| 38295 | /* 107883 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38296 | /* 107888 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 38297 | /* 107891 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38298 | /* 107893 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38299 | /* 107896 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38300 | /* 107898 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 38301 | /* 107905 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 38302 | /* 107910 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256XRegClassID), |
| 38303 | /* 107915 */ // GIR_Coverage, 21568, |
| 38304 | /* 107915 */ GIR_EraseRootFromParent_Done, |
| 38305 | /* 107916 */ // Label 2332: @107916 |
| 38306 | /* 107916 */ GIM_Reject, |
| 38307 | /* 107917 */ // Label 2330: @107917 |
| 38308 | /* 107917 */ GIM_Reject, |
| 38309 | /* 107918 */ // Label 2318: @107918 |
| 38310 | /* 107918 */ GIM_Try, /*On fail goto*//*Label 2333*/ GIMT_Encode4(107944), // Rule ID 12242 // |
| 38311 | /* 107923 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 38312 | /* 107926 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 38313 | /* 107929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 38314 | /* 107933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38315 | /* 107937 */ // (trunc:{ *:[v8i16] } VR512:{ *:[v8i64] }:$src) => (VPMOVQWZrr:{ *:[v8i16] } VR512:{ *:[v8i64] }:$src) |
| 38316 | /* 107937 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVQWZrr), |
| 38317 | /* 107942 */ GIR_RootConstrainSelectedInstOperands, |
| 38318 | /* 107943 */ // GIR_Coverage, 12242, |
| 38319 | /* 107943 */ GIR_Done, |
| 38320 | /* 107944 */ // Label 2333: @107944 |
| 38321 | /* 107944 */ GIM_Try, /*On fail goto*//*Label 2334*/ GIMT_Encode4(107970), // Rule ID 12320 // |
| 38322 | /* 107949 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 38323 | /* 107952 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 38324 | /* 107955 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 38325 | /* 107959 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38326 | /* 107963 */ // (trunc:{ *:[v8i16] } VR256X:{ *:[v8i32] }:$src) => (VPMOVDWZ256rr:{ *:[v8i16] } VR256X:{ *:[v8i32] }:$src) |
| 38327 | /* 107963 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZ256rr), |
| 38328 | /* 107968 */ GIR_RootConstrainSelectedInstOperands, |
| 38329 | /* 107969 */ // GIR_Coverage, 12320, |
| 38330 | /* 107969 */ GIR_Done, |
| 38331 | /* 107970 */ // Label 2334: @107970 |
| 38332 | /* 107970 */ GIM_Try, /*On fail goto*//*Label 2335*/ GIMT_Encode4(108080), // Rule ID 21567 // |
| 38333 | /* 107975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 38334 | /* 107978 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 38335 | /* 107981 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 38336 | /* 107985 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38337 | /* 107989 */ // (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] }) |
| 38338 | /* 107989 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 38339 | /* 107992 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 38340 | /* 107996 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38341 | /* 108001 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 38342 | /* 108003 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 38343 | /* 108006 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 38344 | /* 108010 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38345 | /* 108015 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 38346 | /* 108018 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38347 | /* 108022 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 38348 | /* 108025 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 38349 | /* 108030 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 38350 | /* 108035 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 38351 | /* 108040 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 38352 | /* 108043 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZrr), |
| 38353 | /* 108047 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38354 | /* 108052 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 38355 | /* 108055 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38356 | /* 108057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38357 | /* 108060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38358 | /* 108062 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 38359 | /* 108069 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 38360 | /* 108074 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256XRegClassID), |
| 38361 | /* 108079 */ // GIR_Coverage, 21567, |
| 38362 | /* 108079 */ GIR_EraseRootFromParent_Done, |
| 38363 | /* 108080 */ // Label 2335: @108080 |
| 38364 | /* 108080 */ GIM_Reject, |
| 38365 | /* 108081 */ // Label 2319: @108081 |
| 38366 | /* 108081 */ GIM_Try, /*On fail goto*//*Label 2336*/ GIMT_Encode4(108107), // Rule ID 12269 // |
| 38367 | /* 108086 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 38368 | /* 108089 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 38369 | /* 108092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38370 | /* 108096 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38371 | /* 108100 */ // (trunc:{ *:[v8i32] } VR512:{ *:[v8i64] }:$src) => (VPMOVQDZrr:{ *:[v8i32] } VR512:{ *:[v8i64] }:$src) |
| 38372 | /* 108100 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVQDZrr), |
| 38373 | /* 108105 */ GIR_RootConstrainSelectedInstOperands, |
| 38374 | /* 108106 */ // GIR_Coverage, 12269, |
| 38375 | /* 108106 */ GIR_Done, |
| 38376 | /* 108107 */ // Label 2336: @108107 |
| 38377 | /* 108107 */ GIM_Reject, |
| 38378 | /* 108108 */ // Label 2320: @108108 |
| 38379 | /* 108108 */ GIM_Try, /*On fail goto*//*Label 2337*/ GIMT_Encode4(108184), // Rule ID 21661 // |
| 38380 | /* 108113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoBWI), |
| 38381 | /* 108116 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 38382 | /* 108119 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 38383 | /* 108123 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 38384 | /* 108127 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 38385 | /* 108131 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 38386 | /* 108134 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 38387 | /* 108138 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 38388 | /* 108142 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 38389 | /* 108144 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 38390 | /* 108151 */ // (trunc:{ *:[v16i8] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVDBZrr:{ *:[v16i8] } (VPMOVZXWDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)) |
| 38391 | /* 108151 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 38392 | /* 108154 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZrm), |
| 38393 | /* 108158 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38394 | /* 108163 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src |
| 38395 | /* 108167 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 38396 | /* 108172 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38397 | /* 108174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDBZrr), |
| 38398 | /* 108177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38399 | /* 108179 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38400 | /* 108182 */ GIR_RootConstrainSelectedInstOperands, |
| 38401 | /* 108183 */ // GIR_Coverage, 21661, |
| 38402 | /* 108183 */ GIR_EraseRootFromParent_Done, |
| 38403 | /* 108184 */ // Label 2337: @108184 |
| 38404 | /* 108184 */ GIM_Try, /*On fail goto*//*Label 2338*/ GIMT_Encode4(108210), // Rule ID 12296 // |
| 38405 | /* 108189 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 38406 | /* 108192 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 38407 | /* 108195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 38408 | /* 108199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38409 | /* 108203 */ // (trunc:{ *:[v16i8] } VR512:{ *:[v16i32] }:$src) => (VPMOVDBZrr:{ *:[v16i8] } VR512:{ *:[v16i32] }:$src) |
| 38410 | /* 108203 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVDBZrr), |
| 38411 | /* 108208 */ GIR_RootConstrainSelectedInstOperands, |
| 38412 | /* 108209 */ // GIR_Coverage, 12296, |
| 38413 | /* 108209 */ GIR_Done, |
| 38414 | /* 108210 */ // Label 2338: @108210 |
| 38415 | /* 108210 */ GIM_Try, /*On fail goto*//*Label 2339*/ GIMT_Encode4(108236), // Rule ID 12347 // |
| 38416 | /* 108215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 38417 | /* 108218 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 38418 | /* 108221 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 38419 | /* 108225 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38420 | /* 108229 */ // (trunc:{ *:[v16i8] } VR256X:{ *:[v16i16] }:$src) => (VPMOVWBZ256rr:{ *:[v16i8] } VR256X:{ *:[v16i16] }:$src) |
| 38421 | /* 108229 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVWBZ256rr), |
| 38422 | /* 108234 */ GIR_RootConstrainSelectedInstOperands, |
| 38423 | /* 108235 */ // GIR_Coverage, 12347, |
| 38424 | /* 108235 */ GIR_Done, |
| 38425 | /* 108236 */ // Label 2339: @108236 |
| 38426 | /* 108236 */ GIM_Try, /*On fail goto*//*Label 2340*/ GIMT_Encode4(108346), // Rule ID 21569 // |
| 38427 | /* 108241 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 38428 | /* 108244 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 38429 | /* 108247 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 38430 | /* 108251 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38431 | /* 108255 */ // (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] }) |
| 38432 | /* 108255 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 38433 | /* 108258 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 38434 | /* 108262 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38435 | /* 108267 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 38436 | /* 108269 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 38437 | /* 108272 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 38438 | /* 108276 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38439 | /* 108281 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 38440 | /* 108284 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38441 | /* 108288 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 38442 | /* 108291 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 38443 | /* 108296 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 38444 | /* 108301 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 38445 | /* 108306 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s8, |
| 38446 | /* 108309 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVWBZrr), |
| 38447 | /* 108313 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38448 | /* 108318 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 38449 | /* 108321 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38450 | /* 108323 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38451 | /* 108326 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38452 | /* 108328 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 38453 | /* 108335 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 38454 | /* 108340 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256XRegClassID), |
| 38455 | /* 108345 */ // GIR_Coverage, 21569, |
| 38456 | /* 108345 */ GIR_EraseRootFromParent_Done, |
| 38457 | /* 108346 */ // Label 2340: @108346 |
| 38458 | /* 108346 */ GIM_Try, /*On fail goto*//*Label 2341*/ GIMT_Encode4(108393), // Rule ID 21660 // |
| 38459 | /* 108351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoBWI), |
| 38460 | /* 108354 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 38461 | /* 108357 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 38462 | /* 108361 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38463 | /* 108365 */ // (trunc:{ *:[v16i8] } VR256X:{ *:[v16i16] }:$src) => (VPMOVDBZrr:{ *:[v16i8] } (VPMOVZXWDZrr:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src)) |
| 38464 | /* 108365 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 38465 | /* 108368 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZrr), |
| 38466 | /* 108372 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38467 | /* 108377 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38468 | /* 108381 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38469 | /* 108383 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDBZrr), |
| 38470 | /* 108386 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38471 | /* 108388 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38472 | /* 108391 */ GIR_RootConstrainSelectedInstOperands, |
| 38473 | /* 108392 */ // GIR_Coverage, 21660, |
| 38474 | /* 108392 */ GIR_EraseRootFromParent_Done, |
| 38475 | /* 108393 */ // Label 2341: @108393 |
| 38476 | /* 108393 */ GIM_Reject, |
| 38477 | /* 108394 */ // Label 2321: @108394 |
| 38478 | /* 108394 */ GIM_Try, /*On fail goto*//*Label 2342*/ GIMT_Encode4(108420), // Rule ID 12323 // |
| 38479 | /* 108399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 38480 | /* 108402 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 38481 | /* 108405 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38482 | /* 108409 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38483 | /* 108413 */ // (trunc:{ *:[v16i16] } VR512:{ *:[v16i32] }:$src) => (VPMOVDWZrr:{ *:[v16i16] } VR512:{ *:[v16i32] }:$src) |
| 38484 | /* 108413 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZrr), |
| 38485 | /* 108418 */ GIR_RootConstrainSelectedInstOperands, |
| 38486 | /* 108419 */ // GIR_Coverage, 12323, |
| 38487 | /* 108419 */ GIR_Done, |
| 38488 | /* 108420 */ // Label 2342: @108420 |
| 38489 | /* 108420 */ GIM_Reject, |
| 38490 | /* 108421 */ // Label 2322: @108421 |
| 38491 | /* 108421 */ GIM_Try, /*On fail goto*//*Label 2343*/ GIMT_Encode4(108447), // Rule ID 12350 // |
| 38492 | /* 108426 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 38493 | /* 108429 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 38494 | /* 108432 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 38495 | /* 108436 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 38496 | /* 108440 */ // (trunc:{ *:[v32i8] } VR512:{ *:[v32i16] }:$src) => (VPMOVWBZrr:{ *:[v32i8] } VR512:{ *:[v32i16] }:$src) |
| 38497 | /* 108440 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVWBZrr), |
| 38498 | /* 108445 */ GIR_RootConstrainSelectedInstOperands, |
| 38499 | /* 108446 */ // GIR_Coverage, 12350, |
| 38500 | /* 108446 */ GIR_Done, |
| 38501 | /* 108447 */ // Label 2343: @108447 |
| 38502 | /* 108447 */ GIM_Reject, |
| 38503 | /* 108448 */ // Label 2323: @108448 |
| 38504 | /* 108448 */ GIM_Reject, |
| 38505 | /* 108449 */ // Label 22: @108449 |
| 38506 | /* 108449 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 2348*/ GIMT_Encode4(109051), |
| 38507 | /* 108460 */ /*GILLT_s8*//*Label 2344*/ GIMT_Encode4(108476), |
| 38508 | /* 108464 */ /*GILLT_s16*//*Label 2345*/ GIMT_Encode4(108558), |
| 38509 | /* 108468 */ /*GILLT_s32*//*Label 2346*/ GIMT_Encode4(108758), |
| 38510 | /* 108472 */ /*GILLT_s64*//*Label 2347*/ GIMT_Encode4(108900), |
| 38511 | /* 108476 */ // Label 2344: @108476 |
| 38512 | /* 108476 */ GIM_Try, /*On fail goto*//*Label 2349*/ GIMT_Encode4(108557), |
| 38513 | /* 108481 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38514 | /* 108485 */ GIM_Try, /*On fail goto*//*Label 2350*/ GIMT_Encode4(108541), // Rule ID 22445 // |
| 38515 | /* 108490 */ // MIs[0] Operand 1 |
| 38516 | /* 108490 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(0), |
| 38517 | /* 108501 */ // 0:{ *:[i8] } => (EXTRACT_SUBREG:{ *:[i8] } (MOV32r0:{ *:[i32] }:{ *:[i32] }), sub_8bit:{ *:[i32] }) |
| 38518 | /* 108501 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38519 | /* 108504 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r0), |
| 38520 | /* 108508 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38521 | /* 108513 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 38522 | /* 108516 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38523 | /* 108518 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38524 | /* 108521 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38525 | /* 108523 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_8bit), |
| 38526 | /* 108530 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 38527 | /* 108535 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38528 | /* 108540 */ // GIR_Coverage, 22445, |
| 38529 | /* 108540 */ GIR_EraseRootFromParent_Done, |
| 38530 | /* 108541 */ // Label 2350: @108541 |
| 38531 | /* 108541 */ GIM_Try, /*On fail goto*//*Label 2351*/ GIMT_Encode4(108556), // Rule ID 19 // |
| 38532 | /* 108546 */ // MIs[0] Operand 1 |
| 38533 | /* 108546 */ // No operand predicates |
| 38534 | /* 108546 */ // (imm:{ *:[i8] }):$src => (MOV8ri:{ *:[i8] } (imm:{ *:[i8] }):$src) |
| 38535 | /* 108546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV8ri), |
| 38536 | /* 108549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38537 | /* 108551 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 38538 | /* 108554 */ GIR_RootConstrainSelectedInstOperands, |
| 38539 | /* 108555 */ // GIR_Coverage, 19, |
| 38540 | /* 108555 */ GIR_EraseRootFromParent_Done, |
| 38541 | /* 108556 */ // Label 2351: @108556 |
| 38542 | /* 108556 */ GIM_Reject, |
| 38543 | /* 108557 */ // Label 2349: @108557 |
| 38544 | /* 108557 */ GIM_Reject, |
| 38545 | /* 108558 */ // Label 2345: @108558 |
| 38546 | /* 108558 */ GIM_Try, /*On fail goto*//*Label 2352*/ GIMT_Encode4(108757), |
| 38547 | /* 108563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38548 | /* 108567 */ GIM_Try, /*On fail goto*//*Label 2353*/ GIMT_Encode4(108623), // Rule ID 22446 // |
| 38549 | /* 108572 */ // MIs[0] Operand 1 |
| 38550 | /* 108572 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(0), |
| 38551 | /* 108583 */ // 0:{ *:[i16] } => (EXTRACT_SUBREG:{ *:[i16] } (MOV32r0:{ *:[i32] }:{ *:[i32] }), sub_16bit:{ *:[i32] }) |
| 38552 | /* 108583 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38553 | /* 108586 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r0), |
| 38554 | /* 108590 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38555 | /* 108595 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 38556 | /* 108598 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38557 | /* 108600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38558 | /* 108603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38559 | /* 108605 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 38560 | /* 108612 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 38561 | /* 108617 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38562 | /* 108622 */ // GIR_Coverage, 22446, |
| 38563 | /* 108622 */ GIR_EraseRootFromParent_Done, |
| 38564 | /* 108623 */ // Label 2353: @108623 |
| 38565 | /* 108623 */ GIM_Try, /*On fail goto*//*Label 2354*/ GIMT_Encode4(108682), // Rule ID 22448 // |
| 38566 | /* 108628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode_OptForSize), |
| 38567 | /* 108631 */ // MIs[0] Operand 1 |
| 38568 | /* 108631 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(1), |
| 38569 | /* 108642 */ // 1:{ *:[i16] } => (EXTRACT_SUBREG:{ *:[i16] } (MOV32r1:{ *:[i32] }:{ *:[i32] }), sub_16bit:{ *:[i32] }) |
| 38570 | /* 108642 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38571 | /* 108645 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r1), |
| 38572 | /* 108649 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38573 | /* 108654 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 38574 | /* 108657 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38575 | /* 108659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38576 | /* 108662 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38577 | /* 108664 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 38578 | /* 108671 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 38579 | /* 108676 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38580 | /* 108681 */ // GIR_Coverage, 22448, |
| 38581 | /* 108681 */ GIR_EraseRootFromParent_Done, |
| 38582 | /* 108682 */ // Label 2354: @108682 |
| 38583 | /* 108682 */ GIM_Try, /*On fail goto*//*Label 2355*/ GIMT_Encode4(108741), // Rule ID 22449 // |
| 38584 | /* 108687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode_OptForSize), |
| 38585 | /* 108690 */ // MIs[0] Operand 1 |
| 38586 | /* 108690 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(18446744073709551615u), |
| 38587 | /* 108701 */ // -1:{ *:[i16] } => (EXTRACT_SUBREG:{ *:[i16] } (MOV32r_1:{ *:[i32] }:{ *:[i32] }), sub_16bit:{ *:[i32] }) |
| 38588 | /* 108701 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38589 | /* 108704 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r_1), |
| 38590 | /* 108708 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38591 | /* 108713 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 38592 | /* 108716 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38593 | /* 108718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 38594 | /* 108721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38595 | /* 108723 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 38596 | /* 108730 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 38597 | /* 108735 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38598 | /* 108740 */ // GIR_Coverage, 22449, |
| 38599 | /* 108740 */ GIR_EraseRootFromParent_Done, |
| 38600 | /* 108741 */ // Label 2355: @108741 |
| 38601 | /* 108741 */ GIM_Try, /*On fail goto*//*Label 2356*/ GIMT_Encode4(108756), // Rule ID 20 // |
| 38602 | /* 108746 */ // MIs[0] Operand 1 |
| 38603 | /* 108746 */ // No operand predicates |
| 38604 | /* 108746 */ // (imm:{ *:[i16] }):$src => (MOV16ri:{ *:[i16] } (imm:{ *:[i16] }):$src) |
| 38605 | /* 108746 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV16ri), |
| 38606 | /* 108749 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38607 | /* 108751 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 38608 | /* 108754 */ GIR_RootConstrainSelectedInstOperands, |
| 38609 | /* 108755 */ // GIR_Coverage, 20, |
| 38610 | /* 108755 */ GIR_EraseRootFromParent_Done, |
| 38611 | /* 108756 */ // Label 2356: @108756 |
| 38612 | /* 108756 */ GIM_Reject, |
| 38613 | /* 108757 */ // Label 2352: @108757 |
| 38614 | /* 108757 */ GIM_Reject, |
| 38615 | /* 108758 */ // Label 2346: @108758 |
| 38616 | /* 108758 */ GIM_Try, /*On fail goto*//*Label 2357*/ GIMT_Encode4(108788), // Rule ID 17141 // |
| 38617 | /* 108763 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38618 | /* 108767 */ // MIs[0] Operand 1 |
| 38619 | /* 108767 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(0), |
| 38620 | /* 108778 */ // 0:{ *:[i32] } => (MOV32r0:{ *:[i32] }:{ *:[i32] }) |
| 38621 | /* 108778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32r0), |
| 38622 | /* 108781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38623 | /* 108783 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 38624 | /* 108786 */ GIR_RootConstrainSelectedInstOperands, |
| 38625 | /* 108787 */ // GIR_Coverage, 17141, |
| 38626 | /* 108787 */ GIR_EraseRootFromParent_Done, |
| 38627 | /* 108788 */ // Label 2357: @108788 |
| 38628 | /* 108788 */ GIM_Try, /*On fail goto*//*Label 2358*/ GIMT_Encode4(108821), // Rule ID 17142 // |
| 38629 | /* 108793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode_OptForSize), |
| 38630 | /* 108796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38631 | /* 108800 */ // MIs[0] Operand 1 |
| 38632 | /* 108800 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(1), |
| 38633 | /* 108811 */ // 1:{ *:[i32] } => (MOV32r1:{ *:[i32] }:{ *:[i32] }) |
| 38634 | /* 108811 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32r1), |
| 38635 | /* 108814 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38636 | /* 108816 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 38637 | /* 108819 */ GIR_RootConstrainSelectedInstOperands, |
| 38638 | /* 108820 */ // GIR_Coverage, 17142, |
| 38639 | /* 108820 */ GIR_EraseRootFromParent_Done, |
| 38640 | /* 108821 */ // Label 2358: @108821 |
| 38641 | /* 108821 */ GIM_Try, /*On fail goto*//*Label 2359*/ GIMT_Encode4(108854), // Rule ID 17143 // |
| 38642 | /* 108826 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_Not64BitMode_OptForSize), |
| 38643 | /* 108829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38644 | /* 108833 */ // MIs[0] Operand 1 |
| 38645 | /* 108833 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(18446744073709551615u), |
| 38646 | /* 108844 */ // -1:{ *:[i32] } => (MOV32r_1:{ *:[i32] }:{ *:[i32] }) |
| 38647 | /* 108844 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32r_1), |
| 38648 | /* 108847 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38649 | /* 108849 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 38650 | /* 108852 */ GIR_RootConstrainSelectedInstOperands, |
| 38651 | /* 108853 */ // GIR_Coverage, 17143, |
| 38652 | /* 108853 */ GIR_EraseRootFromParent_Done, |
| 38653 | /* 108854 */ // Label 2359: @108854 |
| 38654 | /* 108854 */ GIM_Try, /*On fail goto*//*Label 2360*/ GIMT_Encode4(108880), // Rule ID 17144 // |
| 38655 | /* 108859 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotWin64WithoutFP_OptForMinSize), |
| 38656 | /* 108862 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i32immSExt8), |
| 38657 | /* 108866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38658 | /* 108870 */ // MIs[0] Operand 1 |
| 38659 | /* 108870 */ // No operand predicates |
| 38660 | /* 108870 */ // (imm:{ *:[i32] })<<P:Predicate_i32immSExt8>>:$src => (MOV32ImmSExti8:{ *:[i32] } (imm:{ *:[i32] }):$src) |
| 38661 | /* 108870 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32ImmSExti8), |
| 38662 | /* 108873 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38663 | /* 108875 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 38664 | /* 108878 */ GIR_RootConstrainSelectedInstOperands, |
| 38665 | /* 108879 */ // GIR_Coverage, 17144, |
| 38666 | /* 108879 */ GIR_EraseRootFromParent_Done, |
| 38667 | /* 108880 */ // Label 2360: @108880 |
| 38668 | /* 108880 */ GIM_Try, /*On fail goto*//*Label 2361*/ GIMT_Encode4(108899), // Rule ID 21 // |
| 38669 | /* 108885 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 38670 | /* 108889 */ // MIs[0] Operand 1 |
| 38671 | /* 108889 */ // No operand predicates |
| 38672 | /* 108889 */ // (imm:{ *:[i32] }):$src => (MOV32ri:{ *:[i32] } (imm:{ *:[i32] }):$src) |
| 38673 | /* 108889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32ri), |
| 38674 | /* 108892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38675 | /* 108894 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 38676 | /* 108897 */ GIR_RootConstrainSelectedInstOperands, |
| 38677 | /* 108898 */ // GIR_Coverage, 21, |
| 38678 | /* 108898 */ GIR_EraseRootFromParent_Done, |
| 38679 | /* 108899 */ // Label 2361: @108899 |
| 38680 | /* 108899 */ GIM_Reject, |
| 38681 | /* 108900 */ // Label 2347: @108900 |
| 38682 | /* 108900 */ GIM_Try, /*On fail goto*//*Label 2362*/ GIMT_Encode4(108959), // Rule ID 22447 // |
| 38683 | /* 108905 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38684 | /* 108909 */ // MIs[0] Operand 1 |
| 38685 | /* 108909 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/1, GIMT_Encode8(0), |
| 38686 | /* 108920 */ // 0:{ *:[i64] } => (SUBREG_TO_REG:{ *:[i64] } (MOV32r0:{ *:[i32] }:{ *:[i32] }), sub_32bit:{ *:[i32] }) |
| 38687 | /* 108920 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38688 | /* 108923 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32r0), |
| 38689 | /* 108927 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38690 | /* 108932 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 38691 | /* 108935 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38692 | /* 108937 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 38693 | /* 108940 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38694 | /* 108942 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38695 | /* 108945 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 38696 | /* 108948 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 38697 | /* 108953 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 38698 | /* 108958 */ // GIR_Coverage, 22447, |
| 38699 | /* 108958 */ GIR_EraseRootFromParent_Done, |
| 38700 | /* 108959 */ // Label 2362: @108959 |
| 38701 | /* 108959 */ GIM_Try, /*On fail goto*//*Label 2363*/ GIMT_Encode4(108985), // Rule ID 17145 // |
| 38702 | /* 108964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotWin64WithoutFP_OptForMinSize), |
| 38703 | /* 108967 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt8), |
| 38704 | /* 108971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38705 | /* 108975 */ // MIs[0] Operand 1 |
| 38706 | /* 108975 */ // No operand predicates |
| 38707 | /* 108975 */ // (imm:{ *:[i64] })<<P:Predicate_i64immSExt8>>:$src => (MOV64ImmSExti8:{ *:[i64] } (imm:{ *:[i64] }):$src) |
| 38708 | /* 108975 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64ImmSExti8), |
| 38709 | /* 108978 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38710 | /* 108980 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 38711 | /* 108983 */ GIR_RootConstrainSelectedInstOperands, |
| 38712 | /* 108984 */ // GIR_Coverage, 17145, |
| 38713 | /* 108984 */ GIR_EraseRootFromParent_Done, |
| 38714 | /* 108985 */ // Label 2363: @108985 |
| 38715 | /* 108985 */ GIM_Try, /*On fail goto*//*Label 2364*/ GIMT_Encode4(109008), // Rule ID 17146 // |
| 38716 | /* 108990 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immZExt32), |
| 38717 | /* 108994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38718 | /* 108998 */ // MIs[0] Operand 1 |
| 38719 | /* 108998 */ // No operand predicates |
| 38720 | /* 108998 */ // (imm:{ *:[i64] })<<P:Predicate_i64immZExt32>>:$src => (MOV32ri64:{ *:[i64] } (imm:{ *:[i64] }):$src) |
| 38721 | /* 108998 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV32ri64), |
| 38722 | /* 109001 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38723 | /* 109003 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 38724 | /* 109006 */ GIR_RootConstrainSelectedInstOperands, |
| 38725 | /* 109007 */ // GIR_Coverage, 17146, |
| 38726 | /* 109007 */ GIR_EraseRootFromParent_Done, |
| 38727 | /* 109008 */ // Label 2364: @109008 |
| 38728 | /* 109008 */ GIM_Try, /*On fail goto*//*Label 2365*/ GIMT_Encode4(109031), // Rule ID 22 // |
| 38729 | /* 109013 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_i64immSExt32), |
| 38730 | /* 109017 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38731 | /* 109021 */ // MIs[0] Operand 1 |
| 38732 | /* 109021 */ // No operand predicates |
| 38733 | /* 109021 */ // (imm:{ *:[i64] })<<P:Predicate_i64immSExt32>>:$src => (MOV64ri32:{ *:[i64] } (imm:{ *:[i64] }):$src) |
| 38734 | /* 109021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64ri32), |
| 38735 | /* 109024 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38736 | /* 109026 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 38737 | /* 109029 */ GIR_RootConstrainSelectedInstOperands, |
| 38738 | /* 109030 */ // GIR_Coverage, 22, |
| 38739 | /* 109030 */ GIR_EraseRootFromParent_Done, |
| 38740 | /* 109031 */ // Label 2365: @109031 |
| 38741 | /* 109031 */ GIM_Try, /*On fail goto*//*Label 2366*/ GIMT_Encode4(109050), // Rule ID 23 // |
| 38742 | /* 109036 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 38743 | /* 109040 */ // MIs[0] Operand 1 |
| 38744 | /* 109040 */ // No operand predicates |
| 38745 | /* 109040 */ // (imm:{ *:[i64] }):$src => (MOV64ri:{ *:[i64] } (imm:{ *:[i64] }):$src) |
| 38746 | /* 109040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOV64ri), |
| 38747 | /* 109043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38748 | /* 109045 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // src |
| 38749 | /* 109048 */ GIR_RootConstrainSelectedInstOperands, |
| 38750 | /* 109049 */ // GIR_Coverage, 23, |
| 38751 | /* 109049 */ GIR_EraseRootFromParent_Done, |
| 38752 | /* 109050 */ // Label 2366: @109050 |
| 38753 | /* 109050 */ GIM_Reject, |
| 38754 | /* 109051 */ // Label 2348: @109051 |
| 38755 | /* 109051 */ GIM_Reject, |
| 38756 | /* 109052 */ // Label 23: @109052 |
| 38757 | /* 109052 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 2370*/ GIMT_Encode4(109504), |
| 38758 | /* 109063 */ /*GILLT_s32*//*Label 2367*/ GIMT_Encode4(109075), |
| 38759 | /* 109067 */ /*GILLT_s64*//*Label 2368*/ GIMT_Encode4(109220), |
| 38760 | /* 109071 */ /*GILLT_s80*//*Label 2369*/ GIMT_Encode4(109365), |
| 38761 | /* 109075 */ // Label 2367: @109075 |
| 38762 | /* 109075 */ GIM_Try, /*On fail goto*//*Label 2371*/ GIMT_Encode4(109101), // Rule ID 1116 // |
| 38763 | /* 109080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 38764 | /* 109083 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm0), |
| 38765 | /* 109087 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 38766 | /* 109091 */ // MIs[0] Operand 1 |
| 38767 | /* 109091 */ // No operand predicates |
| 38768 | /* 109091 */ // (fpimm:{ *:[f32] })<<P:Predicate_fpimm0>> => (LD_Fp032:{ *:[f32] }:{ *:[i16] }) |
| 38769 | /* 109091 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp032), |
| 38770 | /* 109094 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38771 | /* 109096 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38772 | /* 109099 */ GIR_RootConstrainSelectedInstOperands, |
| 38773 | /* 109100 */ // GIR_Coverage, 1116, |
| 38774 | /* 109100 */ GIR_EraseRootFromParent_Done, |
| 38775 | /* 109101 */ // Label 2371: @109101 |
| 38776 | /* 109101 */ GIM_Try, /*On fail goto*//*Label 2372*/ GIMT_Encode4(109127), // Rule ID 1117 // |
| 38777 | /* 109106 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 38778 | /* 109109 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm1), |
| 38779 | /* 109113 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 38780 | /* 109117 */ // MIs[0] Operand 1 |
| 38781 | /* 109117 */ // No operand predicates |
| 38782 | /* 109117 */ // (fpimm:{ *:[f32] })<<P:Predicate_fpimm1>> => (LD_Fp132:{ *:[f32] }:{ *:[i16] }) |
| 38783 | /* 109117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp132), |
| 38784 | /* 109120 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38785 | /* 109122 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38786 | /* 109125 */ GIR_RootConstrainSelectedInstOperands, |
| 38787 | /* 109126 */ // GIR_Coverage, 1117, |
| 38788 | /* 109126 */ GIR_EraseRootFromParent_Done, |
| 38789 | /* 109127 */ // Label 2372: @109127 |
| 38790 | /* 109127 */ GIM_Try, /*On fail goto*//*Label 2373*/ GIMT_Encode4(109173), // Rule ID 17710 // |
| 38791 | /* 109132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 38792 | /* 109135 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg0), |
| 38793 | /* 109139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 38794 | /* 109143 */ // MIs[0] Operand 1 |
| 38795 | /* 109143 */ // No operand predicates |
| 38796 | /* 109143 */ // (fpimm:{ *:[f32] })<<P:Predicate_fpimmneg0>> => (CHS_Fp32:{ *:[f32] }:{ *:[i16] } (LD_Fp032:{ *:[f32] }:{ *:[i16] })) |
| 38797 | /* 109143 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38798 | /* 109146 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp032), |
| 38799 | /* 109150 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38800 | /* 109155 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 38801 | /* 109158 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38802 | /* 109160 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp32), |
| 38803 | /* 109163 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38804 | /* 109165 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38805 | /* 109168 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38806 | /* 109171 */ GIR_RootConstrainSelectedInstOperands, |
| 38807 | /* 109172 */ // GIR_Coverage, 17710, |
| 38808 | /* 109172 */ GIR_EraseRootFromParent_Done, |
| 38809 | /* 109173 */ // Label 2373: @109173 |
| 38810 | /* 109173 */ GIM_Try, /*On fail goto*//*Label 2374*/ GIMT_Encode4(109219), // Rule ID 17711 // |
| 38811 | /* 109178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 38812 | /* 109181 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg1), |
| 38813 | /* 109185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 38814 | /* 109189 */ // MIs[0] Operand 1 |
| 38815 | /* 109189 */ // No operand predicates |
| 38816 | /* 109189 */ // (fpimm:{ *:[f32] })<<P:Predicate_fpimmneg1>> => (CHS_Fp32:{ *:[f32] }:{ *:[i16] } (LD_Fp132:{ *:[f32] }:{ *:[i16] })) |
| 38817 | /* 109189 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38818 | /* 109192 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp132), |
| 38819 | /* 109196 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38820 | /* 109201 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 38821 | /* 109204 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38822 | /* 109206 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp32), |
| 38823 | /* 109209 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38824 | /* 109211 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38825 | /* 109214 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38826 | /* 109217 */ GIR_RootConstrainSelectedInstOperands, |
| 38827 | /* 109218 */ // GIR_Coverage, 17711, |
| 38828 | /* 109218 */ GIR_EraseRootFromParent_Done, |
| 38829 | /* 109219 */ // Label 2374: @109219 |
| 38830 | /* 109219 */ GIM_Reject, |
| 38831 | /* 109220 */ // Label 2368: @109220 |
| 38832 | /* 109220 */ GIM_Try, /*On fail goto*//*Label 2375*/ GIMT_Encode4(109246), // Rule ID 1118 // |
| 38833 | /* 109225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 38834 | /* 109228 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm0), |
| 38835 | /* 109232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 38836 | /* 109236 */ // MIs[0] Operand 1 |
| 38837 | /* 109236 */ // No operand predicates |
| 38838 | /* 109236 */ // (fpimm:{ *:[f64] })<<P:Predicate_fpimm0>> => (LD_Fp064:{ *:[f64] }:{ *:[i16] }) |
| 38839 | /* 109236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp064), |
| 38840 | /* 109239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38841 | /* 109241 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38842 | /* 109244 */ GIR_RootConstrainSelectedInstOperands, |
| 38843 | /* 109245 */ // GIR_Coverage, 1118, |
| 38844 | /* 109245 */ GIR_EraseRootFromParent_Done, |
| 38845 | /* 109246 */ // Label 2375: @109246 |
| 38846 | /* 109246 */ GIM_Try, /*On fail goto*//*Label 2376*/ GIMT_Encode4(109272), // Rule ID 1119 // |
| 38847 | /* 109251 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 38848 | /* 109254 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm1), |
| 38849 | /* 109258 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 38850 | /* 109262 */ // MIs[0] Operand 1 |
| 38851 | /* 109262 */ // No operand predicates |
| 38852 | /* 109262 */ // (fpimm:{ *:[f64] })<<P:Predicate_fpimm1>> => (LD_Fp164:{ *:[f64] }:{ *:[i16] }) |
| 38853 | /* 109262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp164), |
| 38854 | /* 109265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38855 | /* 109267 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38856 | /* 109270 */ GIR_RootConstrainSelectedInstOperands, |
| 38857 | /* 109271 */ // GIR_Coverage, 1119, |
| 38858 | /* 109271 */ GIR_EraseRootFromParent_Done, |
| 38859 | /* 109272 */ // Label 2376: @109272 |
| 38860 | /* 109272 */ GIM_Try, /*On fail goto*//*Label 2377*/ GIMT_Encode4(109318), // Rule ID 17712 // |
| 38861 | /* 109277 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 38862 | /* 109280 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg0), |
| 38863 | /* 109284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 38864 | /* 109288 */ // MIs[0] Operand 1 |
| 38865 | /* 109288 */ // No operand predicates |
| 38866 | /* 109288 */ // (fpimm:{ *:[f64] })<<P:Predicate_fpimmneg0>> => (CHS_Fp64:{ *:[f64] }:{ *:[i16] } (LD_Fp064:{ *:[f64] }:{ *:[i16] })) |
| 38867 | /* 109288 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 38868 | /* 109291 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp064), |
| 38869 | /* 109295 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38870 | /* 109300 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 38871 | /* 109303 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38872 | /* 109305 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp64), |
| 38873 | /* 109308 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38874 | /* 109310 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38875 | /* 109313 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38876 | /* 109316 */ GIR_RootConstrainSelectedInstOperands, |
| 38877 | /* 109317 */ // GIR_Coverage, 17712, |
| 38878 | /* 109317 */ GIR_EraseRootFromParent_Done, |
| 38879 | /* 109318 */ // Label 2377: @109318 |
| 38880 | /* 109318 */ GIM_Try, /*On fail goto*//*Label 2378*/ GIMT_Encode4(109364), // Rule ID 17713 // |
| 38881 | /* 109323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 38882 | /* 109326 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg1), |
| 38883 | /* 109330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 38884 | /* 109334 */ // MIs[0] Operand 1 |
| 38885 | /* 109334 */ // No operand predicates |
| 38886 | /* 109334 */ // (fpimm:{ *:[f64] })<<P:Predicate_fpimmneg1>> => (CHS_Fp64:{ *:[f64] }:{ *:[i16] } (LD_Fp164:{ *:[f64] }:{ *:[i16] })) |
| 38887 | /* 109334 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 38888 | /* 109337 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp164), |
| 38889 | /* 109341 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38890 | /* 109346 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 38891 | /* 109349 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38892 | /* 109351 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp64), |
| 38893 | /* 109354 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38894 | /* 109356 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38895 | /* 109359 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38896 | /* 109362 */ GIR_RootConstrainSelectedInstOperands, |
| 38897 | /* 109363 */ // GIR_Coverage, 17713, |
| 38898 | /* 109363 */ GIR_EraseRootFromParent_Done, |
| 38899 | /* 109364 */ // Label 2378: @109364 |
| 38900 | /* 109364 */ GIM_Reject, |
| 38901 | /* 109365 */ // Label 2369: @109365 |
| 38902 | /* 109365 */ GIM_Try, /*On fail goto*//*Label 2379*/ GIMT_Encode4(109391), // Rule ID 1120 // |
| 38903 | /* 109370 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 38904 | /* 109373 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm0), |
| 38905 | /* 109377 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 38906 | /* 109381 */ // MIs[0] Operand 1 |
| 38907 | /* 109381 */ // No operand predicates |
| 38908 | /* 109381 */ // (fpimm:{ *:[f80] })<<P:Predicate_fpimm0>> => (LD_Fp080:{ *:[f80] }:{ *:[i16] }) |
| 38909 | /* 109381 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp080), |
| 38910 | /* 109384 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38911 | /* 109386 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38912 | /* 109389 */ GIR_RootConstrainSelectedInstOperands, |
| 38913 | /* 109390 */ // GIR_Coverage, 1120, |
| 38914 | /* 109390 */ GIR_EraseRootFromParent_Done, |
| 38915 | /* 109391 */ // Label 2379: @109391 |
| 38916 | /* 109391 */ GIM_Try, /*On fail goto*//*Label 2380*/ GIMT_Encode4(109417), // Rule ID 1121 // |
| 38917 | /* 109396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 38918 | /* 109399 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimm1), |
| 38919 | /* 109403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 38920 | /* 109407 */ // MIs[0] Operand 1 |
| 38921 | /* 109407 */ // No operand predicates |
| 38922 | /* 109407 */ // (fpimm:{ *:[f80] })<<P:Predicate_fpimm1>> => (LD_Fp180:{ *:[f80] }:{ *:[i16] }) |
| 38923 | /* 109407 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LD_Fp180), |
| 38924 | /* 109410 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38925 | /* 109412 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38926 | /* 109415 */ GIR_RootConstrainSelectedInstOperands, |
| 38927 | /* 109416 */ // GIR_Coverage, 1121, |
| 38928 | /* 109416 */ GIR_EraseRootFromParent_Done, |
| 38929 | /* 109417 */ // Label 2380: @109417 |
| 38930 | /* 109417 */ GIM_Try, /*On fail goto*//*Label 2381*/ GIMT_Encode4(109460), // Rule ID 17714 // |
| 38931 | /* 109422 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg0), |
| 38932 | /* 109426 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 38933 | /* 109430 */ // MIs[0] Operand 1 |
| 38934 | /* 109430 */ // No operand predicates |
| 38935 | /* 109430 */ // (fpimm:{ *:[f80] })<<P:Predicate_fpimmneg0>> => (CHS_Fp80:{ *:[f80] }:{ *:[i16] } (LD_Fp080:{ *:[f80] }:{ *:[i16] })) |
| 38936 | /* 109430 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s80, |
| 38937 | /* 109433 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp080), |
| 38938 | /* 109437 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38939 | /* 109442 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 38940 | /* 109445 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38941 | /* 109447 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp80), |
| 38942 | /* 109450 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38943 | /* 109452 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38944 | /* 109455 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38945 | /* 109458 */ GIR_RootConstrainSelectedInstOperands, |
| 38946 | /* 109459 */ // GIR_Coverage, 17714, |
| 38947 | /* 109459 */ GIR_EraseRootFromParent_Done, |
| 38948 | /* 109460 */ // Label 2381: @109460 |
| 38949 | /* 109460 */ GIM_Try, /*On fail goto*//*Label 2382*/ GIMT_Encode4(109503), // Rule ID 17715 // |
| 38950 | /* 109465 */ GIM_CheckAPFloatImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_APFloat_Predicate_fpimmneg1), |
| 38951 | /* 109469 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 38952 | /* 109473 */ // MIs[0] Operand 1 |
| 38953 | /* 109473 */ // No operand predicates |
| 38954 | /* 109473 */ // (fpimm:{ *:[f80] })<<P:Predicate_fpimmneg1>> => (CHS_Fp80:{ *:[f80] }:{ *:[i16] } (LD_Fp180:{ *:[f80] }:{ *:[i16] })) |
| 38955 | /* 109473 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s80, |
| 38956 | /* 109476 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::LD_Fp180), |
| 38957 | /* 109480 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38958 | /* 109485 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::FPSW*/0, |
| 38959 | /* 109488 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38960 | /* 109490 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CHS_Fp80), |
| 38961 | /* 109493 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 38962 | /* 109495 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 38963 | /* 109498 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 38964 | /* 109501 */ GIR_RootConstrainSelectedInstOperands, |
| 38965 | /* 109502 */ // GIR_Coverage, 17715, |
| 38966 | /* 109502 */ GIR_EraseRootFromParent_Done, |
| 38967 | /* 109503 */ // Label 2382: @109503 |
| 38968 | /* 109503 */ GIM_Reject, |
| 38969 | /* 109504 */ // Label 2370: @109504 |
| 38970 | /* 109504 */ GIM_Reject, |
| 38971 | /* 109505 */ // Label 24: @109505 |
| 38972 | /* 109505 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(25), /*)*//*default:*//*Label 2398*/ GIMT_Encode4(111176), |
| 38973 | /* 109516 */ /*GILLT_s16*//*Label 2383*/ GIMT_Encode4(109608), |
| 38974 | /* 109520 */ /*GILLT_s32*//*Label 2384*/ GIMT_Encode4(109666), |
| 38975 | /* 109524 */ /*GILLT_s64*//*Label 2385*/ GIMT_Encode4(109713), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 38976 | /* 109540 */ /*GILLT_v2s64*//*Label 2386*/ GIMT_Encode4(109786), GIMT_Encode4(0), |
| 38977 | /* 109548 */ /*GILLT_v4s32*//*Label 2387*/ GIMT_Encode4(109813), |
| 38978 | /* 109552 */ /*GILLT_v4s64*//*Label 2388*/ GIMT_Encode4(109840), GIMT_Encode4(0), |
| 38979 | /* 109560 */ /*GILLT_v8s16*//*Label 2389*/ GIMT_Encode4(110037), |
| 38980 | /* 109564 */ /*GILLT_v8s32*//*Label 2390*/ GIMT_Encode4(110106), |
| 38981 | /* 109568 */ /*GILLT_v8s64*//*Label 2391*/ GIMT_Encode4(110303), GIMT_Encode4(0), |
| 38982 | /* 109576 */ /*GILLT_v16s8*//*Label 2392*/ GIMT_Encode4(110500), |
| 38983 | /* 109580 */ /*GILLT_v16s16*//*Label 2393*/ GIMT_Encode4(110569), |
| 38984 | /* 109584 */ /*GILLT_v16s32*//*Label 2394*/ GIMT_Encode4(110813), GIMT_Encode4(0), |
| 38985 | /* 109592 */ /*GILLT_v32s8*//*Label 2395*/ GIMT_Encode4(111010), |
| 38986 | /* 109596 */ /*GILLT_v32s16*//*Label 2396*/ GIMT_Encode4(111037), GIMT_Encode4(0), |
| 38987 | /* 109604 */ /*GILLT_v64s8*//*Label 2397*/ GIMT_Encode4(111149), |
| 38988 | /* 109608 */ // Label 2383: @109608 |
| 38989 | /* 109608 */ GIM_Try, /*On fail goto*//*Label 2399*/ GIMT_Encode4(109665), // Rule ID 22729 // |
| 38990 | /* 109613 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 38991 | /* 109616 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 38992 | /* 109620 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 38993 | /* 109624 */ // (sext:{ *:[i16] } GR8:{ *:[i8] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (MOVSX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_16bit:{ *:[i32] }) |
| 38994 | /* 109624 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 38995 | /* 109627 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr8), |
| 38996 | /* 109631 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 38997 | /* 109636 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 38998 | /* 109640 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 38999 | /* 109642 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39000 | /* 109645 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39001 | /* 109647 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 39002 | /* 109654 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39003 | /* 109659 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39004 | /* 109664 */ // GIR_Coverage, 22729, |
| 39005 | /* 109664 */ GIR_EraseRootFromParent_Done, |
| 39006 | /* 109665 */ // Label 2399: @109665 |
| 39007 | /* 109665 */ GIM_Reject, |
| 39008 | /* 109666 */ // Label 2384: @109666 |
| 39009 | /* 109666 */ GIM_Try, /*On fail goto*//*Label 2400*/ GIMT_Encode4(109689), // Rule ID 613 // |
| 39010 | /* 109671 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39011 | /* 109674 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39012 | /* 109678 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39013 | /* 109682 */ // (sext:{ *:[i32] } GR8:{ *:[i8] }:$src) => (MOVSX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 39014 | /* 109682 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr8), |
| 39015 | /* 109687 */ GIR_RootConstrainSelectedInstOperands, |
| 39016 | /* 109688 */ // GIR_Coverage, 613, |
| 39017 | /* 109688 */ GIR_Done, |
| 39018 | /* 109689 */ // Label 2400: @109689 |
| 39019 | /* 109689 */ GIM_Try, /*On fail goto*//*Label 2401*/ GIMT_Encode4(109712), // Rule ID 615 // |
| 39020 | /* 109694 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39021 | /* 109697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39022 | /* 109701 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39023 | /* 109705 */ // (sext:{ *:[i32] } GR16:{ *:[i16] }:$src) => (MOVSX32rr16:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 39024 | /* 109705 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr16), |
| 39025 | /* 109710 */ GIR_RootConstrainSelectedInstOperands, |
| 39026 | /* 109711 */ // GIR_Coverage, 615, |
| 39027 | /* 109711 */ GIR_Done, |
| 39028 | /* 109712 */ // Label 2401: @109712 |
| 39029 | /* 109712 */ GIM_Reject, |
| 39030 | /* 109713 */ // Label 2385: @109713 |
| 39031 | /* 109713 */ GIM_Try, /*On fail goto*//*Label 2402*/ GIMT_Encode4(109736), // Rule ID 621 // |
| 39032 | /* 109718 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39033 | /* 109721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39034 | /* 109725 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39035 | /* 109729 */ // (sext:{ *:[i64] } GR8:{ *:[i8] }:$src) => (MOVSX64rr8:{ *:[i64] } GR8:{ *:[i8] }:$src) |
| 39036 | /* 109729 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX64rr8), |
| 39037 | /* 109734 */ GIR_RootConstrainSelectedInstOperands, |
| 39038 | /* 109735 */ // GIR_Coverage, 621, |
| 39039 | /* 109735 */ GIR_Done, |
| 39040 | /* 109736 */ // Label 2402: @109736 |
| 39041 | /* 109736 */ GIM_Try, /*On fail goto*//*Label 2403*/ GIMT_Encode4(109759), // Rule ID 623 // |
| 39042 | /* 109741 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39043 | /* 109744 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39044 | /* 109748 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39045 | /* 109752 */ // (sext:{ *:[i64] } GR16:{ *:[i16] }:$src) => (MOVSX64rr16:{ *:[i64] } GR16:{ *:[i16] }:$src) |
| 39046 | /* 109752 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX64rr16), |
| 39047 | /* 109757 */ GIR_RootConstrainSelectedInstOperands, |
| 39048 | /* 109758 */ // GIR_Coverage, 623, |
| 39049 | /* 109758 */ GIR_Done, |
| 39050 | /* 109759 */ // Label 2403: @109759 |
| 39051 | /* 109759 */ GIM_Try, /*On fail goto*//*Label 2404*/ GIMT_Encode4(109785), // Rule ID 625 // |
| 39052 | /* 109764 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_In64BitMode), |
| 39053 | /* 109767 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 39054 | /* 109770 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39055 | /* 109774 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39056 | /* 109778 */ // (sext:{ *:[i64] } GR32:{ *:[i32] }:$src) => (MOVSX64rr32:{ *:[i64] } GR32:{ *:[i32] }:$src) |
| 39057 | /* 109778 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVSX64rr32), |
| 39058 | /* 109783 */ GIR_RootConstrainSelectedInstOperands, |
| 39059 | /* 109784 */ // GIR_Coverage, 625, |
| 39060 | /* 109784 */ GIR_Done, |
| 39061 | /* 109785 */ // Label 2404: @109785 |
| 39062 | /* 109785 */ GIM_Reject, |
| 39063 | /* 109786 */ // Label 2386: @109786 |
| 39064 | /* 109786 */ GIM_Try, /*On fail goto*//*Label 2405*/ GIMT_Encode4(109812), // Rule ID 12598 // |
| 39065 | /* 109791 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 39066 | /* 109794 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 39067 | /* 109797 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39068 | /* 109801 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 39069 | /* 109805 */ // (sext:{ *:[v2i64] } VK2:{ *:[v2i1] }:$src) => (VPMOVM2QZ128rk:{ *:[v2i64] } VK2:{ *:[v2i1] }:$src) |
| 39070 | /* 109805 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2QZ128rk), |
| 39071 | /* 109810 */ GIR_RootConstrainSelectedInstOperands, |
| 39072 | /* 109811 */ // GIR_Coverage, 12598, |
| 39073 | /* 109811 */ GIR_Done, |
| 39074 | /* 109812 */ // Label 2405: @109812 |
| 39075 | /* 109812 */ GIM_Reject, |
| 39076 | /* 109813 */ // Label 2387: @109813 |
| 39077 | /* 109813 */ GIM_Try, /*On fail goto*//*Label 2406*/ GIMT_Encode4(109839), // Rule ID 12595 // |
| 39078 | /* 109818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 39079 | /* 109821 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 39080 | /* 109824 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39081 | /* 109828 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 39082 | /* 109832 */ // (sext:{ *:[v4i32] } VK4:{ *:[v4i1] }:$src) => (VPMOVM2DZ128rk:{ *:[v4i32] } VK4:{ *:[v4i1] }:$src) |
| 39083 | /* 109832 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZ128rk), |
| 39084 | /* 109837 */ GIR_RootConstrainSelectedInstOperands, |
| 39085 | /* 109838 */ // GIR_Coverage, 12595, |
| 39086 | /* 109838 */ GIR_Done, |
| 39087 | /* 109839 */ // Label 2406: @109839 |
| 39088 | /* 109839 */ GIM_Reject, |
| 39089 | /* 109840 */ // Label 2388: @109840 |
| 39090 | /* 109840 */ GIM_Try, /*On fail goto*//*Label 2407*/ GIMT_Encode4(109899), // Rule ID 18380 // |
| 39091 | /* 109845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 39092 | /* 109848 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 39093 | /* 109851 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 39094 | /* 109855 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39095 | /* 109859 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39096 | /* 109863 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39097 | /* 109866 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39098 | /* 109870 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39099 | /* 109874 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39100 | /* 109876 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39101 | /* 109883 */ // (sext:{ *:[v4i64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXDQYrm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 39102 | /* 109883 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQYrm), |
| 39103 | /* 109886 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39104 | /* 109888 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39105 | /* 109892 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39106 | /* 109897 */ GIR_RootConstrainSelectedInstOperands, |
| 39107 | /* 109898 */ // GIR_Coverage, 18380, |
| 39108 | /* 109898 */ GIR_EraseRootFromParent_Done, |
| 39109 | /* 109899 */ // Label 2407: @109899 |
| 39110 | /* 109899 */ GIM_Try, /*On fail goto*//*Label 2408*/ GIMT_Encode4(109958), // Rule ID 21596 // |
| 39111 | /* 109904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 39112 | /* 109907 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 39113 | /* 109910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39114 | /* 109914 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39115 | /* 109918 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39116 | /* 109922 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39117 | /* 109925 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39118 | /* 109929 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39119 | /* 109933 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39120 | /* 109935 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39121 | /* 109942 */ // (sext:{ *:[v4i64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXDQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 39122 | /* 109942 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQZ256rm), |
| 39123 | /* 109945 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39124 | /* 109947 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39125 | /* 109951 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39126 | /* 109956 */ GIR_RootConstrainSelectedInstOperands, |
| 39127 | /* 109957 */ // GIR_Coverage, 21596, |
| 39128 | /* 109957 */ GIR_EraseRootFromParent_Done, |
| 39129 | /* 109958 */ // Label 2408: @109958 |
| 39130 | /* 109958 */ GIM_Try, /*On fail goto*//*Label 2409*/ GIMT_Encode4(109984), // Rule ID 12575 // |
| 39131 | /* 109963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 39132 | /* 109966 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 39133 | /* 109969 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39134 | /* 109973 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39135 | /* 109977 */ // (sext:{ *:[v4i64] } VR128X:{ *:[v4i32] }:$src) => (VPMOVSXDQZ256rr:{ *:[v4i64] } VR128X:{ *:[v4i32] }:$src) |
| 39136 | /* 109977 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQZ256rr), |
| 39137 | /* 109982 */ GIR_RootConstrainSelectedInstOperands, |
| 39138 | /* 109983 */ // GIR_Coverage, 12575, |
| 39139 | /* 109983 */ GIR_Done, |
| 39140 | /* 109984 */ // Label 2409: @109984 |
| 39141 | /* 109984 */ GIM_Try, /*On fail goto*//*Label 2410*/ GIMT_Encode4(110010), // Rule ID 12597 // |
| 39142 | /* 109989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 39143 | /* 109992 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 39144 | /* 109995 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39145 | /* 109999 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 39146 | /* 110003 */ // (sext:{ *:[v4i64] } VK4:{ *:[v4i1] }:$src) => (VPMOVM2QZ256rk:{ *:[v4i64] } VK4:{ *:[v4i1] }:$src) |
| 39147 | /* 110003 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2QZ256rk), |
| 39148 | /* 110008 */ GIR_RootConstrainSelectedInstOperands, |
| 39149 | /* 110009 */ // GIR_Coverage, 12597, |
| 39150 | /* 110009 */ GIR_Done, |
| 39151 | /* 110010 */ // Label 2410: @110010 |
| 39152 | /* 110010 */ GIM_Try, /*On fail goto*//*Label 2411*/ GIMT_Encode4(110036), // Rule ID 18368 // |
| 39153 | /* 110015 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 39154 | /* 110018 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 39155 | /* 110021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 39156 | /* 110025 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 39157 | /* 110029 */ // (sext:{ *:[v4i64] } VR128:{ *:[v4i32] }:$src) => (VPMOVSXDQYrr:{ *:[v4i64] } VR128:{ *:[v4i32] }:$src) |
| 39158 | /* 110029 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQYrr), |
| 39159 | /* 110034 */ GIR_RootConstrainSelectedInstOperands, |
| 39160 | /* 110035 */ // GIR_Coverage, 18368, |
| 39161 | /* 110035 */ GIR_Done, |
| 39162 | /* 110036 */ // Label 2411: @110036 |
| 39163 | /* 110036 */ GIM_Reject, |
| 39164 | /* 110037 */ // Label 2389: @110037 |
| 39165 | /* 110037 */ GIM_Try, /*On fail goto*//*Label 2412*/ GIMT_Encode4(110105), |
| 39166 | /* 110042 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 39167 | /* 110045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39168 | /* 110049 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 39169 | /* 110053 */ GIM_Try, /*On fail goto*//*Label 2413*/ GIMT_Encode4(110068), // Rule ID 12592 // |
| 39170 | /* 110058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 39171 | /* 110061 */ // (sext:{ *:[v8i16] } VK8:{ *:[v8i1] }:$src) => (VPMOVM2WZ128rk:{ *:[v8i16] } VK8:{ *:[v8i1] }:$src) |
| 39172 | /* 110061 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2WZ128rk), |
| 39173 | /* 110066 */ GIR_RootConstrainSelectedInstOperands, |
| 39174 | /* 110067 */ // GIR_Coverage, 12592, |
| 39175 | /* 110067 */ GIR_Done, |
| 39176 | /* 110068 */ // Label 2413: @110068 |
| 39177 | /* 110068 */ GIM_Try, /*On fail goto*//*Label 2414*/ GIMT_Encode4(110104), // Rule ID 21672 // |
| 39178 | /* 110073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX_NoBWI), |
| 39179 | /* 110076 */ // (sext:{ *:[v8i16] } VK8:{ *:[v8i1] }:$src) => (VPMOVDWZ256rr:{ *:[v8i16] } (VPMOVM2DZ256rk:{ *:[v8i32] } VK8:{ *:[v8i1] }:$src)) |
| 39180 | /* 110076 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 39181 | /* 110079 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZ256rk), |
| 39182 | /* 110083 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39183 | /* 110088 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39184 | /* 110092 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39185 | /* 110094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZ256rr), |
| 39186 | /* 110097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39187 | /* 110099 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39188 | /* 110102 */ GIR_RootConstrainSelectedInstOperands, |
| 39189 | /* 110103 */ // GIR_Coverage, 21672, |
| 39190 | /* 110103 */ GIR_EraseRootFromParent_Done, |
| 39191 | /* 110104 */ // Label 2414: @110104 |
| 39192 | /* 110104 */ GIM_Reject, |
| 39193 | /* 110105 */ // Label 2412: @110105 |
| 39194 | /* 110105 */ GIM_Reject, |
| 39195 | /* 110106 */ // Label 2390: @110106 |
| 39196 | /* 110106 */ GIM_Try, /*On fail goto*//*Label 2415*/ GIMT_Encode4(110165), // Rule ID 18376 // |
| 39197 | /* 110111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 39198 | /* 110114 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 39199 | /* 110117 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 39200 | /* 110121 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39201 | /* 110125 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39202 | /* 110129 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39203 | /* 110132 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39204 | /* 110136 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39205 | /* 110140 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39206 | /* 110142 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39207 | /* 110149 */ // (sext:{ *:[v8i32] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXWDYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 39208 | /* 110149 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDYrm), |
| 39209 | /* 110152 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39210 | /* 110154 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39211 | /* 110158 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39212 | /* 110163 */ GIR_RootConstrainSelectedInstOperands, |
| 39213 | /* 110164 */ // GIR_Coverage, 18376, |
| 39214 | /* 110164 */ GIR_EraseRootFromParent_Done, |
| 39215 | /* 110165 */ // Label 2415: @110165 |
| 39216 | /* 110165 */ GIM_Try, /*On fail goto*//*Label 2416*/ GIMT_Encode4(110224), // Rule ID 21595 // |
| 39217 | /* 110170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 39218 | /* 110173 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 39219 | /* 110176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39220 | /* 110180 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39221 | /* 110184 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39222 | /* 110188 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39223 | /* 110191 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39224 | /* 110195 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39225 | /* 110199 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39226 | /* 110201 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39227 | /* 110208 */ // (sext:{ *:[v8i32] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXWDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 39228 | /* 110208 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDZ256rm), |
| 39229 | /* 110211 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39230 | /* 110213 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39231 | /* 110217 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39232 | /* 110222 */ GIR_RootConstrainSelectedInstOperands, |
| 39233 | /* 110223 */ // GIR_Coverage, 21595, |
| 39234 | /* 110223 */ GIR_EraseRootFromParent_Done, |
| 39235 | /* 110224 */ // Label 2416: @110224 |
| 39236 | /* 110224 */ GIM_Try, /*On fail goto*//*Label 2417*/ GIMT_Encode4(110250), // Rule ID 12539 // |
| 39237 | /* 110229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 39238 | /* 110232 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 39239 | /* 110235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39240 | /* 110239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39241 | /* 110243 */ // (sext:{ *:[v8i32] } VR128X:{ *:[v8i16] }:$src) => (VPMOVSXWDZ256rr:{ *:[v8i32] } VR128X:{ *:[v8i16] }:$src) |
| 39242 | /* 110243 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDZ256rr), |
| 39243 | /* 110248 */ GIR_RootConstrainSelectedInstOperands, |
| 39244 | /* 110249 */ // GIR_Coverage, 12539, |
| 39245 | /* 110249 */ GIR_Done, |
| 39246 | /* 110250 */ // Label 2417: @110250 |
| 39247 | /* 110250 */ GIM_Try, /*On fail goto*//*Label 2418*/ GIMT_Encode4(110276), // Rule ID 12594 // |
| 39248 | /* 110255 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 39249 | /* 110258 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 39250 | /* 110261 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39251 | /* 110265 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 39252 | /* 110269 */ // (sext:{ *:[v8i32] } VK8:{ *:[v8i1] }:$src) => (VPMOVM2DZ256rk:{ *:[v8i32] } VK8:{ *:[v8i1] }:$src) |
| 39253 | /* 110269 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZ256rk), |
| 39254 | /* 110274 */ GIR_RootConstrainSelectedInstOperands, |
| 39255 | /* 110275 */ // GIR_Coverage, 12594, |
| 39256 | /* 110275 */ GIR_Done, |
| 39257 | /* 110276 */ // Label 2418: @110276 |
| 39258 | /* 110276 */ GIM_Try, /*On fail goto*//*Label 2419*/ GIMT_Encode4(110302), // Rule ID 18366 // |
| 39259 | /* 110281 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 39260 | /* 110284 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 39261 | /* 110287 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 39262 | /* 110291 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 39263 | /* 110295 */ // (sext:{ *:[v8i32] } VR128:{ *:[v8i16] }:$src) => (VPMOVSXWDYrr:{ *:[v8i32] } VR128:{ *:[v8i16] }:$src) |
| 39264 | /* 110295 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDYrr), |
| 39265 | /* 110300 */ GIR_RootConstrainSelectedInstOperands, |
| 39266 | /* 110301 */ // GIR_Coverage, 18366, |
| 39267 | /* 110301 */ GIR_Done, |
| 39268 | /* 110302 */ // Label 2419: @110302 |
| 39269 | /* 110302 */ GIM_Reject, |
| 39270 | /* 110303 */ // Label 2391: @110303 |
| 39271 | /* 110303 */ GIM_Try, /*On fail goto*//*Label 2420*/ GIMT_Encode4(110362), // Rule ID 21600 // |
| 39272 | /* 110308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39273 | /* 110311 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 39274 | /* 110314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39275 | /* 110318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39276 | /* 110322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39277 | /* 110326 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39278 | /* 110329 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39279 | /* 110333 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39280 | /* 110337 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39281 | /* 110339 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39282 | /* 110346 */ // (sext:{ *:[v8i64] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXWQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 39283 | /* 110346 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWQZrm), |
| 39284 | /* 110349 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39285 | /* 110351 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39286 | /* 110355 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39287 | /* 110360 */ GIR_RootConstrainSelectedInstOperands, |
| 39288 | /* 110361 */ // GIR_Coverage, 21600, |
| 39289 | /* 110361 */ GIR_EraseRootFromParent_Done, |
| 39290 | /* 110362 */ // Label 2420: @110362 |
| 39291 | /* 110362 */ GIM_Try, /*On fail goto*//*Label 2421*/ GIMT_Encode4(110421), // Rule ID 21601 // |
| 39292 | /* 110367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39293 | /* 110370 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 39294 | /* 110373 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39295 | /* 110377 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39296 | /* 110381 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39297 | /* 110385 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39298 | /* 110388 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39299 | /* 110392 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39300 | /* 110396 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39301 | /* 110398 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39302 | /* 110405 */ // (sext:{ *:[v8i64] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXDQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 39303 | /* 110405 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQZrm), |
| 39304 | /* 110408 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39305 | /* 110410 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39306 | /* 110414 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39307 | /* 110419 */ GIR_RootConstrainSelectedInstOperands, |
| 39308 | /* 110420 */ // GIR_Coverage, 21601, |
| 39309 | /* 110420 */ GIR_EraseRootFromParent_Done, |
| 39310 | /* 110421 */ // Label 2421: @110421 |
| 39311 | /* 110421 */ GIM_Try, /*On fail goto*//*Label 2422*/ GIMT_Encode4(110447), // Rule ID 12563 // |
| 39312 | /* 110426 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39313 | /* 110429 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 39314 | /* 110432 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39315 | /* 110436 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39316 | /* 110440 */ // (sext:{ *:[v8i64] } VR128X:{ *:[v8i16] }:$src) => (VPMOVSXWQZrr:{ *:[v8i64] } VR128X:{ *:[v8i16] }:$src) |
| 39317 | /* 110440 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWQZrr), |
| 39318 | /* 110445 */ GIR_RootConstrainSelectedInstOperands, |
| 39319 | /* 110446 */ // GIR_Coverage, 12563, |
| 39320 | /* 110446 */ GIR_Done, |
| 39321 | /* 110447 */ // Label 2422: @110447 |
| 39322 | /* 110447 */ GIM_Try, /*On fail goto*//*Label 2423*/ GIMT_Encode4(110473), // Rule ID 12581 // |
| 39323 | /* 110452 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39324 | /* 110455 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 39325 | /* 110458 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39326 | /* 110462 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39327 | /* 110466 */ // (sext:{ *:[v8i64] } VR256X:{ *:[v8i32] }:$src) => (VPMOVSXDQZrr:{ *:[v8i64] } VR256X:{ *:[v8i32] }:$src) |
| 39328 | /* 110466 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXDQZrr), |
| 39329 | /* 110471 */ GIR_RootConstrainSelectedInstOperands, |
| 39330 | /* 110472 */ // GIR_Coverage, 12581, |
| 39331 | /* 110472 */ GIR_Done, |
| 39332 | /* 110473 */ // Label 2423: @110473 |
| 39333 | /* 110473 */ GIM_Try, /*On fail goto*//*Label 2424*/ GIMT_Encode4(110499), // Rule ID 12596 // |
| 39334 | /* 110478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 39335 | /* 110481 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 39336 | /* 110484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39337 | /* 110488 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 39338 | /* 110492 */ // (sext:{ *:[v8i64] } VK8:{ *:[v8i1] }:$src) => (VPMOVM2QZrk:{ *:[v8i64] } VK8:{ *:[v8i1] }:$src) |
| 39339 | /* 110492 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2QZrk), |
| 39340 | /* 110497 */ GIR_RootConstrainSelectedInstOperands, |
| 39341 | /* 110498 */ // GIR_Coverage, 12596, |
| 39342 | /* 110498 */ GIR_Done, |
| 39343 | /* 110499 */ // Label 2424: @110499 |
| 39344 | /* 110499 */ GIM_Reject, |
| 39345 | /* 110500 */ // Label 2392: @110500 |
| 39346 | /* 110500 */ GIM_Try, /*On fail goto*//*Label 2425*/ GIMT_Encode4(110568), |
| 39347 | /* 110505 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 39348 | /* 110508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39349 | /* 110512 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 39350 | /* 110516 */ GIM_Try, /*On fail goto*//*Label 2426*/ GIMT_Encode4(110531), // Rule ID 12589 // |
| 39351 | /* 110521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 39352 | /* 110524 */ // (sext:{ *:[v16i8] } VK16:{ *:[v16i1] }:$src) => (VPMOVM2BZ128rk:{ *:[v16i8] } VK16:{ *:[v16i1] }:$src) |
| 39353 | /* 110524 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2BZ128rk), |
| 39354 | /* 110529 */ GIR_RootConstrainSelectedInstOperands, |
| 39355 | /* 110530 */ // GIR_Coverage, 12589, |
| 39356 | /* 110530 */ GIR_Done, |
| 39357 | /* 110531 */ // Label 2426: @110531 |
| 39358 | /* 110531 */ GIM_Try, /*On fail goto*//*Label 2427*/ GIMT_Encode4(110567), // Rule ID 21670 // |
| 39359 | /* 110536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoBWI), |
| 39360 | /* 110539 */ // (sext:{ *:[v16i8] } VK16:{ *:[v16i1] }:$src) => (VPMOVDBZrr:{ *:[v16i8] } (VPMOVM2DZrk:{ *:[v16i32] } VK16:{ *:[v16i1] }:$src)) |
| 39361 | /* 110539 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 39362 | /* 110542 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZrk), |
| 39363 | /* 110546 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39364 | /* 110551 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39365 | /* 110555 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39366 | /* 110557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDBZrr), |
| 39367 | /* 110560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39368 | /* 110562 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39369 | /* 110565 */ GIR_RootConstrainSelectedInstOperands, |
| 39370 | /* 110566 */ // GIR_Coverage, 21670, |
| 39371 | /* 110566 */ GIR_EraseRootFromParent_Done, |
| 39372 | /* 110567 */ // Label 2427: @110567 |
| 39373 | /* 110567 */ GIM_Reject, |
| 39374 | /* 110568 */ // Label 2425: @110568 |
| 39375 | /* 110568 */ GIM_Reject, |
| 39376 | /* 110569 */ // Label 2393: @110569 |
| 39377 | /* 110569 */ GIM_Try, /*On fail goto*//*Label 2428*/ GIMT_Encode4(110628), // Rule ID 18370 // |
| 39378 | /* 110574 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 39379 | /* 110577 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 39380 | /* 110580 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 39381 | /* 110584 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39382 | /* 110588 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39383 | /* 110592 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39384 | /* 110595 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39385 | /* 110599 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39386 | /* 110603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39387 | /* 110605 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39388 | /* 110612 */ // (sext:{ *:[v16i16] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXBWYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 39389 | /* 110612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWYrm), |
| 39390 | /* 110615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39391 | /* 110617 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39392 | /* 110621 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39393 | /* 110626 */ GIR_RootConstrainSelectedInstOperands, |
| 39394 | /* 110627 */ // GIR_Coverage, 18370, |
| 39395 | /* 110627 */ GIR_EraseRootFromParent_Done, |
| 39396 | /* 110628 */ // Label 2428: @110628 |
| 39397 | /* 110628 */ GIM_Try, /*On fail goto*//*Label 2429*/ GIMT_Encode4(110687), // Rule ID 21594 // |
| 39398 | /* 110633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 39399 | /* 110636 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 39400 | /* 110639 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39401 | /* 110643 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39402 | /* 110647 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39403 | /* 110651 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39404 | /* 110654 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39405 | /* 110658 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39406 | /* 110662 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39407 | /* 110664 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39408 | /* 110671 */ // (sext:{ *:[v16i16] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXBWZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 39409 | /* 110671 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWZ256rm), |
| 39410 | /* 110674 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39411 | /* 110676 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39412 | /* 110680 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39413 | /* 110685 */ GIR_RootConstrainSelectedInstOperands, |
| 39414 | /* 110686 */ // GIR_Coverage, 21594, |
| 39415 | /* 110686 */ GIR_EraseRootFromParent_Done, |
| 39416 | /* 110687 */ // Label 2429: @110687 |
| 39417 | /* 110687 */ GIM_Try, /*On fail goto*//*Label 2430*/ GIMT_Encode4(110713), // Rule ID 12485 // |
| 39418 | /* 110692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 39419 | /* 110695 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 39420 | /* 110698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39421 | /* 110702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39422 | /* 110706 */ // (sext:{ *:[v16i16] } VR128X:{ *:[v16i8] }:$src) => (VPMOVSXBWZ256rr:{ *:[v16i16] } VR128X:{ *:[v16i8] }:$src) |
| 39423 | /* 110706 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWZ256rr), |
| 39424 | /* 110711 */ GIR_RootConstrainSelectedInstOperands, |
| 39425 | /* 110712 */ // GIR_Coverage, 12485, |
| 39426 | /* 110712 */ GIR_Done, |
| 39427 | /* 110713 */ // Label 2430: @110713 |
| 39428 | /* 110713 */ GIM_Try, /*On fail goto*//*Label 2431*/ GIMT_Encode4(110739), // Rule ID 12591 // |
| 39429 | /* 110718 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 39430 | /* 110721 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 39431 | /* 110724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39432 | /* 110728 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 39433 | /* 110732 */ // (sext:{ *:[v16i16] } VK16:{ *:[v16i1] }:$src) => (VPMOVM2WZ256rk:{ *:[v16i16] } VK16:{ *:[v16i1] }:$src) |
| 39434 | /* 110732 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2WZ256rk), |
| 39435 | /* 110737 */ GIR_RootConstrainSelectedInstOperands, |
| 39436 | /* 110738 */ // GIR_Coverage, 12591, |
| 39437 | /* 110738 */ GIR_Done, |
| 39438 | /* 110739 */ // Label 2431: @110739 |
| 39439 | /* 110739 */ GIM_Try, /*On fail goto*//*Label 2432*/ GIMT_Encode4(110765), // Rule ID 18363 // |
| 39440 | /* 110744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 39441 | /* 110747 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 39442 | /* 110750 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 39443 | /* 110754 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 39444 | /* 110758 */ // (sext:{ *:[v16i16] } VR128:{ *:[v16i8] }:$src) => (VPMOVSXBWYrr:{ *:[v16i16] } VR128:{ *:[v16i8] }:$src) |
| 39445 | /* 110758 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWYrr), |
| 39446 | /* 110763 */ GIR_RootConstrainSelectedInstOperands, |
| 39447 | /* 110764 */ // GIR_Coverage, 18363, |
| 39448 | /* 110764 */ GIR_Done, |
| 39449 | /* 110765 */ // Label 2432: @110765 |
| 39450 | /* 110765 */ GIM_Try, /*On fail goto*//*Label 2433*/ GIMT_Encode4(110812), // Rule ID 21671 // |
| 39451 | /* 110770 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoBWI), |
| 39452 | /* 110773 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 39453 | /* 110776 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39454 | /* 110780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 39455 | /* 110784 */ // (sext:{ *:[v16i16] } VK16:{ *:[v16i1] }:$src) => (VPMOVDWZrr:{ *:[v16i16] } (VPMOVM2DZrk:{ *:[v16i32] } VK16:{ *:[v16i1] }:$src)) |
| 39456 | /* 110784 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 39457 | /* 110787 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZrk), |
| 39458 | /* 110791 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39459 | /* 110796 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39460 | /* 110800 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39461 | /* 110802 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVDWZrr), |
| 39462 | /* 110805 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39463 | /* 110807 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39464 | /* 110810 */ GIR_RootConstrainSelectedInstOperands, |
| 39465 | /* 110811 */ // GIR_Coverage, 21671, |
| 39466 | /* 110811 */ GIR_EraseRootFromParent_Done, |
| 39467 | /* 110812 */ // Label 2433: @110812 |
| 39468 | /* 110812 */ GIM_Reject, |
| 39469 | /* 110813 */ // Label 2394: @110813 |
| 39470 | /* 110813 */ GIM_Try, /*On fail goto*//*Label 2434*/ GIMT_Encode4(110872), // Rule ID 21598 // |
| 39471 | /* 110818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39472 | /* 110821 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 39473 | /* 110824 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39474 | /* 110828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39475 | /* 110832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39476 | /* 110836 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39477 | /* 110839 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39478 | /* 110843 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39479 | /* 110847 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39480 | /* 110849 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39481 | /* 110856 */ // (sext:{ *:[v16i32] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXBDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 39482 | /* 110856 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBDZrm), |
| 39483 | /* 110859 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39484 | /* 110861 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39485 | /* 110865 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39486 | /* 110870 */ GIR_RootConstrainSelectedInstOperands, |
| 39487 | /* 110871 */ // GIR_Coverage, 21598, |
| 39488 | /* 110871 */ GIR_EraseRootFromParent_Done, |
| 39489 | /* 110872 */ // Label 2434: @110872 |
| 39490 | /* 110872 */ GIM_Try, /*On fail goto*//*Label 2435*/ GIMT_Encode4(110931), // Rule ID 21599 // |
| 39491 | /* 110877 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39492 | /* 110880 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 39493 | /* 110883 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39494 | /* 110887 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39495 | /* 110891 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39496 | /* 110895 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39497 | /* 110898 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39498 | /* 110902 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39499 | /* 110906 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39500 | /* 110908 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39501 | /* 110915 */ // (sext:{ *:[v16i32] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXWDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 39502 | /* 110915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDZrm), |
| 39503 | /* 110918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39504 | /* 110920 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39505 | /* 110924 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39506 | /* 110929 */ GIR_RootConstrainSelectedInstOperands, |
| 39507 | /* 110930 */ // GIR_Coverage, 21599, |
| 39508 | /* 110930 */ GIR_EraseRootFromParent_Done, |
| 39509 | /* 110931 */ // Label 2435: @110931 |
| 39510 | /* 110931 */ GIM_Try, /*On fail goto*//*Label 2436*/ GIMT_Encode4(110957), // Rule ID 12509 // |
| 39511 | /* 110936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39512 | /* 110939 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 39513 | /* 110942 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39514 | /* 110946 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 39515 | /* 110950 */ // (sext:{ *:[v16i32] } VR128X:{ *:[v16i8] }:$src) => (VPMOVSXBDZrr:{ *:[v16i32] } VR128X:{ *:[v16i8] }:$src) |
| 39516 | /* 110950 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBDZrr), |
| 39517 | /* 110955 */ GIR_RootConstrainSelectedInstOperands, |
| 39518 | /* 110956 */ // GIR_Coverage, 12509, |
| 39519 | /* 110956 */ GIR_Done, |
| 39520 | /* 110957 */ // Label 2436: @110957 |
| 39521 | /* 110957 */ GIM_Try, /*On fail goto*//*Label 2437*/ GIMT_Encode4(110983), // Rule ID 12545 // |
| 39522 | /* 110962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 39523 | /* 110965 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 39524 | /* 110968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39525 | /* 110972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39526 | /* 110976 */ // (sext:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src) => (VPMOVSXWDZrr:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src) |
| 39527 | /* 110976 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXWDZrr), |
| 39528 | /* 110981 */ GIR_RootConstrainSelectedInstOperands, |
| 39529 | /* 110982 */ // GIR_Coverage, 12545, |
| 39530 | /* 110982 */ GIR_Done, |
| 39531 | /* 110983 */ // Label 2437: @110983 |
| 39532 | /* 110983 */ GIM_Try, /*On fail goto*//*Label 2438*/ GIMT_Encode4(111009), // Rule ID 12593 // |
| 39533 | /* 110988 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 39534 | /* 110991 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 39535 | /* 110994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39536 | /* 110998 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 39537 | /* 111002 */ // (sext:{ *:[v16i32] } VK16:{ *:[v16i1] }:$src) => (VPMOVM2DZrk:{ *:[v16i32] } VK16:{ *:[v16i1] }:$src) |
| 39538 | /* 111002 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2DZrk), |
| 39539 | /* 111007 */ GIR_RootConstrainSelectedInstOperands, |
| 39540 | /* 111008 */ // GIR_Coverage, 12593, |
| 39541 | /* 111008 */ GIR_Done, |
| 39542 | /* 111009 */ // Label 2438: @111009 |
| 39543 | /* 111009 */ GIM_Reject, |
| 39544 | /* 111010 */ // Label 2395: @111010 |
| 39545 | /* 111010 */ GIM_Try, /*On fail goto*//*Label 2439*/ GIMT_Encode4(111036), // Rule ID 12588 // |
| 39546 | /* 111015 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 39547 | /* 111018 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 39548 | /* 111021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39549 | /* 111025 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 39550 | /* 111029 */ // (sext:{ *:[v32i8] } VK32:{ *:[v32i1] }:$src) => (VPMOVM2BZ256rk:{ *:[v32i8] } VK32:{ *:[v32i1] }:$src) |
| 39551 | /* 111029 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2BZ256rk), |
| 39552 | /* 111034 */ GIR_RootConstrainSelectedInstOperands, |
| 39553 | /* 111035 */ // GIR_Coverage, 12588, |
| 39554 | /* 111035 */ GIR_Done, |
| 39555 | /* 111036 */ // Label 2439: @111036 |
| 39556 | /* 111036 */ GIM_Reject, |
| 39557 | /* 111037 */ // Label 2396: @111037 |
| 39558 | /* 111037 */ GIM_Try, /*On fail goto*//*Label 2440*/ GIMT_Encode4(111096), // Rule ID 21597 // |
| 39559 | /* 111042 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 39560 | /* 111045 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 39561 | /* 111048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39562 | /* 111052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39563 | /* 111056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39564 | /* 111060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39565 | /* 111063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 39566 | /* 111067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 39567 | /* 111071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39568 | /* 111073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39569 | /* 111080 */ // (sext:{ *:[v32i16] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVSXBWZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 39570 | /* 111080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWZrm), |
| 39571 | /* 111083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39572 | /* 111085 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 39573 | /* 111089 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 39574 | /* 111094 */ GIR_RootConstrainSelectedInstOperands, |
| 39575 | /* 111095 */ // GIR_Coverage, 21597, |
| 39576 | /* 111095 */ GIR_EraseRootFromParent_Done, |
| 39577 | /* 111096 */ // Label 2440: @111096 |
| 39578 | /* 111096 */ GIM_Try, /*On fail goto*//*Label 2441*/ GIMT_Encode4(111122), // Rule ID 12491 // |
| 39579 | /* 111101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 39580 | /* 111104 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 39581 | /* 111107 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39582 | /* 111111 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 39583 | /* 111115 */ // (sext:{ *:[v32i16] } VR256X:{ *:[v32i8] }:$src) => (VPMOVSXBWZrr:{ *:[v32i16] } VR256X:{ *:[v32i8] }:$src) |
| 39584 | /* 111115 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVSXBWZrr), |
| 39585 | /* 111120 */ GIR_RootConstrainSelectedInstOperands, |
| 39586 | /* 111121 */ // GIR_Coverage, 12491, |
| 39587 | /* 111121 */ GIR_Done, |
| 39588 | /* 111122 */ // Label 2441: @111122 |
| 39589 | /* 111122 */ GIM_Try, /*On fail goto*//*Label 2442*/ GIMT_Encode4(111148), // Rule ID 12590 // |
| 39590 | /* 111127 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 39591 | /* 111130 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 39592 | /* 111133 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39593 | /* 111137 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 39594 | /* 111141 */ // (sext:{ *:[v32i16] } VK32:{ *:[v32i1] }:$src) => (VPMOVM2WZrk:{ *:[v32i16] } VK32:{ *:[v32i1] }:$src) |
| 39595 | /* 111141 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2WZrk), |
| 39596 | /* 111146 */ GIR_RootConstrainSelectedInstOperands, |
| 39597 | /* 111147 */ // GIR_Coverage, 12590, |
| 39598 | /* 111147 */ GIR_Done, |
| 39599 | /* 111148 */ // Label 2442: @111148 |
| 39600 | /* 111148 */ GIM_Reject, |
| 39601 | /* 111149 */ // Label 2397: @111149 |
| 39602 | /* 111149 */ GIM_Try, /*On fail goto*//*Label 2443*/ GIMT_Encode4(111175), // Rule ID 12587 // |
| 39603 | /* 111154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 39604 | /* 111157 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 39605 | /* 111160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 39606 | /* 111164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 39607 | /* 111168 */ // (sext:{ *:[v64i8] } VK64:{ *:[v64i1] }:$src) => (VPMOVM2BZrk:{ *:[v64i8] } VK64:{ *:[v64i1] }:$src) |
| 39608 | /* 111168 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVM2BZrk), |
| 39609 | /* 111173 */ GIR_RootConstrainSelectedInstOperands, |
| 39610 | /* 111174 */ // GIR_Coverage, 12587, |
| 39611 | /* 111174 */ GIR_Done, |
| 39612 | /* 111175 */ // Label 2443: @111175 |
| 39613 | /* 111175 */ GIM_Reject, |
| 39614 | /* 111176 */ // Label 2398: @111176 |
| 39615 | /* 111176 */ GIM_Reject, |
| 39616 | /* 111177 */ // Label 25: @111177 |
| 39617 | /* 111177 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(4), /*)*//*default:*//*Label 2446*/ GIMT_Encode4(111418), |
| 39618 | /* 111188 */ /*GILLT_s16*//*Label 2444*/ GIMT_Encode4(111196), |
| 39619 | /* 111192 */ /*GILLT_s32*//*Label 2445*/ GIMT_Encode4(111292), |
| 39620 | /* 111196 */ // Label 2444: @111196 |
| 39621 | /* 111196 */ GIM_Try, /*On fail goto*//*Label 2447*/ GIMT_Encode4(111291), // Rule ID 22725 // |
| 39622 | /* 111201 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39623 | /* 111204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39624 | /* 111208 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39625 | /* 111212 */ // MIs[0] Operand 2 |
| 39626 | /* 111212 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 39627 | /* 111223 */ // (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] }) |
| 39628 | /* 111223 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s8, |
| 39629 | /* 111226 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39630 | /* 111230 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39631 | /* 111235 */ GIR_CopySubReg, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 39632 | /* 111241 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 39633 | /* 111246 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 39634 | /* 111251 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39635 | /* 111254 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr8), |
| 39636 | /* 111258 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39637 | /* 111263 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 39638 | /* 111266 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39639 | /* 111268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39640 | /* 111271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39641 | /* 111273 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 39642 | /* 111280 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39643 | /* 111285 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39644 | /* 111290 */ // GIR_Coverage, 22725, |
| 39645 | /* 111290 */ GIR_EraseRootFromParent_Done, |
| 39646 | /* 111291 */ // Label 2447: @111291 |
| 39647 | /* 111291 */ GIM_Reject, |
| 39648 | /* 111292 */ // Label 2445: @111292 |
| 39649 | /* 111292 */ GIM_Try, /*On fail goto*//*Label 2448*/ GIMT_Encode4(111417), |
| 39650 | /* 111297 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 39651 | /* 111300 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39652 | /* 111304 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39653 | /* 111308 */ GIM_Try, /*On fail goto*//*Label 2449*/ GIMT_Encode4(111362), // Rule ID 22723 // |
| 39654 | /* 111313 */ // MIs[0] Operand 2 |
| 39655 | /* 111313 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 39656 | /* 111324 */ // (sext_inreg:{ *:[i32] } GR32:{ *:[i32] }:$src, i16:{ *:[Other] }) => (MOVSX32rr16:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i16] } GR32:{ *:[i32] }:$src, sub_16bit:{ *:[i32] })) |
| 39657 | /* 111324 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 39658 | /* 111327 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39659 | /* 111331 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39660 | /* 111336 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(4), // src |
| 39661 | /* 111342 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39662 | /* 111347 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39663 | /* 111352 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr16), |
| 39664 | /* 111355 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39665 | /* 111357 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39666 | /* 111360 */ GIR_RootConstrainSelectedInstOperands, |
| 39667 | /* 111361 */ // GIR_Coverage, 22723, |
| 39668 | /* 111361 */ GIR_EraseRootFromParent_Done, |
| 39669 | /* 111362 */ // Label 2449: @111362 |
| 39670 | /* 111362 */ GIM_Try, /*On fail goto*//*Label 2450*/ GIMT_Encode4(111416), // Rule ID 22724 // |
| 39671 | /* 111367 */ // MIs[0] Operand 2 |
| 39672 | /* 111367 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 39673 | /* 111378 */ // (sext_inreg:{ *:[i32] } GR32:{ *:[i32] }:$src, i8:{ *:[Other] }) => (MOVSX32rr8:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i8] } GR32:{ *:[i32] }:$src, sub_8bit:{ *:[i32] })) |
| 39674 | /* 111378 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s8, |
| 39675 | /* 111381 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39676 | /* 111385 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39677 | /* 111390 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 39678 | /* 111396 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR8RegClassID), |
| 39679 | /* 111401 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39680 | /* 111406 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVSX32rr8), |
| 39681 | /* 111409 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39682 | /* 111411 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39683 | /* 111414 */ GIR_RootConstrainSelectedInstOperands, |
| 39684 | /* 111415 */ // GIR_Coverage, 22724, |
| 39685 | /* 111415 */ GIR_EraseRootFromParent_Done, |
| 39686 | /* 111416 */ // Label 2450: @111416 |
| 39687 | /* 111416 */ GIM_Reject, |
| 39688 | /* 111417 */ // Label 2448: @111417 |
| 39689 | /* 111417 */ GIM_Reject, |
| 39690 | /* 111418 */ // Label 2446: @111418 |
| 39691 | /* 111418 */ GIM_Reject, |
| 39692 | /* 111419 */ // Label 26: @111419 |
| 39693 | /* 111419 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 2460*/ GIMT_Encode4(113375), |
| 39694 | /* 111430 */ /*GILLT_s16*//*Label 2451*/ GIMT_Encode4(111514), |
| 39695 | /* 111434 */ /*GILLT_s32*//*Label 2452*/ GIMT_Encode4(111572), |
| 39696 | /* 111438 */ /*GILLT_s64*//*Label 2453*/ GIMT_Encode4(111918), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39697 | /* 111466 */ /*GILLT_v4s64*//*Label 2454*/ GIMT_Encode4(112444), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39698 | /* 111478 */ /*GILLT_v8s32*//*Label 2455*/ GIMT_Encode4(112612), |
| 39699 | /* 111482 */ /*GILLT_v8s64*//*Label 2456*/ GIMT_Encode4(112780), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39700 | /* 111494 */ /*GILLT_v16s16*//*Label 2457*/ GIMT_Encode4(112951), |
| 39701 | /* 111498 */ /*GILLT_v16s32*//*Label 2458*/ GIMT_Encode4(113119), GIMT_Encode4(0), GIMT_Encode4(0), |
| 39702 | /* 111510 */ /*GILLT_v32s16*//*Label 2459*/ GIMT_Encode4(113290), |
| 39703 | /* 111514 */ // Label 2451: @111514 |
| 39704 | /* 111514 */ GIM_Try, /*On fail goto*//*Label 2461*/ GIMT_Encode4(111571), // Rule ID 22731 // |
| 39705 | /* 111519 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39706 | /* 111522 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39707 | /* 111526 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39708 | /* 111530 */ // (zext:{ *:[i16] } GR8:{ *:[i8] }:$src) => (EXTRACT_SUBREG:{ *:[i16] } (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_16bit:{ *:[i32] }) |
| 39709 | /* 111530 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39710 | /* 111533 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 39711 | /* 111537 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39712 | /* 111542 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39713 | /* 111546 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39714 | /* 111548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 39715 | /* 111551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39716 | /* 111553 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_16bit), |
| 39717 | /* 111560 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR16RegClassID), |
| 39718 | /* 111565 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39719 | /* 111570 */ // GIR_Coverage, 22731, |
| 39720 | /* 111570 */ GIR_EraseRootFromParent_Done, |
| 39721 | /* 111571 */ // Label 2461: @111571 |
| 39722 | /* 111571 */ GIM_Reject, |
| 39723 | /* 111572 */ // Label 2452: @111572 |
| 39724 | /* 111572 */ GIM_Try, /*On fail goto*//*Label 2462*/ GIMT_Encode4(111692), // Rule ID 23055 // |
| 39725 | /* 111577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasZU), |
| 39726 | /* 111580 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39727 | /* 111583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 39728 | /* 111587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39729 | /* 111591 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 39730 | /* 111595 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 39731 | /* 111599 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 39732 | /* 111603 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 39733 | /* 111607 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39734 | /* 111611 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39735 | /* 111614 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 39736 | /* 111618 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 39737 | /* 111622 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 39738 | /* 111626 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 39739 | /* 111630 */ // MIs[3] Operand 1 |
| 39740 | /* 111630 */ // No operand predicates |
| 39741 | /* 111630 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 39742 | /* 111632 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39743 | /* 111639 */ // (zext:{ *:[i32] } (mul:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i16] }):$src2)) => (SUBREG_TO_REG:{ *:[i32] } (IMULZU16rmi:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2), sub_16bit:{ *:[i32] }) |
| 39744 | /* 111639 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 39745 | /* 111642 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::IMULZU16rmi), |
| 39746 | /* 111646 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39747 | /* 111651 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src1 |
| 39748 | /* 111655 */ GIR_CopyConstantAsSImm, /*NewInsnID*/1, /*OldInsnID*/3, // src2 |
| 39749 | /* 111658 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39750 | /* 111661 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 39751 | /* 111668 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39752 | /* 111670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39753 | /* 111673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39754 | /* 111675 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39755 | /* 111678 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 39756 | /* 111681 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 39757 | /* 111686 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 39758 | /* 111691 */ // GIR_Coverage, 23055, |
| 39759 | /* 111691 */ GIR_EraseRootFromParent_Done, |
| 39760 | /* 111692 */ // Label 2462: @111692 |
| 39761 | /* 111692 */ GIM_Try, /*On fail goto*//*Label 2463*/ GIMT_Encode4(111784), // Rule ID 23054 // |
| 39762 | /* 111697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasZU), |
| 39763 | /* 111700 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39764 | /* 111703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 39765 | /* 111707 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39766 | /* 111711 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 39767 | /* 111715 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 39768 | /* 111719 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 39769 | /* 111723 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39770 | /* 111728 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 39771 | /* 111732 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 39772 | /* 111736 */ // MIs[2] Operand 1 |
| 39773 | /* 111736 */ // No operand predicates |
| 39774 | /* 111736 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 39775 | /* 111738 */ // (zext:{ *:[i32] } (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2)) => (SUBREG_TO_REG:{ *:[i32] } (IMULZU16rri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2), sub_16bit:{ *:[i32] }) |
| 39776 | /* 111738 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 39777 | /* 111741 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::IMULZU16rri), |
| 39778 | /* 111745 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39779 | /* 111750 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 39780 | /* 111754 */ GIR_CopyConstantAsSImm, /*NewInsnID*/1, /*OldInsnID*/2, // src2 |
| 39781 | /* 111757 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39782 | /* 111760 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39783 | /* 111762 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39784 | /* 111765 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39785 | /* 111767 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39786 | /* 111770 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 39787 | /* 111773 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBPRegClassID), |
| 39788 | /* 111778 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 39789 | /* 111783 */ // GIR_Coverage, 23054, |
| 39790 | /* 111783 */ GIR_EraseRootFromParent_Done, |
| 39791 | /* 111784 */ // Label 2463: @111784 |
| 39792 | /* 111784 */ GIM_Try, /*On fail goto*//*Label 2464*/ GIMT_Encode4(111826), // Rule ID 19433 // |
| 39793 | /* 111789 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39794 | /* 111792 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39795 | /* 111796 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39796 | /* 111800 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 39797 | /* 111804 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 39798 | /* 111808 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 39799 | /* 111813 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39800 | /* 111815 */ // (zext:{ *:[i32] } (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src)) => (KMOVWrk:{ *:[i32] } VK16:{ *:[v16i1] }:$src) |
| 39801 | /* 111815 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVWrk), |
| 39802 | /* 111818 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39803 | /* 111820 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 39804 | /* 111824 */ GIR_RootConstrainSelectedInstOperands, |
| 39805 | /* 111825 */ // GIR_Coverage, 19433, |
| 39806 | /* 111825 */ GIR_EraseRootFromParent_Done, |
| 39807 | /* 111826 */ // Label 2464: @111826 |
| 39808 | /* 111826 */ GIM_Try, /*On fail goto*//*Label 2465*/ GIMT_Encode4(111871), // Rule ID 19436 // |
| 39809 | /* 111831 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 39810 | /* 111834 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39811 | /* 111837 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39812 | /* 111841 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39813 | /* 111845 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 39814 | /* 111849 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 39815 | /* 111853 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 39816 | /* 111858 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39817 | /* 111860 */ // (zext:{ *:[i32] } (bitconvert:{ *:[i8] } VK8:{ *:[v8i1] }:$src)) => (KMOVBrk:{ *:[i32] } VK8:{ *:[v8i1] }:$src) |
| 39818 | /* 111860 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::KMOVBrk), |
| 39819 | /* 111863 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39820 | /* 111865 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 39821 | /* 111869 */ GIR_RootConstrainSelectedInstOperands, |
| 39822 | /* 111870 */ // GIR_Coverage, 19436, |
| 39823 | /* 111870 */ GIR_EraseRootFromParent_Done, |
| 39824 | /* 111871 */ // Label 2465: @111871 |
| 39825 | /* 111871 */ GIM_Try, /*On fail goto*//*Label 2466*/ GIMT_Encode4(111894), // Rule ID 617 // |
| 39826 | /* 111876 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39827 | /* 111879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39828 | /* 111883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39829 | /* 111887 */ // (zext:{ *:[i32] } GR8:{ *:[i8] }:$src) => (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src) |
| 39830 | /* 111887 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 39831 | /* 111892 */ GIR_RootConstrainSelectedInstOperands, |
| 39832 | /* 111893 */ // GIR_Coverage, 617, |
| 39833 | /* 111893 */ GIR_Done, |
| 39834 | /* 111894 */ // Label 2466: @111894 |
| 39835 | /* 111894 */ GIM_Try, /*On fail goto*//*Label 2467*/ GIMT_Encode4(111917), // Rule ID 619 // |
| 39836 | /* 111899 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39837 | /* 111902 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 39838 | /* 111906 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39839 | /* 111910 */ // (zext:{ *:[i32] } GR16:{ *:[i16] }:$src) => (MOVZX32rr16:{ *:[i32] } GR16:{ *:[i16] }:$src) |
| 39840 | /* 111910 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr16), |
| 39841 | /* 111915 */ GIR_RootConstrainSelectedInstOperands, |
| 39842 | /* 111916 */ // GIR_Coverage, 619, |
| 39843 | /* 111916 */ GIR_Done, |
| 39844 | /* 111917 */ // Label 2467: @111917 |
| 39845 | /* 111917 */ GIM_Reject, |
| 39846 | /* 111918 */ // Label 2453: @111918 |
| 39847 | /* 111918 */ GIM_Try, /*On fail goto*//*Label 2468*/ GIMT_Encode4(112038), // Rule ID 23057 // |
| 39848 | /* 111923 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasZU), |
| 39849 | /* 111926 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39850 | /* 111929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39851 | /* 111933 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39852 | /* 111937 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 39853 | /* 111941 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 39854 | /* 111945 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 39855 | /* 111949 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 39856 | /* 111953 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 39857 | /* 111957 */ GIM_CheckAtomicOrdering, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 39858 | /* 111960 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 39859 | /* 111964 */ GIM_CheckCxxInsnPredicate, /*MI*/2, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 39860 | /* 111968 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/1, /*OpIdx*/2, // MIs[3] |
| 39861 | /* 111972 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 39862 | /* 111976 */ // MIs[3] Operand 1 |
| 39863 | /* 111976 */ // No operand predicates |
| 39864 | /* 111976 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 39865 | /* 111978 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 39866 | /* 111985 */ // (zext:{ *:[i64] } (mul:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>, (imm:{ *:[i16] }):$src2)) => (SUBREG_TO_REG:{ *:[i64] } (IMULZU16rmi:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1, (imm:{ *:[i16] }):$src2), sub_16bit:{ *:[i32] }) |
| 39867 | /* 111985 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 39868 | /* 111988 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::IMULZU16rmi), |
| 39869 | /* 111992 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39870 | /* 111997 */ GIR_ComplexRenderer, /*InsnID*/1, /*RendererID*/GIMT_Encode2(0), // src1 |
| 39871 | /* 112001 */ GIR_CopyConstantAsSImm, /*NewInsnID*/1, /*OldInsnID*/3, // src2 |
| 39872 | /* 112004 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39873 | /* 112007 */ GIR_MergeMemOperands, /*InsnID*/1, /*NumInsns*/4, /*MergeInsnID's*/0, 1, 2, 3, |
| 39874 | /* 112014 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39875 | /* 112016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39876 | /* 112019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39877 | /* 112021 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39878 | /* 112024 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 39879 | /* 112027 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39880 | /* 112032 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 39881 | /* 112037 */ // GIR_Coverage, 23057, |
| 39882 | /* 112037 */ GIR_EraseRootFromParent_Done, |
| 39883 | /* 112038 */ // Label 2468: @112038 |
| 39884 | /* 112038 */ GIM_Try, /*On fail goto*//*Label 2469*/ GIMT_Encode4(112130), // Rule ID 23056 // |
| 39885 | /* 112043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasZU), |
| 39886 | /* 112046 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39887 | /* 112049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39888 | /* 112053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39889 | /* 112057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 39890 | /* 112061 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s16, |
| 39891 | /* 112065 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s16, |
| 39892 | /* 112069 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39893 | /* 112074 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 39894 | /* 112078 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 39895 | /* 112082 */ // MIs[2] Operand 1 |
| 39896 | /* 112082 */ // No operand predicates |
| 39897 | /* 112082 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 39898 | /* 112084 */ // (zext:{ *:[i64] } (mul:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2)) => (SUBREG_TO_REG:{ *:[i64] } (IMULZU16rri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i16] }):$src2), sub_16bit:{ *:[i32] }) |
| 39899 | /* 112084 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 39900 | /* 112087 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::IMULZU16rri), |
| 39901 | /* 112091 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39902 | /* 112096 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src1 |
| 39903 | /* 112100 */ GIR_CopyConstantAsSImm, /*NewInsnID*/1, /*OldInsnID*/2, // src2 |
| 39904 | /* 112103 */ GIR_SetImplicitDefDead, /*InsnID*/1, /*OpIdx for X86::EFLAGS*/0, |
| 39905 | /* 112106 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39906 | /* 112108 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39907 | /* 112111 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39908 | /* 112113 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39909 | /* 112116 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/4, |
| 39910 | /* 112119 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39911 | /* 112124 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR16RegClassID), |
| 39912 | /* 112129 */ // GIR_Coverage, 23056, |
| 39913 | /* 112129 */ GIR_EraseRootFromParent_Done, |
| 39914 | /* 112130 */ // Label 2469: @112130 |
| 39915 | /* 112130 */ GIM_Try, /*On fail goto*//*Label 2470*/ GIMT_Encode4(112201), // Rule ID 19434 // |
| 39916 | /* 112135 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39917 | /* 112138 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39918 | /* 112142 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39919 | /* 112146 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 39920 | /* 112150 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 39921 | /* 112154 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 39922 | /* 112159 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39923 | /* 112161 */ // (zext:{ *:[i64] } (bitconvert:{ *:[i16] } VK16:{ *:[v16i1] }:$src)) => (SUBREG_TO_REG:{ *:[i64] } (KMOVWrk:{ *:[i32] } VK16:{ *:[v16i1] }:$src), sub_32bit:{ *:[i32] }) |
| 39924 | /* 112161 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39925 | /* 112164 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVWrk), |
| 39926 | /* 112168 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39927 | /* 112173 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 39928 | /* 112177 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39929 | /* 112179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39930 | /* 112182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39931 | /* 112184 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39932 | /* 112187 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 39933 | /* 112190 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39934 | /* 112195 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39935 | /* 112200 */ // GIR_Coverage, 19434, |
| 39936 | /* 112200 */ GIR_EraseRootFromParent_Done, |
| 39937 | /* 112201 */ // Label 2470: @112201 |
| 39938 | /* 112201 */ GIM_Try, /*On fail goto*//*Label 2471*/ GIMT_Encode4(112275), // Rule ID 19437 // |
| 39939 | /* 112206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 39940 | /* 112209 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39941 | /* 112212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39942 | /* 112216 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 39943 | /* 112220 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 39944 | /* 112224 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 39945 | /* 112228 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 39946 | /* 112233 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 39947 | /* 112235 */ // (zext:{ *:[i64] } (bitconvert:{ *:[i8] } VK8:{ *:[v8i1] }:$src)) => (SUBREG_TO_REG:{ *:[i64] } (KMOVBrk:{ *:[i32] } VK8:{ *:[v8i1] }:$src), sub_32bit:{ *:[i32] }) |
| 39948 | /* 112235 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39949 | /* 112238 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KMOVBrk), |
| 39950 | /* 112242 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39951 | /* 112247 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 39952 | /* 112251 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39953 | /* 112253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39954 | /* 112256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39955 | /* 112258 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39956 | /* 112261 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 39957 | /* 112264 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39958 | /* 112269 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39959 | /* 112274 */ // GIR_Coverage, 19437, |
| 39960 | /* 112274 */ GIR_EraseRootFromParent_Done, |
| 39961 | /* 112275 */ // Label 2471: @112275 |
| 39962 | /* 112275 */ GIM_Try, /*On fail goto*//*Label 2472*/ GIMT_Encode4(112331), // Rule ID 17580 // |
| 39963 | /* 112280 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 39964 | /* 112283 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39965 | /* 112287 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 39966 | /* 112291 */ // (zext:{ *:[i64] } GR8:{ *:[i8] }:$src) => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rr8:{ *:[i32] } GR8:{ *:[i8] }:$src), sub_32bit:{ *:[i32] }) |
| 39967 | /* 112291 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39968 | /* 112294 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr8), |
| 39969 | /* 112298 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39970 | /* 112303 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39971 | /* 112307 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39972 | /* 112309 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39973 | /* 112312 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39974 | /* 112314 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39975 | /* 112317 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 39976 | /* 112320 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39977 | /* 112325 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39978 | /* 112330 */ // GIR_Coverage, 17580, |
| 39979 | /* 112330 */ GIR_EraseRootFromParent_Done, |
| 39980 | /* 112331 */ // Label 2472: @112331 |
| 39981 | /* 112331 */ GIM_Try, /*On fail goto*//*Label 2473*/ GIMT_Encode4(112387), // Rule ID 17582 // |
| 39982 | /* 112336 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 39983 | /* 112339 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 39984 | /* 112343 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 39985 | /* 112347 */ // (zext:{ *:[i64] } GR16:{ *:[i16] }:$src) => (SUBREG_TO_REG:{ *:[i64] } (MOVZX32rr16:{ *:[i32] } GR16:{ *:[i16] }:$src), sub_32bit:{ *:[i32] }) |
| 39986 | /* 112347 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 39987 | /* 112350 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOVZX32rr16), |
| 39988 | /* 112354 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 39989 | /* 112359 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 39990 | /* 112363 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 39991 | /* 112365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 39992 | /* 112368 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 39993 | /* 112370 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 39994 | /* 112373 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 39995 | /* 112376 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 39996 | /* 112381 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 39997 | /* 112386 */ // GIR_Coverage, 17582, |
| 39998 | /* 112386 */ GIR_EraseRootFromParent_Done, |
| 39999 | /* 112387 */ // Label 2473: @112387 |
| 40000 | /* 112387 */ GIM_Try, /*On fail goto*//*Label 2474*/ GIMT_Encode4(112443), // Rule ID 17584 // |
| 40001 | /* 112392 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 40002 | /* 112395 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40003 | /* 112399 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40004 | /* 112403 */ // (zext:{ *:[i64] } GR32:{ *:[i32] }:$src) => (SUBREG_TO_REG:{ *:[i64] } (MOV32rr:{ *:[i32] } GR32:{ *:[i32] }:$src), sub_32bit:{ *:[i32] }) |
| 40005 | /* 112403 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40006 | /* 112406 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::MOV32rr), |
| 40007 | /* 112410 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40008 | /* 112415 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 40009 | /* 112419 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 40010 | /* 112421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::SUBREG_TO_REG), |
| 40011 | /* 112424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40012 | /* 112426 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40013 | /* 112429 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/6, |
| 40014 | /* 112432 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::GR64RegClassID), |
| 40015 | /* 112437 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::GR32RegClassID), |
| 40016 | /* 112442 */ // GIR_Coverage, 17584, |
| 40017 | /* 112442 */ GIR_EraseRootFromParent_Done, |
| 40018 | /* 112443 */ // Label 2474: @112443 |
| 40019 | /* 112443 */ GIM_Reject, |
| 40020 | /* 112444 */ // Label 2454: @112444 |
| 40021 | /* 112444 */ GIM_Try, /*On fail goto*//*Label 2475*/ GIMT_Encode4(112611), |
| 40022 | /* 112449 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 40023 | /* 112452 */ GIM_Try, /*On fail goto*//*Label 2476*/ GIMT_Encode4(112508), // Rule ID 18403 // |
| 40024 | /* 112457 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40025 | /* 112460 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40026 | /* 112464 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40027 | /* 112468 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40028 | /* 112472 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40029 | /* 112475 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40030 | /* 112479 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40031 | /* 112483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40032 | /* 112485 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40033 | /* 112492 */ // (zext:{ *:[v4i64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXDQYrm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 40034 | /* 112492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQYrm), |
| 40035 | /* 112495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40036 | /* 112497 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40037 | /* 112501 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40038 | /* 112506 */ GIR_RootConstrainSelectedInstOperands, |
| 40039 | /* 112507 */ // GIR_Coverage, 18403, |
| 40040 | /* 112507 */ GIR_EraseRootFromParent_Done, |
| 40041 | /* 112508 */ // Label 2476: @112508 |
| 40042 | /* 112508 */ GIM_Try, /*On fail goto*//*Label 2477*/ GIMT_Encode4(112564), // Rule ID 21629 // |
| 40043 | /* 112513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 40044 | /* 112516 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40045 | /* 112520 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40046 | /* 112524 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40047 | /* 112528 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40048 | /* 112531 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40049 | /* 112535 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40050 | /* 112539 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40051 | /* 112541 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40052 | /* 112548 */ // (zext:{ *:[v4i64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXDQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src) |
| 40053 | /* 112548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQZ256rm), |
| 40054 | /* 112551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40055 | /* 112553 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40056 | /* 112557 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40057 | /* 112562 */ GIR_RootConstrainSelectedInstOperands, |
| 40058 | /* 112563 */ // GIR_Coverage, 21629, |
| 40059 | /* 112563 */ GIR_EraseRootFromParent_Done, |
| 40060 | /* 112564 */ // Label 2477: @112564 |
| 40061 | /* 112564 */ GIM_Try, /*On fail goto*//*Label 2478*/ GIMT_Encode4(112587), // Rule ID 12467 // |
| 40062 | /* 112569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 40063 | /* 112572 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40064 | /* 112576 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40065 | /* 112580 */ // (zext:{ *:[v4i64] } VR128X:{ *:[v4i32] }:$src) => (VPMOVZXDQZ256rr:{ *:[v4i64] } VR128X:{ *:[v4i32] }:$src) |
| 40066 | /* 112580 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQZ256rr), |
| 40067 | /* 112585 */ GIR_RootConstrainSelectedInstOperands, |
| 40068 | /* 112586 */ // GIR_Coverage, 12467, |
| 40069 | /* 112586 */ GIR_Done, |
| 40070 | /* 112587 */ // Label 2478: @112587 |
| 40071 | /* 112587 */ GIM_Try, /*On fail goto*//*Label 2479*/ GIMT_Encode4(112610), // Rule ID 18391 // |
| 40072 | /* 112592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40073 | /* 112595 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40074 | /* 112599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 40075 | /* 112603 */ // (zext:{ *:[v4i64] } VR128:{ *:[v4i32] }:$src) => (VPMOVZXDQYrr:{ *:[v4i64] } VR128:{ *:[v4i32] }:$src) |
| 40076 | /* 112603 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQYrr), |
| 40077 | /* 112608 */ GIR_RootConstrainSelectedInstOperands, |
| 40078 | /* 112609 */ // GIR_Coverage, 18391, |
| 40079 | /* 112609 */ GIR_Done, |
| 40080 | /* 112610 */ // Label 2479: @112610 |
| 40081 | /* 112610 */ GIM_Reject, |
| 40082 | /* 112611 */ // Label 2475: @112611 |
| 40083 | /* 112611 */ GIM_Reject, |
| 40084 | /* 112612 */ // Label 2455: @112612 |
| 40085 | /* 112612 */ GIM_Try, /*On fail goto*//*Label 2480*/ GIMT_Encode4(112779), |
| 40086 | /* 112617 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40087 | /* 112620 */ GIM_Try, /*On fail goto*//*Label 2481*/ GIMT_Encode4(112676), // Rule ID 18399 // |
| 40088 | /* 112625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40089 | /* 112628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40090 | /* 112632 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40091 | /* 112636 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40092 | /* 112640 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40093 | /* 112643 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40094 | /* 112647 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40095 | /* 112651 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40096 | /* 112653 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40097 | /* 112660 */ // (zext:{ *:[v8i32] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXWDYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 40098 | /* 112660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDYrm), |
| 40099 | /* 112663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40100 | /* 112665 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40101 | /* 112669 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40102 | /* 112674 */ GIR_RootConstrainSelectedInstOperands, |
| 40103 | /* 112675 */ // GIR_Coverage, 18399, |
| 40104 | /* 112675 */ GIR_EraseRootFromParent_Done, |
| 40105 | /* 112676 */ // Label 2481: @112676 |
| 40106 | /* 112676 */ GIM_Try, /*On fail goto*//*Label 2482*/ GIMT_Encode4(112732), // Rule ID 21628 // |
| 40107 | /* 112681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 40108 | /* 112684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40109 | /* 112688 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40110 | /* 112692 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40111 | /* 112696 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40112 | /* 112699 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40113 | /* 112703 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40114 | /* 112707 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40115 | /* 112709 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40116 | /* 112716 */ // (zext:{ *:[v8i32] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXWDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 40117 | /* 112716 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZ256rm), |
| 40118 | /* 112719 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40119 | /* 112721 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40120 | /* 112725 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40121 | /* 112730 */ GIR_RootConstrainSelectedInstOperands, |
| 40122 | /* 112731 */ // GIR_Coverage, 21628, |
| 40123 | /* 112731 */ GIR_EraseRootFromParent_Done, |
| 40124 | /* 112732 */ // Label 2482: @112732 |
| 40125 | /* 112732 */ GIM_Try, /*On fail goto*//*Label 2483*/ GIMT_Encode4(112755), // Rule ID 12431 // |
| 40126 | /* 112737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 40127 | /* 112740 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40128 | /* 112744 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40129 | /* 112748 */ // (zext:{ *:[v8i32] } VR128X:{ *:[v8i16] }:$src) => (VPMOVZXWDZ256rr:{ *:[v8i32] } VR128X:{ *:[v8i16] }:$src) |
| 40130 | /* 112748 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZ256rr), |
| 40131 | /* 112753 */ GIR_RootConstrainSelectedInstOperands, |
| 40132 | /* 112754 */ // GIR_Coverage, 12431, |
| 40133 | /* 112754 */ GIR_Done, |
| 40134 | /* 112755 */ // Label 2483: @112755 |
| 40135 | /* 112755 */ GIM_Try, /*On fail goto*//*Label 2484*/ GIMT_Encode4(112778), // Rule ID 18389 // |
| 40136 | /* 112760 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 40137 | /* 112763 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40138 | /* 112767 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 40139 | /* 112771 */ // (zext:{ *:[v8i32] } VR128:{ *:[v8i16] }:$src) => (VPMOVZXWDYrr:{ *:[v8i32] } VR128:{ *:[v8i16] }:$src) |
| 40140 | /* 112771 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDYrr), |
| 40141 | /* 112776 */ GIR_RootConstrainSelectedInstOperands, |
| 40142 | /* 112777 */ // GIR_Coverage, 18389, |
| 40143 | /* 112777 */ GIR_Done, |
| 40144 | /* 112778 */ // Label 2484: @112778 |
| 40145 | /* 112778 */ GIM_Reject, |
| 40146 | /* 112779 */ // Label 2480: @112779 |
| 40147 | /* 112779 */ GIM_Reject, |
| 40148 | /* 112780 */ // Label 2456: @112780 |
| 40149 | /* 112780 */ GIM_Try, /*On fail goto*//*Label 2485*/ GIMT_Encode4(112839), // Rule ID 21633 // |
| 40150 | /* 112785 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40151 | /* 112788 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40152 | /* 112791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40153 | /* 112795 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40154 | /* 112799 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40155 | /* 112803 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40156 | /* 112806 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40157 | /* 112810 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40158 | /* 112814 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40159 | /* 112816 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40160 | /* 112823 */ // (zext:{ *:[v8i64] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXWQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 40161 | /* 112823 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWQZrm), |
| 40162 | /* 112826 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40163 | /* 112828 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40164 | /* 112832 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40165 | /* 112837 */ GIR_RootConstrainSelectedInstOperands, |
| 40166 | /* 112838 */ // GIR_Coverage, 21633, |
| 40167 | /* 112838 */ GIR_EraseRootFromParent_Done, |
| 40168 | /* 112839 */ // Label 2485: @112839 |
| 40169 | /* 112839 */ GIM_Try, /*On fail goto*//*Label 2486*/ GIMT_Encode4(112898), // Rule ID 21634 // |
| 40170 | /* 112844 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40171 | /* 112847 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 40172 | /* 112850 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40173 | /* 112854 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40174 | /* 112858 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40175 | /* 112862 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40176 | /* 112865 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40177 | /* 112869 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40178 | /* 112873 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40179 | /* 112875 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40180 | /* 112882 */ // (zext:{ *:[v8i64] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXDQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src) |
| 40181 | /* 112882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQZrm), |
| 40182 | /* 112885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40183 | /* 112887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40184 | /* 112891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40185 | /* 112896 */ GIR_RootConstrainSelectedInstOperands, |
| 40186 | /* 112897 */ // GIR_Coverage, 21634, |
| 40187 | /* 112897 */ GIR_EraseRootFromParent_Done, |
| 40188 | /* 112898 */ // Label 2486: @112898 |
| 40189 | /* 112898 */ GIM_Try, /*On fail goto*//*Label 2487*/ GIMT_Encode4(112924), // Rule ID 12455 // |
| 40190 | /* 112903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40191 | /* 112906 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 40192 | /* 112909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40193 | /* 112913 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40194 | /* 112917 */ // (zext:{ *:[v8i64] } VR128X:{ *:[v8i16] }:$src) => (VPMOVZXWQZrr:{ *:[v8i64] } VR128X:{ *:[v8i16] }:$src) |
| 40195 | /* 112917 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWQZrr), |
| 40196 | /* 112922 */ GIR_RootConstrainSelectedInstOperands, |
| 40197 | /* 112923 */ // GIR_Coverage, 12455, |
| 40198 | /* 112923 */ GIR_Done, |
| 40199 | /* 112924 */ // Label 2487: @112924 |
| 40200 | /* 112924 */ GIM_Try, /*On fail goto*//*Label 2488*/ GIMT_Encode4(112950), // Rule ID 12473 // |
| 40201 | /* 112929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40202 | /* 112932 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 40203 | /* 112935 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40204 | /* 112939 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40205 | /* 112943 */ // (zext:{ *:[v8i64] } VR256X:{ *:[v8i32] }:$src) => (VPMOVZXDQZrr:{ *:[v8i64] } VR256X:{ *:[v8i32] }:$src) |
| 40206 | /* 112943 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXDQZrr), |
| 40207 | /* 112948 */ GIR_RootConstrainSelectedInstOperands, |
| 40208 | /* 112949 */ // GIR_Coverage, 12473, |
| 40209 | /* 112949 */ GIR_Done, |
| 40210 | /* 112950 */ // Label 2488: @112950 |
| 40211 | /* 112950 */ GIM_Reject, |
| 40212 | /* 112951 */ // Label 2457: @112951 |
| 40213 | /* 112951 */ GIM_Try, /*On fail goto*//*Label 2489*/ GIMT_Encode4(113118), |
| 40214 | /* 112956 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40215 | /* 112959 */ GIM_Try, /*On fail goto*//*Label 2490*/ GIMT_Encode4(113015), // Rule ID 18393 // |
| 40216 | /* 112964 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 40217 | /* 112967 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40218 | /* 112971 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40219 | /* 112975 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40220 | /* 112979 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40221 | /* 112982 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40222 | /* 112986 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40223 | /* 112990 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40224 | /* 112992 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40225 | /* 112999 */ // (zext:{ *:[v16i16] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXBWYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 40226 | /* 112999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWYrm), |
| 40227 | /* 113002 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40228 | /* 113004 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40229 | /* 113008 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40230 | /* 113013 */ GIR_RootConstrainSelectedInstOperands, |
| 40231 | /* 113014 */ // GIR_Coverage, 18393, |
| 40232 | /* 113014 */ GIR_EraseRootFromParent_Done, |
| 40233 | /* 113015 */ // Label 2490: @113015 |
| 40234 | /* 113015 */ GIM_Try, /*On fail goto*//*Label 2491*/ GIMT_Encode4(113071), // Rule ID 21627 // |
| 40235 | /* 113020 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 40236 | /* 113023 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40237 | /* 113027 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40238 | /* 113031 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40239 | /* 113035 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40240 | /* 113038 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40241 | /* 113042 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40242 | /* 113046 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40243 | /* 113048 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40244 | /* 113055 */ // (zext:{ *:[v16i16] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXBWZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 40245 | /* 113055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWZ256rm), |
| 40246 | /* 113058 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40247 | /* 113060 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40248 | /* 113064 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40249 | /* 113069 */ GIR_RootConstrainSelectedInstOperands, |
| 40250 | /* 113070 */ // GIR_Coverage, 21627, |
| 40251 | /* 113070 */ GIR_EraseRootFromParent_Done, |
| 40252 | /* 113071 */ // Label 2491: @113071 |
| 40253 | /* 113071 */ GIM_Try, /*On fail goto*//*Label 2492*/ GIMT_Encode4(113094), // Rule ID 12377 // |
| 40254 | /* 113076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 40255 | /* 113079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40256 | /* 113083 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40257 | /* 113087 */ // (zext:{ *:[v16i16] } VR128X:{ *:[v16i8] }:$src) => (VPMOVZXBWZ256rr:{ *:[v16i16] } VR128X:{ *:[v16i8] }:$src) |
| 40258 | /* 113087 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWZ256rr), |
| 40259 | /* 113092 */ GIR_RootConstrainSelectedInstOperands, |
| 40260 | /* 113093 */ // GIR_Coverage, 12377, |
| 40261 | /* 113093 */ GIR_Done, |
| 40262 | /* 113094 */ // Label 2492: @113094 |
| 40263 | /* 113094 */ GIM_Try, /*On fail goto*//*Label 2493*/ GIMT_Encode4(113117), // Rule ID 18386 // |
| 40264 | /* 113099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 40265 | /* 113102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 40266 | /* 113106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 40267 | /* 113110 */ // (zext:{ *:[v16i16] } VR128:{ *:[v16i8] }:$src) => (VPMOVZXBWYrr:{ *:[v16i16] } VR128:{ *:[v16i8] }:$src) |
| 40268 | /* 113110 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWYrr), |
| 40269 | /* 113115 */ GIR_RootConstrainSelectedInstOperands, |
| 40270 | /* 113116 */ // GIR_Coverage, 18386, |
| 40271 | /* 113116 */ GIR_Done, |
| 40272 | /* 113117 */ // Label 2493: @113117 |
| 40273 | /* 113117 */ GIM_Reject, |
| 40274 | /* 113118 */ // Label 2489: @113118 |
| 40275 | /* 113118 */ GIM_Reject, |
| 40276 | /* 113119 */ // Label 2458: @113119 |
| 40277 | /* 113119 */ GIM_Try, /*On fail goto*//*Label 2494*/ GIMT_Encode4(113178), // Rule ID 21631 // |
| 40278 | /* 113124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40279 | /* 113127 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40280 | /* 113130 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40281 | /* 113134 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40282 | /* 113138 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40283 | /* 113142 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40284 | /* 113145 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40285 | /* 113149 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40286 | /* 113153 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40287 | /* 113155 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40288 | /* 113162 */ // (zext:{ *:[v16i32] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXBDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 40289 | /* 113162 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBDZrm), |
| 40290 | /* 113165 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40291 | /* 113167 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40292 | /* 113171 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40293 | /* 113176 */ GIR_RootConstrainSelectedInstOperands, |
| 40294 | /* 113177 */ // GIR_Coverage, 21631, |
| 40295 | /* 113177 */ GIR_EraseRootFromParent_Done, |
| 40296 | /* 113178 */ // Label 2494: @113178 |
| 40297 | /* 113178 */ GIM_Try, /*On fail goto*//*Label 2495*/ GIMT_Encode4(113237), // Rule ID 21632 // |
| 40298 | /* 113183 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40299 | /* 113186 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 40300 | /* 113189 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40301 | /* 113193 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40302 | /* 113197 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40303 | /* 113201 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40304 | /* 113204 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40305 | /* 113208 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40306 | /* 113212 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40307 | /* 113214 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40308 | /* 113221 */ // (zext:{ *:[v16i32] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXWDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src) |
| 40309 | /* 113221 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZrm), |
| 40310 | /* 113224 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40311 | /* 113226 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40312 | /* 113230 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40313 | /* 113235 */ GIR_RootConstrainSelectedInstOperands, |
| 40314 | /* 113236 */ // GIR_Coverage, 21632, |
| 40315 | /* 113236 */ GIR_EraseRootFromParent_Done, |
| 40316 | /* 113237 */ // Label 2495: @113237 |
| 40317 | /* 113237 */ GIM_Try, /*On fail goto*//*Label 2496*/ GIMT_Encode4(113263), // Rule ID 12401 // |
| 40318 | /* 113242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40319 | /* 113245 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 40320 | /* 113248 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40321 | /* 113252 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 40322 | /* 113256 */ // (zext:{ *:[v16i32] } VR128X:{ *:[v16i8] }:$src) => (VPMOVZXBDZrr:{ *:[v16i32] } VR128X:{ *:[v16i8] }:$src) |
| 40323 | /* 113256 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBDZrr), |
| 40324 | /* 113261 */ GIR_RootConstrainSelectedInstOperands, |
| 40325 | /* 113262 */ // GIR_Coverage, 12401, |
| 40326 | /* 113262 */ GIR_Done, |
| 40327 | /* 113263 */ // Label 2496: @113263 |
| 40328 | /* 113263 */ GIM_Try, /*On fail goto*//*Label 2497*/ GIMT_Encode4(113289), // Rule ID 12437 // |
| 40329 | /* 113268 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 40330 | /* 113271 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 40331 | /* 113274 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40332 | /* 113278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40333 | /* 113282 */ // (zext:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src) => (VPMOVZXWDZrr:{ *:[v16i32] } VR256X:{ *:[v16i16] }:$src) |
| 40334 | /* 113282 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXWDZrr), |
| 40335 | /* 113287 */ GIR_RootConstrainSelectedInstOperands, |
| 40336 | /* 113288 */ // GIR_Coverage, 12437, |
| 40337 | /* 113288 */ GIR_Done, |
| 40338 | /* 113289 */ // Label 2497: @113289 |
| 40339 | /* 113289 */ GIM_Reject, |
| 40340 | /* 113290 */ // Label 2459: @113290 |
| 40341 | /* 113290 */ GIM_Try, /*On fail goto*//*Label 2498*/ GIMT_Encode4(113374), |
| 40342 | /* 113295 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 40343 | /* 113298 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 40344 | /* 113302 */ GIM_Try, /*On fail goto*//*Label 2499*/ GIMT_Encode4(113354), // Rule ID 21630 // |
| 40345 | /* 113307 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 40346 | /* 113310 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40347 | /* 113314 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40348 | /* 113318 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40349 | /* 113321 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40350 | /* 113325 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40351 | /* 113329 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40352 | /* 113331 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40353 | /* 113338 */ // (zext:{ *:[v32i16] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMOVZXBWZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src) |
| 40354 | /* 113338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWZrm), |
| 40355 | /* 113341 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40356 | /* 113343 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 40357 | /* 113347 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40358 | /* 113352 */ GIR_RootConstrainSelectedInstOperands, |
| 40359 | /* 113353 */ // GIR_Coverage, 21630, |
| 40360 | /* 113353 */ GIR_EraseRootFromParent_Done, |
| 40361 | /* 113354 */ // Label 2499: @113354 |
| 40362 | /* 113354 */ GIM_Try, /*On fail goto*//*Label 2500*/ GIMT_Encode4(113373), // Rule ID 12383 // |
| 40363 | /* 113359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 40364 | /* 113362 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 40365 | /* 113366 */ // (zext:{ *:[v32i16] } VR256X:{ *:[v32i8] }:$src) => (VPMOVZXBWZrr:{ *:[v32i16] } VR256X:{ *:[v32i8] }:$src) |
| 40366 | /* 113366 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMOVZXBWZrr), |
| 40367 | /* 113371 */ GIR_RootConstrainSelectedInstOperands, |
| 40368 | /* 113372 */ // GIR_Coverage, 12383, |
| 40369 | /* 113372 */ GIR_Done, |
| 40370 | /* 113373 */ // Label 2500: @113373 |
| 40371 | /* 113373 */ GIM_Reject, |
| 40372 | /* 113374 */ // Label 2498: @113374 |
| 40373 | /* 113374 */ GIM_Reject, |
| 40374 | /* 113375 */ // Label 2460: @113375 |
| 40375 | /* 113375 */ GIM_Reject, |
| 40376 | /* 113376 */ // Label 27: @113376 |
| 40377 | /* 113376 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 2505*/ GIMT_Encode4(115059), |
| 40378 | /* 113387 */ /*GILLT_s8*//*Label 2501*/ GIMT_Encode4(113403), |
| 40379 | /* 113391 */ /*GILLT_s16*//*Label 2502*/ GIMT_Encode4(113618), |
| 40380 | /* 113395 */ /*GILLT_s32*//*Label 2503*/ GIMT_Encode4(113833), |
| 40381 | /* 113399 */ /*GILLT_s64*//*Label 2504*/ GIMT_Encode4(114446), |
| 40382 | /* 113403 */ // Label 2501: @113403 |
| 40383 | /* 113403 */ GIM_Try, /*On fail goto*//*Label 2506*/ GIMT_Encode4(113617), |
| 40384 | /* 113408 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 40385 | /* 113411 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 40386 | /* 113414 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40387 | /* 113418 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40388 | /* 113422 */ GIM_Try, /*On fail goto*//*Label 2507*/ GIMT_Encode4(113448), // Rule ID 22756 // |
| 40389 | /* 113427 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40390 | /* 113430 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 40391 | /* 113434 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, 1:{ *:[i8] }) => (ADD8rr:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src1) |
| 40392 | /* 113434 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rr), |
| 40393 | /* 113437 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40394 | /* 113439 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40395 | /* 113441 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40396 | /* 113443 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40397 | /* 113446 */ GIR_RootConstrainSelectedInstOperands, |
| 40398 | /* 113447 */ // GIR_Coverage, 22756, |
| 40399 | /* 113447 */ GIR_EraseRootFromParent_Done, |
| 40400 | /* 113448 */ // Label 2507: @113448 |
| 40401 | /* 113448 */ GIM_Try, /*On fail goto*//*Label 2508*/ GIMT_Encode4(113474), // Rule ID 22760 // |
| 40402 | /* 113453 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 40403 | /* 113456 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 40404 | /* 113460 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, 1:{ *:[i8] }) => (ADD8rr_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, GR8:{ *:[i8] }:$src1) |
| 40405 | /* 113460 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD8rr_ND), |
| 40406 | /* 113463 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40407 | /* 113465 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40408 | /* 113467 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40409 | /* 113469 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40410 | /* 113472 */ GIR_RootConstrainSelectedInstOperands, |
| 40411 | /* 113473 */ // GIR_Coverage, 22760, |
| 40412 | /* 113473 */ GIR_EraseRootFromParent_Done, |
| 40413 | /* 113474 */ // Label 2508: @113474 |
| 40414 | /* 113474 */ GIM_Try, /*On fail goto*//*Label 2509*/ GIMT_Encode4(113507), // Rule ID 661 // |
| 40415 | /* 113479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40416 | /* 113482 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 40417 | /* 113486 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40418 | /* 113490 */ // MIs[1] Operand 1 |
| 40419 | /* 113490 */ // No operand predicates |
| 40420 | /* 113490 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40421 | /* 113492 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 40422 | /* 113492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8ri), |
| 40423 | /* 113495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40424 | /* 113497 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40425 | /* 113499 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 40426 | /* 113502 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40427 | /* 113505 */ GIR_RootConstrainSelectedInstOperands, |
| 40428 | /* 113506 */ // GIR_Coverage, 661, |
| 40429 | /* 113506 */ GIR_EraseRootFromParent_Done, |
| 40430 | /* 113507 */ // Label 2509: @113507 |
| 40431 | /* 113507 */ GIM_Try, /*On fail goto*//*Label 2510*/ GIMT_Encode4(113540), // Rule ID 665 // |
| 40432 | /* 113512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 40433 | /* 113515 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 40434 | /* 113519 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40435 | /* 113523 */ // MIs[1] Operand 1 |
| 40436 | /* 113523 */ // No operand predicates |
| 40437 | /* 113523 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40438 | /* 113525 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 40439 | /* 113525 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8ri_ND), |
| 40440 | /* 113528 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40441 | /* 113530 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40442 | /* 113532 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 40443 | /* 113535 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40444 | /* 113538 */ GIR_RootConstrainSelectedInstOperands, |
| 40445 | /* 113539 */ // GIR_Coverage, 665, |
| 40446 | /* 113539 */ GIR_EraseRootFromParent_Done, |
| 40447 | /* 113540 */ // Label 2510: @113540 |
| 40448 | /* 113540 */ GIM_Try, /*On fail goto*//*Label 2511*/ GIMT_Encode4(113578), // Rule ID 677 // |
| 40449 | /* 113545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40450 | /* 113548 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 40451 | /* 113552 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SHL8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 40452 | /* 113552 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40453 | /* 113556 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40454 | /* 113562 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 40455 | /* 113566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8rCL), |
| 40456 | /* 113569 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40457 | /* 113571 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40458 | /* 113573 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40459 | /* 113576 */ GIR_RootConstrainSelectedInstOperands, |
| 40460 | /* 113577 */ // GIR_Coverage, 677, |
| 40461 | /* 113577 */ GIR_EraseRootFromParent_Done, |
| 40462 | /* 113578 */ // Label 2511: @113578 |
| 40463 | /* 113578 */ GIM_Try, /*On fail goto*//*Label 2512*/ GIMT_Encode4(113616), // Rule ID 681 // |
| 40464 | /* 113583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 40465 | /* 113586 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 40466 | /* 113590 */ // (shl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SHL8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 40467 | /* 113590 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40468 | /* 113594 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40469 | /* 113600 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 40470 | /* 113604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL8rCL_ND), |
| 40471 | /* 113607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40472 | /* 113609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40473 | /* 113611 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40474 | /* 113614 */ GIR_RootConstrainSelectedInstOperands, |
| 40475 | /* 113615 */ // GIR_Coverage, 681, |
| 40476 | /* 113615 */ GIR_EraseRootFromParent_Done, |
| 40477 | /* 113616 */ // Label 2512: @113616 |
| 40478 | /* 113616 */ GIM_Reject, |
| 40479 | /* 113617 */ // Label 2506: @113617 |
| 40480 | /* 113617 */ GIM_Reject, |
| 40481 | /* 113618 */ // Label 2502: @113618 |
| 40482 | /* 113618 */ GIM_Try, /*On fail goto*//*Label 2513*/ GIMT_Encode4(113832), |
| 40483 | /* 113623 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 40484 | /* 113626 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 40485 | /* 113629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40486 | /* 113633 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 40487 | /* 113637 */ GIM_Try, /*On fail goto*//*Label 2514*/ GIMT_Encode4(113663), // Rule ID 22757 // |
| 40488 | /* 113642 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40489 | /* 113645 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 40490 | /* 113649 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, 1:{ *:[i8] }) => (ADD16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src1) |
| 40491 | /* 113649 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rr), |
| 40492 | /* 113652 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40493 | /* 113654 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40494 | /* 113656 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40495 | /* 113658 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40496 | /* 113661 */ GIR_RootConstrainSelectedInstOperands, |
| 40497 | /* 113662 */ // GIR_Coverage, 22757, |
| 40498 | /* 113662 */ GIR_EraseRootFromParent_Done, |
| 40499 | /* 113663 */ // Label 2514: @113663 |
| 40500 | /* 113663 */ GIM_Try, /*On fail goto*//*Label 2515*/ GIMT_Encode4(113689), // Rule ID 22761 // |
| 40501 | /* 113668 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 40502 | /* 113671 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 40503 | /* 113675 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, 1:{ *:[i8] }) => (ADD16rr_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, GR16:{ *:[i16] }:$src1) |
| 40504 | /* 113675 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD16rr_ND), |
| 40505 | /* 113678 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40506 | /* 113680 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40507 | /* 113682 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40508 | /* 113684 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40509 | /* 113687 */ GIR_RootConstrainSelectedInstOperands, |
| 40510 | /* 113688 */ // GIR_Coverage, 22761, |
| 40511 | /* 113688 */ GIR_EraseRootFromParent_Done, |
| 40512 | /* 113689 */ // Label 2515: @113689 |
| 40513 | /* 113689 */ GIM_Try, /*On fail goto*//*Label 2516*/ GIMT_Encode4(113722), // Rule ID 662 // |
| 40514 | /* 113694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40515 | /* 113697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 40516 | /* 113701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40517 | /* 113705 */ // MIs[1] Operand 1 |
| 40518 | /* 113705 */ // No operand predicates |
| 40519 | /* 113705 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40520 | /* 113707 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 40521 | /* 113707 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16ri), |
| 40522 | /* 113710 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40523 | /* 113712 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40524 | /* 113714 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 40525 | /* 113717 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40526 | /* 113720 */ GIR_RootConstrainSelectedInstOperands, |
| 40527 | /* 113721 */ // GIR_Coverage, 662, |
| 40528 | /* 113721 */ GIR_EraseRootFromParent_Done, |
| 40529 | /* 113722 */ // Label 2516: @113722 |
| 40530 | /* 113722 */ GIM_Try, /*On fail goto*//*Label 2517*/ GIMT_Encode4(113755), // Rule ID 666 // |
| 40531 | /* 113727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 40532 | /* 113730 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 40533 | /* 113734 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40534 | /* 113738 */ // MIs[1] Operand 1 |
| 40535 | /* 113738 */ // No operand predicates |
| 40536 | /* 113738 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40537 | /* 113740 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 40538 | /* 113740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16ri_ND), |
| 40539 | /* 113743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40540 | /* 113745 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40541 | /* 113747 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 40542 | /* 113750 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40543 | /* 113753 */ GIR_RootConstrainSelectedInstOperands, |
| 40544 | /* 113754 */ // GIR_Coverage, 666, |
| 40545 | /* 113754 */ GIR_EraseRootFromParent_Done, |
| 40546 | /* 113755 */ // Label 2517: @113755 |
| 40547 | /* 113755 */ GIM_Try, /*On fail goto*//*Label 2518*/ GIMT_Encode4(113793), // Rule ID 678 // |
| 40548 | /* 113760 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40549 | /* 113763 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 40550 | /* 113767 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SHL16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 40551 | /* 113767 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40552 | /* 113771 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40553 | /* 113777 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 40554 | /* 113781 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16rCL), |
| 40555 | /* 113784 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40556 | /* 113786 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40557 | /* 113788 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40558 | /* 113791 */ GIR_RootConstrainSelectedInstOperands, |
| 40559 | /* 113792 */ // GIR_Coverage, 678, |
| 40560 | /* 113792 */ GIR_EraseRootFromParent_Done, |
| 40561 | /* 113793 */ // Label 2518: @113793 |
| 40562 | /* 113793 */ GIM_Try, /*On fail goto*//*Label 2519*/ GIMT_Encode4(113831), // Rule ID 682 // |
| 40563 | /* 113798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 40564 | /* 113801 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 40565 | /* 113805 */ // (shl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SHL16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 40566 | /* 113805 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40567 | /* 113809 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40568 | /* 113815 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 40569 | /* 113819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL16rCL_ND), |
| 40570 | /* 113822 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40571 | /* 113824 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40572 | /* 113826 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40573 | /* 113829 */ GIR_RootConstrainSelectedInstOperands, |
| 40574 | /* 113830 */ // GIR_Coverage, 682, |
| 40575 | /* 113830 */ GIR_EraseRootFromParent_Done, |
| 40576 | /* 113831 */ // Label 2519: @113831 |
| 40577 | /* 113831 */ GIM_Reject, |
| 40578 | /* 113832 */ // Label 2513: @113832 |
| 40579 | /* 113832 */ GIM_Reject, |
| 40580 | /* 113833 */ // Label 2503: @113833 |
| 40581 | /* 113833 */ GIM_Try, /*On fail goto*//*Label 2520*/ GIMT_Encode4(114445), |
| 40582 | /* 113838 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 40583 | /* 113841 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 40584 | /* 113844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40585 | /* 113848 */ GIM_Try, /*On fail goto*//*Label 2521*/ GIMT_Encode4(113958), // Rule ID 17662 // |
| 40586 | /* 113853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 40587 | /* 113856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40588 | /* 113860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40589 | /* 113864 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40590 | /* 113867 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40591 | /* 113871 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 40592 | /* 113875 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40593 | /* 113879 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40594 | /* 113881 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40595 | /* 113888 */ // (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] })) |
| 40596 | /* 113888 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 40597 | /* 113891 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 40598 | /* 113895 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40599 | /* 113900 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 40600 | /* 113902 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40601 | /* 113905 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 40602 | /* 113909 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40603 | /* 113914 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40604 | /* 113917 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 40605 | /* 113921 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 40606 | /* 113924 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 40607 | /* 113929 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 40608 | /* 113934 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 40609 | /* 113939 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX32rm), |
| 40610 | /* 113942 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40611 | /* 113944 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 40612 | /* 113948 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40613 | /* 113951 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40614 | /* 113956 */ GIR_RootConstrainSelectedInstOperands, |
| 40615 | /* 113957 */ // GIR_Coverage, 17662, |
| 40616 | /* 113957 */ GIR_EraseRootFromParent_Done, |
| 40617 | /* 113958 */ // Label 2521: @113958 |
| 40618 | /* 113958 */ GIM_Try, /*On fail goto*//*Label 2522*/ GIMT_Encode4(114068), // Rule ID 17694 // |
| 40619 | /* 113963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 40620 | /* 113966 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40621 | /* 113970 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40622 | /* 113974 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40623 | /* 113977 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40624 | /* 113981 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 40625 | /* 113985 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40626 | /* 113989 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40627 | /* 113991 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40628 | /* 113998 */ // (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] })) |
| 40629 | /* 113998 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 40630 | /* 114001 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 40631 | /* 114005 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40632 | /* 114010 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 40633 | /* 114012 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40634 | /* 114015 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 40635 | /* 114019 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40636 | /* 114024 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40637 | /* 114027 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 40638 | /* 114031 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 40639 | /* 114034 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 40640 | /* 114039 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 40641 | /* 114044 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 40642 | /* 114049 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX32rm_EVEX), |
| 40643 | /* 114052 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40644 | /* 114054 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 40645 | /* 114058 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40646 | /* 114061 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40647 | /* 114066 */ GIR_RootConstrainSelectedInstOperands, |
| 40648 | /* 114067 */ // GIR_Coverage, 17694, |
| 40649 | /* 114067 */ GIR_EraseRootFromParent_Done, |
| 40650 | /* 114068 */ // Label 2522: @114068 |
| 40651 | /* 114068 */ GIM_Try, /*On fail goto*//*Label 2523*/ GIMT_Encode4(114098), // Rule ID 22758 // |
| 40652 | /* 114073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40653 | /* 114076 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40654 | /* 114080 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 40655 | /* 114084 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, 1:{ *:[i8] }) => (ADD32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src1) |
| 40656 | /* 114084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rr), |
| 40657 | /* 114087 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40658 | /* 114089 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40659 | /* 114091 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40660 | /* 114093 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40661 | /* 114096 */ GIR_RootConstrainSelectedInstOperands, |
| 40662 | /* 114097 */ // GIR_Coverage, 22758, |
| 40663 | /* 114097 */ GIR_EraseRootFromParent_Done, |
| 40664 | /* 114098 */ // Label 2523: @114098 |
| 40665 | /* 114098 */ GIM_Try, /*On fail goto*//*Label 2524*/ GIMT_Encode4(114128), // Rule ID 22762 // |
| 40666 | /* 114103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 40667 | /* 114106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40668 | /* 114110 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 40669 | /* 114114 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, 1:{ *:[i8] }) => (ADD32rr_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src1) |
| 40670 | /* 114114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD32rr_ND), |
| 40671 | /* 114117 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40672 | /* 114119 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40673 | /* 114121 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40674 | /* 114123 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40675 | /* 114126 */ GIR_RootConstrainSelectedInstOperands, |
| 40676 | /* 114127 */ // GIR_Coverage, 22762, |
| 40677 | /* 114127 */ GIR_EraseRootFromParent_Done, |
| 40678 | /* 114128 */ // Label 2524: @114128 |
| 40679 | /* 114128 */ GIM_Try, /*On fail goto*//*Label 2525*/ GIMT_Encode4(114165), // Rule ID 663 // |
| 40680 | /* 114133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40681 | /* 114136 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40682 | /* 114140 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 40683 | /* 114144 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40684 | /* 114148 */ // MIs[1] Operand 1 |
| 40685 | /* 114148 */ // No operand predicates |
| 40686 | /* 114148 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40687 | /* 114150 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 40688 | /* 114150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32ri), |
| 40689 | /* 114153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40690 | /* 114155 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40691 | /* 114157 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 40692 | /* 114160 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40693 | /* 114163 */ GIR_RootConstrainSelectedInstOperands, |
| 40694 | /* 114164 */ // GIR_Coverage, 663, |
| 40695 | /* 114164 */ GIR_EraseRootFromParent_Done, |
| 40696 | /* 114165 */ // Label 2525: @114165 |
| 40697 | /* 114165 */ GIM_Try, /*On fail goto*//*Label 2526*/ GIMT_Encode4(114202), // Rule ID 667 // |
| 40698 | /* 114170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 40699 | /* 114173 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40700 | /* 114177 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 40701 | /* 114181 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40702 | /* 114185 */ // MIs[1] Operand 1 |
| 40703 | /* 114185 */ // No operand predicates |
| 40704 | /* 114185 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40705 | /* 114187 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 40706 | /* 114187 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32ri_ND), |
| 40707 | /* 114190 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40708 | /* 114192 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40709 | /* 114194 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 40710 | /* 114197 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40711 | /* 114200 */ GIR_RootConstrainSelectedInstOperands, |
| 40712 | /* 114201 */ // GIR_Coverage, 667, |
| 40713 | /* 114201 */ GIR_EraseRootFromParent_Done, |
| 40714 | /* 114202 */ // Label 2526: @114202 |
| 40715 | /* 114202 */ GIM_Try, /*On fail goto*//*Label 2527*/ GIMT_Encode4(114281), // Rule ID 17658 // |
| 40716 | /* 114207 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 40717 | /* 114210 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40718 | /* 114214 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40719 | /* 114218 */ // (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] })) |
| 40720 | /* 114218 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 40721 | /* 114221 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 40722 | /* 114225 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40723 | /* 114230 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 40724 | /* 114232 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40725 | /* 114235 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 40726 | /* 114239 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40727 | /* 114244 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40728 | /* 114247 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 40729 | /* 114251 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 40730 | /* 114254 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 40731 | /* 114259 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 40732 | /* 114264 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 40733 | /* 114269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX32rr), |
| 40734 | /* 114272 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40735 | /* 114274 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40736 | /* 114276 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40737 | /* 114279 */ GIR_RootConstrainSelectedInstOperands, |
| 40738 | /* 114280 */ // GIR_Coverage, 17658, |
| 40739 | /* 114280 */ GIR_EraseRootFromParent_Done, |
| 40740 | /* 114281 */ // Label 2527: @114281 |
| 40741 | /* 114281 */ GIM_Try, /*On fail goto*//*Label 2528*/ GIMT_Encode4(114360), // Rule ID 17690 // |
| 40742 | /* 114286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 40743 | /* 114289 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40744 | /* 114293 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40745 | /* 114297 */ // (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] })) |
| 40746 | /* 114297 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 40747 | /* 114300 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 40748 | /* 114304 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40749 | /* 114309 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 40750 | /* 114311 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 40751 | /* 114314 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 40752 | /* 114318 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40753 | /* 114323 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40754 | /* 114326 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 40755 | /* 114330 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 40756 | /* 114333 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 40757 | /* 114338 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 40758 | /* 114343 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 40759 | /* 114348 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX32rr_EVEX), |
| 40760 | /* 114351 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40761 | /* 114353 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40762 | /* 114355 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40763 | /* 114358 */ GIR_RootConstrainSelectedInstOperands, |
| 40764 | /* 114359 */ // GIR_Coverage, 17690, |
| 40765 | /* 114359 */ GIR_EraseRootFromParent_Done, |
| 40766 | /* 114360 */ // Label 2528: @114360 |
| 40767 | /* 114360 */ GIM_Try, /*On fail goto*//*Label 2529*/ GIMT_Encode4(114402), // Rule ID 679 // |
| 40768 | /* 114365 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40769 | /* 114368 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40770 | /* 114372 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 40771 | /* 114376 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHL32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 40772 | /* 114376 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40773 | /* 114380 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40774 | /* 114386 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 40775 | /* 114390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32rCL), |
| 40776 | /* 114393 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40777 | /* 114395 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40778 | /* 114397 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40779 | /* 114400 */ GIR_RootConstrainSelectedInstOperands, |
| 40780 | /* 114401 */ // GIR_Coverage, 679, |
| 40781 | /* 114401 */ GIR_EraseRootFromParent_Done, |
| 40782 | /* 114402 */ // Label 2529: @114402 |
| 40783 | /* 114402 */ GIM_Try, /*On fail goto*//*Label 2530*/ GIMT_Encode4(114444), // Rule ID 683 // |
| 40784 | /* 114407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 40785 | /* 114410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 40786 | /* 114414 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 40787 | /* 114418 */ // (shl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHL32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 40788 | /* 114418 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40789 | /* 114422 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40790 | /* 114428 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 40791 | /* 114432 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL32rCL_ND), |
| 40792 | /* 114435 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40793 | /* 114437 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40794 | /* 114439 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40795 | /* 114442 */ GIR_RootConstrainSelectedInstOperands, |
| 40796 | /* 114443 */ // GIR_Coverage, 683, |
| 40797 | /* 114443 */ GIR_EraseRootFromParent_Done, |
| 40798 | /* 114444 */ // Label 2530: @114444 |
| 40799 | /* 114444 */ GIM_Reject, |
| 40800 | /* 114445 */ // Label 2520: @114445 |
| 40801 | /* 114445 */ GIM_Reject, |
| 40802 | /* 114446 */ // Label 2504: @114446 |
| 40803 | /* 114446 */ GIM_Try, /*On fail goto*//*Label 2531*/ GIMT_Encode4(115058), |
| 40804 | /* 114451 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 40805 | /* 114454 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 40806 | /* 114457 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40807 | /* 114461 */ GIM_Try, /*On fail goto*//*Label 2532*/ GIMT_Encode4(114571), // Rule ID 17663 // |
| 40808 | /* 114466 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 40809 | /* 114469 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40810 | /* 114473 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40811 | /* 114477 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40812 | /* 114480 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40813 | /* 114484 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40814 | /* 114488 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40815 | /* 114492 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40816 | /* 114494 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40817 | /* 114501 */ // (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] })) |
| 40818 | /* 114501 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 40819 | /* 114504 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 40820 | /* 114508 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40821 | /* 114513 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 40822 | /* 114515 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 40823 | /* 114518 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 40824 | /* 114522 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40825 | /* 114527 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40826 | /* 114530 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 40827 | /* 114534 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 40828 | /* 114537 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 40829 | /* 114542 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 40830 | /* 114547 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 40831 | /* 114552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX64rm), |
| 40832 | /* 114555 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40833 | /* 114557 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 40834 | /* 114561 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40835 | /* 114564 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40836 | /* 114569 */ GIR_RootConstrainSelectedInstOperands, |
| 40837 | /* 114570 */ // GIR_Coverage, 17663, |
| 40838 | /* 114570 */ GIR_EraseRootFromParent_Done, |
| 40839 | /* 114571 */ // Label 2532: @114571 |
| 40840 | /* 114571 */ GIM_Try, /*On fail goto*//*Label 2533*/ GIMT_Encode4(114681), // Rule ID 17695 // |
| 40841 | /* 114576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 40842 | /* 114579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 40843 | /* 114583 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 40844 | /* 114587 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 40845 | /* 114590 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 40846 | /* 114594 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 40847 | /* 114598 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40848 | /* 114602 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40849 | /* 114604 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 40850 | /* 114611 */ // (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] })) |
| 40851 | /* 114611 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 40852 | /* 114614 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 40853 | /* 114618 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40854 | /* 114623 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 40855 | /* 114625 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 40856 | /* 114628 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 40857 | /* 114632 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40858 | /* 114637 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40859 | /* 114640 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 40860 | /* 114644 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 40861 | /* 114647 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 40862 | /* 114652 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 40863 | /* 114657 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 40864 | /* 114662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX64rm_EVEX), |
| 40865 | /* 114665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40866 | /* 114667 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 40867 | /* 114671 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40868 | /* 114674 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 40869 | /* 114679 */ GIR_RootConstrainSelectedInstOperands, |
| 40870 | /* 114680 */ // GIR_Coverage, 17695, |
| 40871 | /* 114680 */ GIR_EraseRootFromParent_Done, |
| 40872 | /* 114681 */ // Label 2533: @114681 |
| 40873 | /* 114681 */ GIM_Try, /*On fail goto*//*Label 2534*/ GIMT_Encode4(114711), // Rule ID 22759 // |
| 40874 | /* 114686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40875 | /* 114689 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40876 | /* 114693 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 40877 | /* 114697 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, 1:{ *:[i8] }) => (ADD64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src1) |
| 40878 | /* 114697 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rr), |
| 40879 | /* 114700 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40880 | /* 114702 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40881 | /* 114704 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40882 | /* 114706 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40883 | /* 114709 */ GIR_RootConstrainSelectedInstOperands, |
| 40884 | /* 114710 */ // GIR_Coverage, 22759, |
| 40885 | /* 114710 */ GIR_EraseRootFromParent_Done, |
| 40886 | /* 114711 */ // Label 2534: @114711 |
| 40887 | /* 114711 */ GIM_Try, /*On fail goto*//*Label 2535*/ GIMT_Encode4(114741), // Rule ID 22763 // |
| 40888 | /* 114716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 40889 | /* 114719 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40890 | /* 114723 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 1, |
| 40891 | /* 114727 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, 1:{ *:[i8] }) => (ADD64rr_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src1) |
| 40892 | /* 114727 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD64rr_ND), |
| 40893 | /* 114730 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40894 | /* 114732 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40895 | /* 114734 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40896 | /* 114736 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40897 | /* 114739 */ GIR_RootConstrainSelectedInstOperands, |
| 40898 | /* 114740 */ // GIR_Coverage, 22763, |
| 40899 | /* 114740 */ GIR_EraseRootFromParent_Done, |
| 40900 | /* 114741 */ // Label 2535: @114741 |
| 40901 | /* 114741 */ GIM_Try, /*On fail goto*//*Label 2536*/ GIMT_Encode4(114778), // Rule ID 664 // |
| 40902 | /* 114746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40903 | /* 114749 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40904 | /* 114753 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 40905 | /* 114757 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40906 | /* 114761 */ // MIs[1] Operand 1 |
| 40907 | /* 114761 */ // No operand predicates |
| 40908 | /* 114761 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40909 | /* 114763 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 40910 | /* 114763 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64ri), |
| 40911 | /* 114766 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40912 | /* 114768 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40913 | /* 114770 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 40914 | /* 114773 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40915 | /* 114776 */ GIR_RootConstrainSelectedInstOperands, |
| 40916 | /* 114777 */ // GIR_Coverage, 664, |
| 40917 | /* 114777 */ GIR_EraseRootFromParent_Done, |
| 40918 | /* 114778 */ // Label 2536: @114778 |
| 40919 | /* 114778 */ GIM_Try, /*On fail goto*//*Label 2537*/ GIMT_Encode4(114815), // Rule ID 668 // |
| 40920 | /* 114783 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 40921 | /* 114786 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40922 | /* 114790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 40923 | /* 114794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 40924 | /* 114798 */ // MIs[1] Operand 1 |
| 40925 | /* 114798 */ // No operand predicates |
| 40926 | /* 114798 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 40927 | /* 114800 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SHL64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 40928 | /* 114800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64ri_ND), |
| 40929 | /* 114803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40930 | /* 114805 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40931 | /* 114807 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 40932 | /* 114810 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 40933 | /* 114813 */ GIR_RootConstrainSelectedInstOperands, |
| 40934 | /* 114814 */ // GIR_Coverage, 668, |
| 40935 | /* 114814 */ GIR_EraseRootFromParent_Done, |
| 40936 | /* 114815 */ // Label 2537: @114815 |
| 40937 | /* 114815 */ GIM_Try, /*On fail goto*//*Label 2538*/ GIMT_Encode4(114894), // Rule ID 17659 // |
| 40938 | /* 114820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 40939 | /* 114823 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40940 | /* 114827 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40941 | /* 114831 */ // (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] })) |
| 40942 | /* 114831 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 40943 | /* 114834 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 40944 | /* 114838 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40945 | /* 114843 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 40946 | /* 114845 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 40947 | /* 114848 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 40948 | /* 114852 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40949 | /* 114857 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40950 | /* 114860 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 40951 | /* 114864 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 40952 | /* 114867 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 40953 | /* 114872 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 40954 | /* 114877 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 40955 | /* 114882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX64rr), |
| 40956 | /* 114885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40957 | /* 114887 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40958 | /* 114889 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40959 | /* 114892 */ GIR_RootConstrainSelectedInstOperands, |
| 40960 | /* 114893 */ // GIR_Coverage, 17659, |
| 40961 | /* 114893 */ GIR_EraseRootFromParent_Done, |
| 40962 | /* 114894 */ // Label 2538: @114894 |
| 40963 | /* 114894 */ GIM_Try, /*On fail goto*//*Label 2539*/ GIMT_Encode4(114973), // Rule ID 17691 // |
| 40964 | /* 114899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 40965 | /* 114902 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40966 | /* 114906 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 40967 | /* 114910 */ // (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] })) |
| 40968 | /* 114910 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 40969 | /* 114913 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 40970 | /* 114917 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40971 | /* 114922 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 40972 | /* 114924 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 40973 | /* 114927 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 40974 | /* 114931 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40975 | /* 114936 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 40976 | /* 114939 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 40977 | /* 114943 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 40978 | /* 114946 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 40979 | /* 114951 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 40980 | /* 114956 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 40981 | /* 114961 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLX64rr_EVEX), |
| 40982 | /* 114964 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40983 | /* 114966 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 40984 | /* 114968 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 40985 | /* 114971 */ GIR_RootConstrainSelectedInstOperands, |
| 40986 | /* 114972 */ // GIR_Coverage, 17691, |
| 40987 | /* 114972 */ GIR_EraseRootFromParent_Done, |
| 40988 | /* 114973 */ // Label 2539: @114973 |
| 40989 | /* 114973 */ GIM_Try, /*On fail goto*//*Label 2540*/ GIMT_Encode4(115015), // Rule ID 680 // |
| 40990 | /* 114978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 40991 | /* 114981 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 40992 | /* 114985 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 40993 | /* 114989 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHL64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 40994 | /* 114989 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 40995 | /* 114993 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 40996 | /* 114999 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 40997 | /* 115003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64rCL), |
| 40998 | /* 115006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 40999 | /* 115008 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41000 | /* 115010 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41001 | /* 115013 */ GIR_RootConstrainSelectedInstOperands, |
| 41002 | /* 115014 */ // GIR_Coverage, 680, |
| 41003 | /* 115014 */ GIR_EraseRootFromParent_Done, |
| 41004 | /* 115015 */ // Label 2540: @115015 |
| 41005 | /* 115015 */ GIM_Try, /*On fail goto*//*Label 2541*/ GIMT_Encode4(115057), // Rule ID 684 // |
| 41006 | /* 115020 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41007 | /* 115023 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41008 | /* 115027 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41009 | /* 115031 */ // (shl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHL64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 41010 | /* 115031 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41011 | /* 115035 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41012 | /* 115041 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41013 | /* 115045 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHL64rCL_ND), |
| 41014 | /* 115048 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41015 | /* 115050 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41016 | /* 115052 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41017 | /* 115055 */ GIR_RootConstrainSelectedInstOperands, |
| 41018 | /* 115056 */ // GIR_Coverage, 684, |
| 41019 | /* 115056 */ GIR_EraseRootFromParent_Done, |
| 41020 | /* 115057 */ // Label 2541: @115057 |
| 41021 | /* 115057 */ GIM_Reject, |
| 41022 | /* 115058 */ // Label 2531: @115058 |
| 41023 | /* 115058 */ GIM_Reject, |
| 41024 | /* 115059 */ // Label 2505: @115059 |
| 41025 | /* 115059 */ GIM_Reject, |
| 41026 | /* 115060 */ // Label 28: @115060 |
| 41027 | /* 115060 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 2546*/ GIMT_Encode4(116519), |
| 41028 | /* 115071 */ /*GILLT_s8*//*Label 2542*/ GIMT_Encode4(115087), |
| 41029 | /* 115075 */ /*GILLT_s16*//*Label 2543*/ GIMT_Encode4(115250), |
| 41030 | /* 115079 */ /*GILLT_s32*//*Label 2544*/ GIMT_Encode4(115413), |
| 41031 | /* 115083 */ /*GILLT_s64*//*Label 2545*/ GIMT_Encode4(115966), |
| 41032 | /* 115087 */ // Label 2542: @115087 |
| 41033 | /* 115087 */ GIM_Try, /*On fail goto*//*Label 2547*/ GIMT_Encode4(115249), |
| 41034 | /* 115092 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 41035 | /* 115095 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41036 | /* 115098 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41037 | /* 115102 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41038 | /* 115106 */ GIM_Try, /*On fail goto*//*Label 2548*/ GIMT_Encode4(115139), // Rule ID 693 // |
| 41039 | /* 115111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41040 | /* 115114 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41041 | /* 115118 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41042 | /* 115122 */ // MIs[1] Operand 1 |
| 41043 | /* 115122 */ // No operand predicates |
| 41044 | /* 115122 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41045 | /* 115124 */ // (srl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41046 | /* 115124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8ri), |
| 41047 | /* 115127 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41048 | /* 115129 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41049 | /* 115131 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41050 | /* 115134 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41051 | /* 115137 */ GIR_RootConstrainSelectedInstOperands, |
| 41052 | /* 115138 */ // GIR_Coverage, 693, |
| 41053 | /* 115138 */ GIR_EraseRootFromParent_Done, |
| 41054 | /* 115139 */ // Label 2548: @115139 |
| 41055 | /* 115139 */ GIM_Try, /*On fail goto*//*Label 2549*/ GIMT_Encode4(115172), // Rule ID 697 // |
| 41056 | /* 115144 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41057 | /* 115147 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41058 | /* 115151 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41059 | /* 115155 */ // MIs[1] Operand 1 |
| 41060 | /* 115155 */ // No operand predicates |
| 41061 | /* 115155 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41062 | /* 115157 */ // (srl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41063 | /* 115157 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8ri_ND), |
| 41064 | /* 115160 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41065 | /* 115162 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41066 | /* 115164 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41067 | /* 115167 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41068 | /* 115170 */ GIR_RootConstrainSelectedInstOperands, |
| 41069 | /* 115171 */ // GIR_Coverage, 697, |
| 41070 | /* 115171 */ GIR_EraseRootFromParent_Done, |
| 41071 | /* 115172 */ // Label 2549: @115172 |
| 41072 | /* 115172 */ GIM_Try, /*On fail goto*//*Label 2550*/ GIMT_Encode4(115210), // Rule ID 709 // |
| 41073 | /* 115177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41074 | /* 115180 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41075 | /* 115184 */ // (srl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SHR8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 41076 | /* 115184 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41077 | /* 115188 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41078 | /* 115194 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41079 | /* 115198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8rCL), |
| 41080 | /* 115201 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41081 | /* 115203 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41082 | /* 115205 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41083 | /* 115208 */ GIR_RootConstrainSelectedInstOperands, |
| 41084 | /* 115209 */ // GIR_Coverage, 709, |
| 41085 | /* 115209 */ GIR_EraseRootFromParent_Done, |
| 41086 | /* 115210 */ // Label 2550: @115210 |
| 41087 | /* 115210 */ GIM_Try, /*On fail goto*//*Label 2551*/ GIMT_Encode4(115248), // Rule ID 713 // |
| 41088 | /* 115215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41089 | /* 115218 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41090 | /* 115222 */ // (srl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SHR8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 41091 | /* 115222 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41092 | /* 115226 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41093 | /* 115232 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41094 | /* 115236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR8rCL_ND), |
| 41095 | /* 115239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41096 | /* 115241 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41097 | /* 115243 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41098 | /* 115246 */ GIR_RootConstrainSelectedInstOperands, |
| 41099 | /* 115247 */ // GIR_Coverage, 713, |
| 41100 | /* 115247 */ GIR_EraseRootFromParent_Done, |
| 41101 | /* 115248 */ // Label 2551: @115248 |
| 41102 | /* 115248 */ GIM_Reject, |
| 41103 | /* 115249 */ // Label 2547: @115249 |
| 41104 | /* 115249 */ GIM_Reject, |
| 41105 | /* 115250 */ // Label 2543: @115250 |
| 41106 | /* 115250 */ GIM_Try, /*On fail goto*//*Label 2552*/ GIMT_Encode4(115412), |
| 41107 | /* 115255 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 41108 | /* 115258 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41109 | /* 115261 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41110 | /* 115265 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41111 | /* 115269 */ GIM_Try, /*On fail goto*//*Label 2553*/ GIMT_Encode4(115302), // Rule ID 694 // |
| 41112 | /* 115274 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41113 | /* 115277 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41114 | /* 115281 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41115 | /* 115285 */ // MIs[1] Operand 1 |
| 41116 | /* 115285 */ // No operand predicates |
| 41117 | /* 115285 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41118 | /* 115287 */ // (srl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41119 | /* 115287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16ri), |
| 41120 | /* 115290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41121 | /* 115292 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41122 | /* 115294 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41123 | /* 115297 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41124 | /* 115300 */ GIR_RootConstrainSelectedInstOperands, |
| 41125 | /* 115301 */ // GIR_Coverage, 694, |
| 41126 | /* 115301 */ GIR_EraseRootFromParent_Done, |
| 41127 | /* 115302 */ // Label 2553: @115302 |
| 41128 | /* 115302 */ GIM_Try, /*On fail goto*//*Label 2554*/ GIMT_Encode4(115335), // Rule ID 698 // |
| 41129 | /* 115307 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41130 | /* 115310 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41131 | /* 115314 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41132 | /* 115318 */ // MIs[1] Operand 1 |
| 41133 | /* 115318 */ // No operand predicates |
| 41134 | /* 115318 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41135 | /* 115320 */ // (srl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41136 | /* 115320 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16ri_ND), |
| 41137 | /* 115323 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41138 | /* 115325 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41139 | /* 115327 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41140 | /* 115330 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41141 | /* 115333 */ GIR_RootConstrainSelectedInstOperands, |
| 41142 | /* 115334 */ // GIR_Coverage, 698, |
| 41143 | /* 115334 */ GIR_EraseRootFromParent_Done, |
| 41144 | /* 115335 */ // Label 2554: @115335 |
| 41145 | /* 115335 */ GIM_Try, /*On fail goto*//*Label 2555*/ GIMT_Encode4(115373), // Rule ID 710 // |
| 41146 | /* 115340 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41147 | /* 115343 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41148 | /* 115347 */ // (srl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SHR16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 41149 | /* 115347 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41150 | /* 115351 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41151 | /* 115357 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41152 | /* 115361 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16rCL), |
| 41153 | /* 115364 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41154 | /* 115366 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41155 | /* 115368 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41156 | /* 115371 */ GIR_RootConstrainSelectedInstOperands, |
| 41157 | /* 115372 */ // GIR_Coverage, 710, |
| 41158 | /* 115372 */ GIR_EraseRootFromParent_Done, |
| 41159 | /* 115373 */ // Label 2555: @115373 |
| 41160 | /* 115373 */ GIM_Try, /*On fail goto*//*Label 2556*/ GIMT_Encode4(115411), // Rule ID 714 // |
| 41161 | /* 115378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41162 | /* 115381 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41163 | /* 115385 */ // (srl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SHR16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 41164 | /* 115385 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41165 | /* 115389 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41166 | /* 115395 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41167 | /* 115399 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR16rCL_ND), |
| 41168 | /* 115402 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41169 | /* 115404 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41170 | /* 115406 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41171 | /* 115409 */ GIR_RootConstrainSelectedInstOperands, |
| 41172 | /* 115410 */ // GIR_Coverage, 714, |
| 41173 | /* 115410 */ GIR_EraseRootFromParent_Done, |
| 41174 | /* 115411 */ // Label 2556: @115411 |
| 41175 | /* 115411 */ GIM_Reject, |
| 41176 | /* 115412 */ // Label 2552: @115412 |
| 41177 | /* 115412 */ GIM_Reject, |
| 41178 | /* 115413 */ // Label 2544: @115413 |
| 41179 | /* 115413 */ GIM_Try, /*On fail goto*//*Label 2557*/ GIMT_Encode4(115965), |
| 41180 | /* 115418 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 41181 | /* 115421 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41182 | /* 115424 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41183 | /* 115428 */ GIM_Try, /*On fail goto*//*Label 2558*/ GIMT_Encode4(115538), // Rule ID 17654 // |
| 41184 | /* 115433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41185 | /* 115436 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41186 | /* 115440 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41187 | /* 115444 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41188 | /* 115447 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41189 | /* 115451 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 41190 | /* 115455 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41191 | /* 115459 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41192 | /* 115461 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41193 | /* 115468 */ // (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] })) |
| 41194 | /* 115468 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41195 | /* 115471 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41196 | /* 115475 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41197 | /* 115480 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41198 | /* 115482 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41199 | /* 115485 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41200 | /* 115489 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41201 | /* 115494 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41202 | /* 115497 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41203 | /* 115501 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41204 | /* 115504 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41205 | /* 115509 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41206 | /* 115514 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41207 | /* 115519 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX32rm), |
| 41208 | /* 115522 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41209 | /* 115524 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41210 | /* 115528 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41211 | /* 115531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41212 | /* 115536 */ GIR_RootConstrainSelectedInstOperands, |
| 41213 | /* 115537 */ // GIR_Coverage, 17654, |
| 41214 | /* 115537 */ GIR_EraseRootFromParent_Done, |
| 41215 | /* 115538 */ // Label 2558: @115538 |
| 41216 | /* 115538 */ GIM_Try, /*On fail goto*//*Label 2559*/ GIMT_Encode4(115648), // Rule ID 17686 // |
| 41217 | /* 115543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41218 | /* 115546 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41219 | /* 115550 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41220 | /* 115554 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41221 | /* 115557 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41222 | /* 115561 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 41223 | /* 115565 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41224 | /* 115569 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41225 | /* 115571 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41226 | /* 115578 */ // (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] })) |
| 41227 | /* 115578 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41228 | /* 115581 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41229 | /* 115585 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41230 | /* 115590 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41231 | /* 115592 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41232 | /* 115595 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41233 | /* 115599 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41234 | /* 115604 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41235 | /* 115607 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41236 | /* 115611 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41237 | /* 115614 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41238 | /* 115619 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41239 | /* 115624 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41240 | /* 115629 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX32rm_EVEX), |
| 41241 | /* 115632 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41242 | /* 115634 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41243 | /* 115638 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41244 | /* 115641 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41245 | /* 115646 */ GIR_RootConstrainSelectedInstOperands, |
| 41246 | /* 115647 */ // GIR_Coverage, 17686, |
| 41247 | /* 115647 */ GIR_EraseRootFromParent_Done, |
| 41248 | /* 115648 */ // Label 2559: @115648 |
| 41249 | /* 115648 */ GIM_Try, /*On fail goto*//*Label 2560*/ GIMT_Encode4(115685), // Rule ID 695 // |
| 41250 | /* 115653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41251 | /* 115656 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41252 | /* 115660 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41253 | /* 115664 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41254 | /* 115668 */ // MIs[1] Operand 1 |
| 41255 | /* 115668 */ // No operand predicates |
| 41256 | /* 115668 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41257 | /* 115670 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41258 | /* 115670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32ri), |
| 41259 | /* 115673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41260 | /* 115675 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41261 | /* 115677 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41262 | /* 115680 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41263 | /* 115683 */ GIR_RootConstrainSelectedInstOperands, |
| 41264 | /* 115684 */ // GIR_Coverage, 695, |
| 41265 | /* 115684 */ GIR_EraseRootFromParent_Done, |
| 41266 | /* 115685 */ // Label 2560: @115685 |
| 41267 | /* 115685 */ GIM_Try, /*On fail goto*//*Label 2561*/ GIMT_Encode4(115722), // Rule ID 699 // |
| 41268 | /* 115690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41269 | /* 115693 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41270 | /* 115697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41271 | /* 115701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41272 | /* 115705 */ // MIs[1] Operand 1 |
| 41273 | /* 115705 */ // No operand predicates |
| 41274 | /* 115705 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41275 | /* 115707 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41276 | /* 115707 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32ri_ND), |
| 41277 | /* 115710 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41278 | /* 115712 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41279 | /* 115714 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41280 | /* 115717 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41281 | /* 115720 */ GIR_RootConstrainSelectedInstOperands, |
| 41282 | /* 115721 */ // GIR_Coverage, 699, |
| 41283 | /* 115721 */ GIR_EraseRootFromParent_Done, |
| 41284 | /* 115722 */ // Label 2561: @115722 |
| 41285 | /* 115722 */ GIM_Try, /*On fail goto*//*Label 2562*/ GIMT_Encode4(115801), // Rule ID 17650 // |
| 41286 | /* 115727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41287 | /* 115730 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41288 | /* 115734 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41289 | /* 115738 */ // (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] })) |
| 41290 | /* 115738 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41291 | /* 115741 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41292 | /* 115745 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41293 | /* 115750 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41294 | /* 115752 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41295 | /* 115755 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41296 | /* 115759 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41297 | /* 115764 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41298 | /* 115767 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41299 | /* 115771 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41300 | /* 115774 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41301 | /* 115779 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41302 | /* 115784 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41303 | /* 115789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX32rr), |
| 41304 | /* 115792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41305 | /* 115794 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41306 | /* 115796 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41307 | /* 115799 */ GIR_RootConstrainSelectedInstOperands, |
| 41308 | /* 115800 */ // GIR_Coverage, 17650, |
| 41309 | /* 115800 */ GIR_EraseRootFromParent_Done, |
| 41310 | /* 115801 */ // Label 2562: @115801 |
| 41311 | /* 115801 */ GIM_Try, /*On fail goto*//*Label 2563*/ GIMT_Encode4(115880), // Rule ID 17682 // |
| 41312 | /* 115806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41313 | /* 115809 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41314 | /* 115813 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41315 | /* 115817 */ // (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] })) |
| 41316 | /* 115817 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41317 | /* 115820 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41318 | /* 115824 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41319 | /* 115829 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41320 | /* 115831 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41321 | /* 115834 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41322 | /* 115838 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41323 | /* 115843 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41324 | /* 115846 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41325 | /* 115850 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41326 | /* 115853 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41327 | /* 115858 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41328 | /* 115863 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41329 | /* 115868 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX32rr_EVEX), |
| 41330 | /* 115871 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41331 | /* 115873 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41332 | /* 115875 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41333 | /* 115878 */ GIR_RootConstrainSelectedInstOperands, |
| 41334 | /* 115879 */ // GIR_Coverage, 17682, |
| 41335 | /* 115879 */ GIR_EraseRootFromParent_Done, |
| 41336 | /* 115880 */ // Label 2563: @115880 |
| 41337 | /* 115880 */ GIM_Try, /*On fail goto*//*Label 2564*/ GIMT_Encode4(115922), // Rule ID 711 // |
| 41338 | /* 115885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41339 | /* 115888 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41340 | /* 115892 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41341 | /* 115896 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHR32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 41342 | /* 115896 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41343 | /* 115900 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41344 | /* 115906 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41345 | /* 115910 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32rCL), |
| 41346 | /* 115913 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41347 | /* 115915 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41348 | /* 115917 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41349 | /* 115920 */ GIR_RootConstrainSelectedInstOperands, |
| 41350 | /* 115921 */ // GIR_Coverage, 711, |
| 41351 | /* 115921 */ GIR_EraseRootFromParent_Done, |
| 41352 | /* 115922 */ // Label 2564: @115922 |
| 41353 | /* 115922 */ GIM_Try, /*On fail goto*//*Label 2565*/ GIMT_Encode4(115964), // Rule ID 715 // |
| 41354 | /* 115927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41355 | /* 115930 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41356 | /* 115934 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41357 | /* 115938 */ // (srl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHR32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 41358 | /* 115938 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41359 | /* 115942 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41360 | /* 115948 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41361 | /* 115952 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR32rCL_ND), |
| 41362 | /* 115955 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41363 | /* 115957 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41364 | /* 115959 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41365 | /* 115962 */ GIR_RootConstrainSelectedInstOperands, |
| 41366 | /* 115963 */ // GIR_Coverage, 715, |
| 41367 | /* 115963 */ GIR_EraseRootFromParent_Done, |
| 41368 | /* 115964 */ // Label 2565: @115964 |
| 41369 | /* 115964 */ GIM_Reject, |
| 41370 | /* 115965 */ // Label 2557: @115965 |
| 41371 | /* 115965 */ GIM_Reject, |
| 41372 | /* 115966 */ // Label 2545: @115966 |
| 41373 | /* 115966 */ GIM_Try, /*On fail goto*//*Label 2566*/ GIMT_Encode4(116518), |
| 41374 | /* 115971 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 41375 | /* 115974 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41376 | /* 115977 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41377 | /* 115981 */ GIM_Try, /*On fail goto*//*Label 2567*/ GIMT_Encode4(116091), // Rule ID 17655 // |
| 41378 | /* 115986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41379 | /* 115989 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41380 | /* 115993 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41381 | /* 115997 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41382 | /* 116000 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41383 | /* 116004 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41384 | /* 116008 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41385 | /* 116012 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41386 | /* 116014 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41387 | /* 116021 */ // (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] })) |
| 41388 | /* 116021 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 41389 | /* 116024 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41390 | /* 116028 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41391 | /* 116033 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41392 | /* 116035 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 41393 | /* 116038 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41394 | /* 116042 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41395 | /* 116047 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41396 | /* 116050 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41397 | /* 116054 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41398 | /* 116057 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41399 | /* 116062 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41400 | /* 116067 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41401 | /* 116072 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX64rm), |
| 41402 | /* 116075 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41403 | /* 116077 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41404 | /* 116081 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41405 | /* 116084 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41406 | /* 116089 */ GIR_RootConstrainSelectedInstOperands, |
| 41407 | /* 116090 */ // GIR_Coverage, 17655, |
| 41408 | /* 116090 */ GIR_EraseRootFromParent_Done, |
| 41409 | /* 116091 */ // Label 2567: @116091 |
| 41410 | /* 116091 */ GIM_Try, /*On fail goto*//*Label 2568*/ GIMT_Encode4(116201), // Rule ID 17687 // |
| 41411 | /* 116096 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41412 | /* 116099 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41413 | /* 116103 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41414 | /* 116107 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41415 | /* 116110 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41416 | /* 116114 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41417 | /* 116118 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41418 | /* 116122 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41419 | /* 116124 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41420 | /* 116131 */ // (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] })) |
| 41421 | /* 116131 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 41422 | /* 116134 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41423 | /* 116138 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41424 | /* 116143 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41425 | /* 116145 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 41426 | /* 116148 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41427 | /* 116152 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41428 | /* 116157 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41429 | /* 116160 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41430 | /* 116164 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41431 | /* 116167 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41432 | /* 116172 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41433 | /* 116177 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41434 | /* 116182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX64rm_EVEX), |
| 41435 | /* 116185 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41436 | /* 116187 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41437 | /* 116191 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41438 | /* 116194 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41439 | /* 116199 */ GIR_RootConstrainSelectedInstOperands, |
| 41440 | /* 116200 */ // GIR_Coverage, 17687, |
| 41441 | /* 116200 */ GIR_EraseRootFromParent_Done, |
| 41442 | /* 116201 */ // Label 2568: @116201 |
| 41443 | /* 116201 */ GIM_Try, /*On fail goto*//*Label 2569*/ GIMT_Encode4(116238), // Rule ID 696 // |
| 41444 | /* 116206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41445 | /* 116209 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41446 | /* 116213 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41447 | /* 116217 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41448 | /* 116221 */ // MIs[1] Operand 1 |
| 41449 | /* 116221 */ // No operand predicates |
| 41450 | /* 116221 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41451 | /* 116223 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41452 | /* 116223 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64ri), |
| 41453 | /* 116226 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41454 | /* 116228 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41455 | /* 116230 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41456 | /* 116233 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41457 | /* 116236 */ GIR_RootConstrainSelectedInstOperands, |
| 41458 | /* 116237 */ // GIR_Coverage, 696, |
| 41459 | /* 116237 */ GIR_EraseRootFromParent_Done, |
| 41460 | /* 116238 */ // Label 2569: @116238 |
| 41461 | /* 116238 */ GIM_Try, /*On fail goto*//*Label 2570*/ GIMT_Encode4(116275), // Rule ID 700 // |
| 41462 | /* 116243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41463 | /* 116246 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41464 | /* 116250 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41465 | /* 116254 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41466 | /* 116258 */ // MIs[1] Operand 1 |
| 41467 | /* 116258 */ // No operand predicates |
| 41468 | /* 116258 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41469 | /* 116260 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SHR64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41470 | /* 116260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64ri_ND), |
| 41471 | /* 116263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41472 | /* 116265 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41473 | /* 116267 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41474 | /* 116270 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41475 | /* 116273 */ GIR_RootConstrainSelectedInstOperands, |
| 41476 | /* 116274 */ // GIR_Coverage, 700, |
| 41477 | /* 116274 */ GIR_EraseRootFromParent_Done, |
| 41478 | /* 116275 */ // Label 2570: @116275 |
| 41479 | /* 116275 */ GIM_Try, /*On fail goto*//*Label 2571*/ GIMT_Encode4(116354), // Rule ID 17651 // |
| 41480 | /* 116280 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41481 | /* 116283 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41482 | /* 116287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41483 | /* 116291 */ // (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] })) |
| 41484 | /* 116291 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 41485 | /* 116294 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41486 | /* 116298 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41487 | /* 116303 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41488 | /* 116305 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 41489 | /* 116308 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41490 | /* 116312 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41491 | /* 116317 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41492 | /* 116320 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41493 | /* 116324 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41494 | /* 116327 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41495 | /* 116332 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41496 | /* 116337 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41497 | /* 116342 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX64rr), |
| 41498 | /* 116345 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41499 | /* 116347 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41500 | /* 116349 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41501 | /* 116352 */ GIR_RootConstrainSelectedInstOperands, |
| 41502 | /* 116353 */ // GIR_Coverage, 17651, |
| 41503 | /* 116353 */ GIR_EraseRootFromParent_Done, |
| 41504 | /* 116354 */ // Label 2571: @116354 |
| 41505 | /* 116354 */ GIM_Try, /*On fail goto*//*Label 2572*/ GIMT_Encode4(116433), // Rule ID 17683 // |
| 41506 | /* 116359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41507 | /* 116362 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41508 | /* 116366 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41509 | /* 116370 */ // (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] })) |
| 41510 | /* 116370 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 41511 | /* 116373 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41512 | /* 116377 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41513 | /* 116382 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41514 | /* 116384 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 41515 | /* 116387 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41516 | /* 116391 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41517 | /* 116396 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41518 | /* 116399 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41519 | /* 116403 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41520 | /* 116406 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41521 | /* 116411 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41522 | /* 116416 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41523 | /* 116421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRX64rr_EVEX), |
| 41524 | /* 116424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41525 | /* 116426 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41526 | /* 116428 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41527 | /* 116431 */ GIR_RootConstrainSelectedInstOperands, |
| 41528 | /* 116432 */ // GIR_Coverage, 17683, |
| 41529 | /* 116432 */ GIR_EraseRootFromParent_Done, |
| 41530 | /* 116433 */ // Label 2572: @116433 |
| 41531 | /* 116433 */ GIM_Try, /*On fail goto*//*Label 2573*/ GIMT_Encode4(116475), // Rule ID 712 // |
| 41532 | /* 116438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41533 | /* 116441 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41534 | /* 116445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41535 | /* 116449 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHR64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 41536 | /* 116449 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41537 | /* 116453 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41538 | /* 116459 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41539 | /* 116463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64rCL), |
| 41540 | /* 116466 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41541 | /* 116468 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41542 | /* 116470 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41543 | /* 116473 */ GIR_RootConstrainSelectedInstOperands, |
| 41544 | /* 116474 */ // GIR_Coverage, 712, |
| 41545 | /* 116474 */ GIR_EraseRootFromParent_Done, |
| 41546 | /* 116475 */ // Label 2573: @116475 |
| 41547 | /* 116475 */ GIM_Try, /*On fail goto*//*Label 2574*/ GIMT_Encode4(116517), // Rule ID 716 // |
| 41548 | /* 116480 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41549 | /* 116483 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41550 | /* 116487 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41551 | /* 116491 */ // (srl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHR64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 41552 | /* 116491 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41553 | /* 116495 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41554 | /* 116501 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41555 | /* 116505 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHR64rCL_ND), |
| 41556 | /* 116508 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41557 | /* 116510 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41558 | /* 116512 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41559 | /* 116515 */ GIR_RootConstrainSelectedInstOperands, |
| 41560 | /* 116516 */ // GIR_Coverage, 716, |
| 41561 | /* 116516 */ GIR_EraseRootFromParent_Done, |
| 41562 | /* 116517 */ // Label 2574: @116517 |
| 41563 | /* 116517 */ GIM_Reject, |
| 41564 | /* 116518 */ // Label 2566: @116518 |
| 41565 | /* 116518 */ GIM_Reject, |
| 41566 | /* 116519 */ // Label 2546: @116519 |
| 41567 | /* 116519 */ GIM_Reject, |
| 41568 | /* 116520 */ // Label 29: @116520 |
| 41569 | /* 116520 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(5), /*)*//*default:*//*Label 2579*/ GIMT_Encode4(117979), |
| 41570 | /* 116531 */ /*GILLT_s8*//*Label 2575*/ GIMT_Encode4(116547), |
| 41571 | /* 116535 */ /*GILLT_s16*//*Label 2576*/ GIMT_Encode4(116710), |
| 41572 | /* 116539 */ /*GILLT_s32*//*Label 2577*/ GIMT_Encode4(116873), |
| 41573 | /* 116543 */ /*GILLT_s64*//*Label 2578*/ GIMT_Encode4(117426), |
| 41574 | /* 116547 */ // Label 2575: @116547 |
| 41575 | /* 116547 */ GIM_Try, /*On fail goto*//*Label 2580*/ GIMT_Encode4(116709), |
| 41576 | /* 116552 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 41577 | /* 116555 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41578 | /* 116558 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41579 | /* 116562 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41580 | /* 116566 */ GIM_Try, /*On fail goto*//*Label 2581*/ GIMT_Encode4(116599), // Rule ID 725 // |
| 41581 | /* 116571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41582 | /* 116574 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41583 | /* 116578 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41584 | /* 116582 */ // MIs[1] Operand 1 |
| 41585 | /* 116582 */ // No operand predicates |
| 41586 | /* 116582 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41587 | /* 116584 */ // (sra:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41588 | /* 116584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8ri), |
| 41589 | /* 116587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41590 | /* 116589 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41591 | /* 116591 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41592 | /* 116594 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41593 | /* 116597 */ GIR_RootConstrainSelectedInstOperands, |
| 41594 | /* 116598 */ // GIR_Coverage, 725, |
| 41595 | /* 116598 */ GIR_EraseRootFromParent_Done, |
| 41596 | /* 116599 */ // Label 2581: @116599 |
| 41597 | /* 116599 */ GIM_Try, /*On fail goto*//*Label 2582*/ GIMT_Encode4(116632), // Rule ID 729 // |
| 41598 | /* 116604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41599 | /* 116607 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41600 | /* 116611 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41601 | /* 116615 */ // MIs[1] Operand 1 |
| 41602 | /* 116615 */ // No operand predicates |
| 41603 | /* 116615 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41604 | /* 116617 */ // (sra:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41605 | /* 116617 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8ri_ND), |
| 41606 | /* 116620 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41607 | /* 116622 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41608 | /* 116624 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41609 | /* 116627 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41610 | /* 116630 */ GIR_RootConstrainSelectedInstOperands, |
| 41611 | /* 116631 */ // GIR_Coverage, 729, |
| 41612 | /* 116631 */ GIR_EraseRootFromParent_Done, |
| 41613 | /* 116632 */ // Label 2582: @116632 |
| 41614 | /* 116632 */ GIM_Try, /*On fail goto*//*Label 2583*/ GIMT_Encode4(116670), // Rule ID 741 // |
| 41615 | /* 116637 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41616 | /* 116640 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41617 | /* 116644 */ // (sra:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SAR8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 41618 | /* 116644 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41619 | /* 116648 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41620 | /* 116654 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41621 | /* 116658 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8rCL), |
| 41622 | /* 116661 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41623 | /* 116663 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41624 | /* 116665 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41625 | /* 116668 */ GIR_RootConstrainSelectedInstOperands, |
| 41626 | /* 116669 */ // GIR_Coverage, 741, |
| 41627 | /* 116669 */ GIR_EraseRootFromParent_Done, |
| 41628 | /* 116670 */ // Label 2583: @116670 |
| 41629 | /* 116670 */ GIM_Try, /*On fail goto*//*Label 2584*/ GIMT_Encode4(116708), // Rule ID 745 // |
| 41630 | /* 116675 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41631 | /* 116678 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41632 | /* 116682 */ // (sra:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (SAR8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 41633 | /* 116682 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41634 | /* 116686 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41635 | /* 116692 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41636 | /* 116696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR8rCL_ND), |
| 41637 | /* 116699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41638 | /* 116701 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41639 | /* 116703 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41640 | /* 116706 */ GIR_RootConstrainSelectedInstOperands, |
| 41641 | /* 116707 */ // GIR_Coverage, 745, |
| 41642 | /* 116707 */ GIR_EraseRootFromParent_Done, |
| 41643 | /* 116708 */ // Label 2584: @116708 |
| 41644 | /* 116708 */ GIM_Reject, |
| 41645 | /* 116709 */ // Label 2580: @116709 |
| 41646 | /* 116709 */ GIM_Reject, |
| 41647 | /* 116710 */ // Label 2576: @116710 |
| 41648 | /* 116710 */ GIM_Try, /*On fail goto*//*Label 2585*/ GIMT_Encode4(116872), |
| 41649 | /* 116715 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 41650 | /* 116718 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41651 | /* 116721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41652 | /* 116725 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 41653 | /* 116729 */ GIM_Try, /*On fail goto*//*Label 2586*/ GIMT_Encode4(116762), // Rule ID 726 // |
| 41654 | /* 116734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41655 | /* 116737 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41656 | /* 116741 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41657 | /* 116745 */ // MIs[1] Operand 1 |
| 41658 | /* 116745 */ // No operand predicates |
| 41659 | /* 116745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41660 | /* 116747 */ // (sra:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41661 | /* 116747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16ri), |
| 41662 | /* 116750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41663 | /* 116752 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41664 | /* 116754 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41665 | /* 116757 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41666 | /* 116760 */ GIR_RootConstrainSelectedInstOperands, |
| 41667 | /* 116761 */ // GIR_Coverage, 726, |
| 41668 | /* 116761 */ GIR_EraseRootFromParent_Done, |
| 41669 | /* 116762 */ // Label 2586: @116762 |
| 41670 | /* 116762 */ GIM_Try, /*On fail goto*//*Label 2587*/ GIMT_Encode4(116795), // Rule ID 730 // |
| 41671 | /* 116767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41672 | /* 116770 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41673 | /* 116774 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41674 | /* 116778 */ // MIs[1] Operand 1 |
| 41675 | /* 116778 */ // No operand predicates |
| 41676 | /* 116778 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41677 | /* 116780 */ // (sra:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41678 | /* 116780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16ri_ND), |
| 41679 | /* 116783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41680 | /* 116785 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41681 | /* 116787 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41682 | /* 116790 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41683 | /* 116793 */ GIR_RootConstrainSelectedInstOperands, |
| 41684 | /* 116794 */ // GIR_Coverage, 730, |
| 41685 | /* 116794 */ GIR_EraseRootFromParent_Done, |
| 41686 | /* 116795 */ // Label 2587: @116795 |
| 41687 | /* 116795 */ GIM_Try, /*On fail goto*//*Label 2588*/ GIMT_Encode4(116833), // Rule ID 742 // |
| 41688 | /* 116800 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41689 | /* 116803 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41690 | /* 116807 */ // (sra:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SAR16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 41691 | /* 116807 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41692 | /* 116811 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41693 | /* 116817 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41694 | /* 116821 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16rCL), |
| 41695 | /* 116824 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41696 | /* 116826 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41697 | /* 116828 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41698 | /* 116831 */ GIR_RootConstrainSelectedInstOperands, |
| 41699 | /* 116832 */ // GIR_Coverage, 742, |
| 41700 | /* 116832 */ GIR_EraseRootFromParent_Done, |
| 41701 | /* 116833 */ // Label 2588: @116833 |
| 41702 | /* 116833 */ GIM_Try, /*On fail goto*//*Label 2589*/ GIMT_Encode4(116871), // Rule ID 746 // |
| 41703 | /* 116838 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41704 | /* 116841 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41705 | /* 116845 */ // (sra:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (SAR16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 41706 | /* 116845 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41707 | /* 116849 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41708 | /* 116855 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41709 | /* 116859 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR16rCL_ND), |
| 41710 | /* 116862 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41711 | /* 116864 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41712 | /* 116866 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41713 | /* 116869 */ GIR_RootConstrainSelectedInstOperands, |
| 41714 | /* 116870 */ // GIR_Coverage, 746, |
| 41715 | /* 116870 */ GIR_EraseRootFromParent_Done, |
| 41716 | /* 116871 */ // Label 2589: @116871 |
| 41717 | /* 116871 */ GIM_Reject, |
| 41718 | /* 116872 */ // Label 2585: @116872 |
| 41719 | /* 116872 */ GIM_Reject, |
| 41720 | /* 116873 */ // Label 2577: @116873 |
| 41721 | /* 116873 */ GIM_Try, /*On fail goto*//*Label 2590*/ GIMT_Encode4(117425), |
| 41722 | /* 116878 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 41723 | /* 116881 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41724 | /* 116884 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41725 | /* 116888 */ GIM_Try, /*On fail goto*//*Label 2591*/ GIMT_Encode4(116998), // Rule ID 17646 // |
| 41726 | /* 116893 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41727 | /* 116896 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41728 | /* 116900 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41729 | /* 116904 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41730 | /* 116907 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41731 | /* 116911 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 41732 | /* 116915 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41733 | /* 116919 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41734 | /* 116921 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41735 | /* 116928 */ // (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] })) |
| 41736 | /* 116928 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41737 | /* 116931 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41738 | /* 116935 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41739 | /* 116940 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41740 | /* 116942 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41741 | /* 116945 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41742 | /* 116949 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41743 | /* 116954 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41744 | /* 116957 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41745 | /* 116961 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41746 | /* 116964 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41747 | /* 116969 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41748 | /* 116974 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41749 | /* 116979 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX32rm), |
| 41750 | /* 116982 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41751 | /* 116984 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41752 | /* 116988 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41753 | /* 116991 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41754 | /* 116996 */ GIR_RootConstrainSelectedInstOperands, |
| 41755 | /* 116997 */ // GIR_Coverage, 17646, |
| 41756 | /* 116997 */ GIR_EraseRootFromParent_Done, |
| 41757 | /* 116998 */ // Label 2591: @116998 |
| 41758 | /* 116998 */ GIM_Try, /*On fail goto*//*Label 2592*/ GIMT_Encode4(117108), // Rule ID 17678 // |
| 41759 | /* 117003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41760 | /* 117006 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41761 | /* 117010 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41762 | /* 117014 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41763 | /* 117017 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41764 | /* 117021 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 41765 | /* 117025 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41766 | /* 117029 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41767 | /* 117031 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41768 | /* 117038 */ // (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] })) |
| 41769 | /* 117038 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41770 | /* 117041 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41771 | /* 117045 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41772 | /* 117050 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41773 | /* 117052 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41774 | /* 117055 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41775 | /* 117059 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41776 | /* 117064 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41777 | /* 117067 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41778 | /* 117071 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41779 | /* 117074 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41780 | /* 117079 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41781 | /* 117084 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41782 | /* 117089 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX32rm_EVEX), |
| 41783 | /* 117092 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41784 | /* 117094 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41785 | /* 117098 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41786 | /* 117101 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41787 | /* 117106 */ GIR_RootConstrainSelectedInstOperands, |
| 41788 | /* 117107 */ // GIR_Coverage, 17678, |
| 41789 | /* 117107 */ GIR_EraseRootFromParent_Done, |
| 41790 | /* 117108 */ // Label 2592: @117108 |
| 41791 | /* 117108 */ GIM_Try, /*On fail goto*//*Label 2593*/ GIMT_Encode4(117145), // Rule ID 727 // |
| 41792 | /* 117113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41793 | /* 117116 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41794 | /* 117120 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41795 | /* 117124 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41796 | /* 117128 */ // MIs[1] Operand 1 |
| 41797 | /* 117128 */ // No operand predicates |
| 41798 | /* 117128 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41799 | /* 117130 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41800 | /* 117130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32ri), |
| 41801 | /* 117133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41802 | /* 117135 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41803 | /* 117137 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41804 | /* 117140 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41805 | /* 117143 */ GIR_RootConstrainSelectedInstOperands, |
| 41806 | /* 117144 */ // GIR_Coverage, 727, |
| 41807 | /* 117144 */ GIR_EraseRootFromParent_Done, |
| 41808 | /* 117145 */ // Label 2593: @117145 |
| 41809 | /* 117145 */ GIM_Try, /*On fail goto*//*Label 2594*/ GIMT_Encode4(117182), // Rule ID 731 // |
| 41810 | /* 117150 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41811 | /* 117153 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41812 | /* 117157 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41813 | /* 117161 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41814 | /* 117165 */ // MIs[1] Operand 1 |
| 41815 | /* 117165 */ // No operand predicates |
| 41816 | /* 117165 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41817 | /* 117167 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41818 | /* 117167 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32ri_ND), |
| 41819 | /* 117170 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41820 | /* 117172 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41821 | /* 117174 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41822 | /* 117177 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41823 | /* 117180 */ GIR_RootConstrainSelectedInstOperands, |
| 41824 | /* 117181 */ // GIR_Coverage, 731, |
| 41825 | /* 117181 */ GIR_EraseRootFromParent_Done, |
| 41826 | /* 117182 */ // Label 2594: @117182 |
| 41827 | /* 117182 */ GIM_Try, /*On fail goto*//*Label 2595*/ GIMT_Encode4(117261), // Rule ID 17642 // |
| 41828 | /* 117187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41829 | /* 117190 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41830 | /* 117194 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41831 | /* 117198 */ // (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] })) |
| 41832 | /* 117198 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41833 | /* 117201 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41834 | /* 117205 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41835 | /* 117210 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41836 | /* 117212 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41837 | /* 117215 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41838 | /* 117219 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41839 | /* 117224 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41840 | /* 117227 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41841 | /* 117231 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41842 | /* 117234 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41843 | /* 117239 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41844 | /* 117244 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41845 | /* 117249 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX32rr), |
| 41846 | /* 117252 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41847 | /* 117254 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41848 | /* 117256 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41849 | /* 117259 */ GIR_RootConstrainSelectedInstOperands, |
| 41850 | /* 117260 */ // GIR_Coverage, 17642, |
| 41851 | /* 117260 */ GIR_EraseRootFromParent_Done, |
| 41852 | /* 117261 */ // Label 2595: @117261 |
| 41853 | /* 117261 */ GIM_Try, /*On fail goto*//*Label 2596*/ GIMT_Encode4(117340), // Rule ID 17674 // |
| 41854 | /* 117266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41855 | /* 117269 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41856 | /* 117273 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41857 | /* 117277 */ // (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] })) |
| 41858 | /* 117277 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 41859 | /* 117280 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41860 | /* 117284 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41861 | /* 117289 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41862 | /* 117291 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 41863 | /* 117294 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41864 | /* 117298 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41865 | /* 117303 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41866 | /* 117306 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41867 | /* 117310 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41868 | /* 117313 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41869 | /* 117318 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::LOW32_ADDR_ACCESS_RBP_with_sub_8bitRegClassID), |
| 41870 | /* 117323 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41871 | /* 117328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX32rr_EVEX), |
| 41872 | /* 117331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41873 | /* 117333 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41874 | /* 117335 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41875 | /* 117338 */ GIR_RootConstrainSelectedInstOperands, |
| 41876 | /* 117339 */ // GIR_Coverage, 17674, |
| 41877 | /* 117339 */ GIR_EraseRootFromParent_Done, |
| 41878 | /* 117340 */ // Label 2596: @117340 |
| 41879 | /* 117340 */ GIM_Try, /*On fail goto*//*Label 2597*/ GIMT_Encode4(117382), // Rule ID 743 // |
| 41880 | /* 117345 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41881 | /* 117348 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41882 | /* 117352 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41883 | /* 117356 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SAR32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 41884 | /* 117356 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41885 | /* 117360 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41886 | /* 117366 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41887 | /* 117370 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32rCL), |
| 41888 | /* 117373 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41889 | /* 117375 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41890 | /* 117377 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41891 | /* 117380 */ GIR_RootConstrainSelectedInstOperands, |
| 41892 | /* 117381 */ // GIR_Coverage, 743, |
| 41893 | /* 117381 */ GIR_EraseRootFromParent_Done, |
| 41894 | /* 117382 */ // Label 2597: @117382 |
| 41895 | /* 117382 */ GIM_Try, /*On fail goto*//*Label 2598*/ GIMT_Encode4(117424), // Rule ID 747 // |
| 41896 | /* 117387 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 41897 | /* 117390 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 41898 | /* 117394 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 41899 | /* 117398 */ // (sra:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SAR32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 41900 | /* 117398 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 41901 | /* 117402 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41902 | /* 117408 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 41903 | /* 117412 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR32rCL_ND), |
| 41904 | /* 117415 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41905 | /* 117417 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41906 | /* 117419 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41907 | /* 117422 */ GIR_RootConstrainSelectedInstOperands, |
| 41908 | /* 117423 */ // GIR_Coverage, 747, |
| 41909 | /* 117423 */ GIR_EraseRootFromParent_Done, |
| 41910 | /* 117424 */ // Label 2598: @117424 |
| 41911 | /* 117424 */ GIM_Reject, |
| 41912 | /* 117425 */ // Label 2590: @117425 |
| 41913 | /* 117425 */ GIM_Reject, |
| 41914 | /* 117426 */ // Label 2578: @117426 |
| 41915 | /* 117426 */ GIM_Try, /*On fail goto*//*Label 2599*/ GIMT_Encode4(117978), |
| 41916 | /* 117431 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 41917 | /* 117434 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 41918 | /* 117437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41919 | /* 117441 */ GIM_Try, /*On fail goto*//*Label 2600*/ GIMT_Encode4(117551), // Rule ID 17647 // |
| 41920 | /* 117446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 41921 | /* 117449 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41922 | /* 117453 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41923 | /* 117457 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41924 | /* 117460 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41925 | /* 117464 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41926 | /* 117468 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41927 | /* 117472 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41928 | /* 117474 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41929 | /* 117481 */ // (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] })) |
| 41930 | /* 117481 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 41931 | /* 117484 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41932 | /* 117488 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41933 | /* 117493 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41934 | /* 117495 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 41935 | /* 117498 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41936 | /* 117502 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41937 | /* 117507 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41938 | /* 117510 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41939 | /* 117514 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41940 | /* 117517 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41941 | /* 117522 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41942 | /* 117527 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41943 | /* 117532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX64rm), |
| 41944 | /* 117535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41945 | /* 117537 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41946 | /* 117541 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41947 | /* 117544 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41948 | /* 117549 */ GIR_RootConstrainSelectedInstOperands, |
| 41949 | /* 117550 */ // GIR_Coverage, 17647, |
| 41950 | /* 117550 */ GIR_EraseRootFromParent_Done, |
| 41951 | /* 117551 */ // Label 2600: @117551 |
| 41952 | /* 117551 */ GIM_Try, /*On fail goto*//*Label 2601*/ GIMT_Encode4(117661), // Rule ID 17679 // |
| 41953 | /* 117556 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 41954 | /* 117559 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 41955 | /* 117563 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 41956 | /* 117567 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 41957 | /* 117570 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 41958 | /* 117574 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 41959 | /* 117578 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 41960 | /* 117582 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41961 | /* 117584 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 41962 | /* 117591 */ // (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] })) |
| 41963 | /* 117591 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 41964 | /* 117594 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 41965 | /* 117598 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41966 | /* 117603 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 41967 | /* 117605 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 41968 | /* 117608 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 41969 | /* 117612 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 41970 | /* 117617 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 41971 | /* 117620 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 41972 | /* 117624 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 41973 | /* 117627 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41974 | /* 117632 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 41975 | /* 117637 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 41976 | /* 117642 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX64rm_EVEX), |
| 41977 | /* 117645 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41978 | /* 117647 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 41979 | /* 117651 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 41980 | /* 117654 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 41981 | /* 117659 */ GIR_RootConstrainSelectedInstOperands, |
| 41982 | /* 117660 */ // GIR_Coverage, 17679, |
| 41983 | /* 117660 */ GIR_EraseRootFromParent_Done, |
| 41984 | /* 117661 */ // Label 2601: @117661 |
| 41985 | /* 117661 */ GIM_Try, /*On fail goto*//*Label 2602*/ GIMT_Encode4(117698), // Rule ID 728 // |
| 41986 | /* 117666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 41987 | /* 117669 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 41988 | /* 117673 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 41989 | /* 117677 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 41990 | /* 117681 */ // MIs[1] Operand 1 |
| 41991 | /* 117681 */ // No operand predicates |
| 41992 | /* 117681 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 41993 | /* 117683 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 41994 | /* 117683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64ri), |
| 41995 | /* 117686 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 41996 | /* 117688 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 41997 | /* 117690 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 41998 | /* 117693 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 41999 | /* 117696 */ GIR_RootConstrainSelectedInstOperands, |
| 42000 | /* 117697 */ // GIR_Coverage, 728, |
| 42001 | /* 117697 */ GIR_EraseRootFromParent_Done, |
| 42002 | /* 117698 */ // Label 2602: @117698 |
| 42003 | /* 117698 */ GIM_Try, /*On fail goto*//*Label 2603*/ GIMT_Encode4(117735), // Rule ID 732 // |
| 42004 | /* 117703 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42005 | /* 117706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42006 | /* 117710 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 42007 | /* 117714 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42008 | /* 117718 */ // MIs[1] Operand 1 |
| 42009 | /* 117718 */ // No operand predicates |
| 42010 | /* 117718 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42011 | /* 117720 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (SAR64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 42012 | /* 117720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64ri_ND), |
| 42013 | /* 117723 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42014 | /* 117725 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42015 | /* 117727 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 42016 | /* 117730 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42017 | /* 117733 */ GIR_RootConstrainSelectedInstOperands, |
| 42018 | /* 117734 */ // GIR_Coverage, 732, |
| 42019 | /* 117734 */ GIR_EraseRootFromParent_Done, |
| 42020 | /* 117735 */ // Label 2603: @117735 |
| 42021 | /* 117735 */ GIM_Try, /*On fail goto*//*Label 2604*/ GIMT_Encode4(117814), // Rule ID 17643 // |
| 42022 | /* 117740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 42023 | /* 117743 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42024 | /* 117747 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42025 | /* 117751 */ // (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] })) |
| 42026 | /* 117751 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42027 | /* 117754 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42028 | /* 117758 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42029 | /* 117763 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42030 | /* 117765 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42031 | /* 117768 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42032 | /* 117772 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42033 | /* 117777 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42034 | /* 117780 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42035 | /* 117784 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42036 | /* 117787 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42037 | /* 117792 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42038 | /* 117797 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42039 | /* 117802 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX64rr), |
| 42040 | /* 117805 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42041 | /* 117807 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42042 | /* 117809 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42043 | /* 117812 */ GIR_RootConstrainSelectedInstOperands, |
| 42044 | /* 117813 */ // GIR_Coverage, 17643, |
| 42045 | /* 117813 */ GIR_EraseRootFromParent_Done, |
| 42046 | /* 117814 */ // Label 2604: @117814 |
| 42047 | /* 117814 */ GIM_Try, /*On fail goto*//*Label 2605*/ GIMT_Encode4(117893), // Rule ID 17675 // |
| 42048 | /* 117819 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 42049 | /* 117822 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42050 | /* 117826 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 42051 | /* 117830 */ // (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] })) |
| 42052 | /* 117830 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 42053 | /* 117833 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42054 | /* 117837 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42055 | /* 117842 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 42056 | /* 117844 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 42057 | /* 117847 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42058 | /* 117851 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42059 | /* 117856 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42060 | /* 117859 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42061 | /* 117863 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/1, |
| 42062 | /* 117866 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42063 | /* 117871 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::GR64_with_sub_8bitRegClassID), |
| 42064 | /* 117876 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/2, GIMT_Encode2(X86::GR8RegClassID), |
| 42065 | /* 117881 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SARX64rr_EVEX), |
| 42066 | /* 117884 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42067 | /* 117886 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42068 | /* 117888 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 42069 | /* 117891 */ GIR_RootConstrainSelectedInstOperands, |
| 42070 | /* 117892 */ // GIR_Coverage, 17675, |
| 42071 | /* 117892 */ GIR_EraseRootFromParent_Done, |
| 42072 | /* 117893 */ // Label 2605: @117893 |
| 42073 | /* 117893 */ GIM_Try, /*On fail goto*//*Label 2606*/ GIMT_Encode4(117935), // Rule ID 744 // |
| 42074 | /* 117898 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42075 | /* 117901 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42076 | /* 117905 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42077 | /* 117909 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SAR64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 42078 | /* 117909 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42079 | /* 117913 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42080 | /* 117919 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42081 | /* 117923 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64rCL), |
| 42082 | /* 117926 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42083 | /* 117928 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42084 | /* 117930 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42085 | /* 117933 */ GIR_RootConstrainSelectedInstOperands, |
| 42086 | /* 117934 */ // GIR_Coverage, 744, |
| 42087 | /* 117934 */ GIR_EraseRootFromParent_Done, |
| 42088 | /* 117935 */ // Label 2606: @117935 |
| 42089 | /* 117935 */ GIM_Try, /*On fail goto*//*Label 2607*/ GIMT_Encode4(117977), // Rule ID 748 // |
| 42090 | /* 117940 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42091 | /* 117943 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42092 | /* 117947 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42093 | /* 117951 */ // (sra:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SAR64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 42094 | /* 117951 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42095 | /* 117955 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42096 | /* 117961 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 42097 | /* 117965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SAR64rCL_ND), |
| 42098 | /* 117968 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42099 | /* 117970 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42100 | /* 117972 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42101 | /* 117975 */ GIR_RootConstrainSelectedInstOperands, |
| 42102 | /* 117976 */ // GIR_Coverage, 748, |
| 42103 | /* 117976 */ GIR_EraseRootFromParent_Done, |
| 42104 | /* 117977 */ // Label 2607: @117977 |
| 42105 | /* 117977 */ GIM_Reject, |
| 42106 | /* 117978 */ // Label 2599: @117978 |
| 42107 | /* 117978 */ GIM_Reject, |
| 42108 | /* 117979 */ // Label 2579: @117979 |
| 42109 | /* 117979 */ GIM_Reject, |
| 42110 | /* 117980 */ // Label 30: @117980 |
| 42111 | /* 117980 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(23), /*)*//*default:*//*Label 2619*/ GIMT_Encode4(120692), |
| 42112 | /* 117991 */ /*GILLT_s32*//*Label 2608*/ GIMT_Encode4(118071), |
| 42113 | /* 117995 */ /*GILLT_s64*//*Label 2609*/ GIMT_Encode4(118249), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 42114 | /* 118011 */ /*GILLT_v2s64*//*Label 2610*/ GIMT_Encode4(118427), GIMT_Encode4(0), |
| 42115 | /* 118019 */ /*GILLT_v4s32*//*Label 2611*/ GIMT_Encode4(118765), |
| 42116 | /* 118023 */ /*GILLT_v4s64*//*Label 2612*/ GIMT_Encode4(119103), GIMT_Encode4(0), |
| 42117 | /* 118031 */ /*GILLT_v8s16*//*Label 2613*/ GIMT_Encode4(119417), |
| 42118 | /* 118035 */ /*GILLT_v8s32*//*Label 2614*/ GIMT_Encode4(119755), |
| 42119 | /* 118039 */ /*GILLT_v8s64*//*Label 2615*/ GIMT_Encode4(120069), GIMT_Encode4(0), GIMT_Encode4(0), |
| 42120 | /* 118051 */ /*GILLT_v16s16*//*Label 2616*/ GIMT_Encode4(120172), |
| 42121 | /* 118055 */ /*GILLT_v16s32*//*Label 2617*/ GIMT_Encode4(120486), GIMT_Encode4(0), GIMT_Encode4(0), |
| 42122 | /* 118067 */ /*GILLT_v32s16*//*Label 2618*/ GIMT_Encode4(120589), |
| 42123 | /* 118071 */ // Label 2608: @118071 |
| 42124 | /* 118071 */ GIM_Try, /*On fail goto*//*Label 2620*/ GIMT_Encode4(118248), |
| 42125 | /* 118076 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 42126 | /* 118079 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 42127 | /* 118082 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 42128 | /* 118085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42129 | /* 118089 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42130 | /* 118093 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 42131 | /* 118097 */ GIM_Try, /*On fail goto*//*Label 2621*/ GIMT_Encode4(118132), // Rule ID 822 // |
| 42132 | /* 118102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42133 | /* 118105 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42134 | /* 118109 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42135 | /* 118113 */ // MIs[1] Operand 1 |
| 42136 | /* 118113 */ // No operand predicates |
| 42137 | /* 118113 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42138 | /* 118115 */ // (fshl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD32rri8:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 42139 | /* 118115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32rri8), |
| 42140 | /* 118118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42141 | /* 118120 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42142 | /* 118122 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42143 | /* 118124 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 42144 | /* 118127 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42145 | /* 118130 */ GIR_RootConstrainSelectedInstOperands, |
| 42146 | /* 118131 */ // GIR_Coverage, 822, |
| 42147 | /* 118131 */ GIR_EraseRootFromParent_Done, |
| 42148 | /* 118132 */ // Label 2621: @118132 |
| 42149 | /* 118132 */ GIM_Try, /*On fail goto*//*Label 2622*/ GIMT_Encode4(118167), // Rule ID 828 // |
| 42150 | /* 118137 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42151 | /* 118140 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42152 | /* 118144 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42153 | /* 118148 */ // MIs[1] Operand 1 |
| 42154 | /* 118148 */ // No operand predicates |
| 42155 | /* 118148 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42156 | /* 118150 */ // (fshl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD32rri8_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 42157 | /* 118150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32rri8_ND), |
| 42158 | /* 118153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42159 | /* 118155 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42160 | /* 118157 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42161 | /* 118159 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 42162 | /* 118162 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42163 | /* 118165 */ GIR_RootConstrainSelectedInstOperands, |
| 42164 | /* 118166 */ // GIR_Coverage, 828, |
| 42165 | /* 118166 */ GIR_EraseRootFromParent_Done, |
| 42166 | /* 118167 */ // Label 2622: @118167 |
| 42167 | /* 118167 */ GIM_Try, /*On fail goto*//*Label 2623*/ GIMT_Encode4(118207), // Rule ID 825 // |
| 42168 | /* 118172 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42169 | /* 118175 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42170 | /* 118179 */ // (fshl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, CL:{ *:[i8] }) => (SHLD32rrCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 42171 | /* 118179 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42172 | /* 118183 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42173 | /* 118189 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 42174 | /* 118193 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32rrCL), |
| 42175 | /* 118196 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42176 | /* 118198 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42177 | /* 118200 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42178 | /* 118202 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42179 | /* 118205 */ GIR_RootConstrainSelectedInstOperands, |
| 42180 | /* 118206 */ // GIR_Coverage, 825, |
| 42181 | /* 118206 */ GIR_EraseRootFromParent_Done, |
| 42182 | /* 118207 */ // Label 2623: @118207 |
| 42183 | /* 118207 */ GIM_Try, /*On fail goto*//*Label 2624*/ GIMT_Encode4(118247), // Rule ID 831 // |
| 42184 | /* 118212 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42185 | /* 118215 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42186 | /* 118219 */ // (fshl:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, CL:{ *:[i8] }) => (SHLD32rrCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 42187 | /* 118219 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42188 | /* 118223 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42189 | /* 118229 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 42190 | /* 118233 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD32rrCL_ND), |
| 42191 | /* 118236 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42192 | /* 118238 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42193 | /* 118240 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42194 | /* 118242 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42195 | /* 118245 */ GIR_RootConstrainSelectedInstOperands, |
| 42196 | /* 118246 */ // GIR_Coverage, 831, |
| 42197 | /* 118246 */ GIR_EraseRootFromParent_Done, |
| 42198 | /* 118247 */ // Label 2624: @118247 |
| 42199 | /* 118247 */ GIM_Reject, |
| 42200 | /* 118248 */ // Label 2620: @118248 |
| 42201 | /* 118248 */ GIM_Reject, |
| 42202 | /* 118249 */ // Label 2609: @118249 |
| 42203 | /* 118249 */ GIM_Try, /*On fail goto*//*Label 2625*/ GIMT_Encode4(118426), |
| 42204 | /* 118254 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 42205 | /* 118257 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 42206 | /* 118260 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 42207 | /* 118263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42208 | /* 118267 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42209 | /* 118271 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 42210 | /* 118275 */ GIM_Try, /*On fail goto*//*Label 2626*/ GIMT_Encode4(118310), // Rule ID 823 // |
| 42211 | /* 118280 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42212 | /* 118283 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42213 | /* 118287 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42214 | /* 118291 */ // MIs[1] Operand 1 |
| 42215 | /* 118291 */ // No operand predicates |
| 42216 | /* 118291 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42217 | /* 118293 */ // (fshl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD64rri8:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 42218 | /* 118293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64rri8), |
| 42219 | /* 118296 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42220 | /* 118298 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42221 | /* 118300 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42222 | /* 118302 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 42223 | /* 118305 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42224 | /* 118308 */ GIR_RootConstrainSelectedInstOperands, |
| 42225 | /* 118309 */ // GIR_Coverage, 823, |
| 42226 | /* 118309 */ GIR_EraseRootFromParent_Done, |
| 42227 | /* 118310 */ // Label 2626: @118310 |
| 42228 | /* 118310 */ GIM_Try, /*On fail goto*//*Label 2627*/ GIMT_Encode4(118345), // Rule ID 829 // |
| 42229 | /* 118315 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42230 | /* 118318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42231 | /* 118322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 42232 | /* 118326 */ // MIs[1] Operand 1 |
| 42233 | /* 118326 */ // No operand predicates |
| 42234 | /* 118326 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42235 | /* 118328 */ // (fshl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) => (SHLD64rri8_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 42236 | /* 118328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64rri8_ND), |
| 42237 | /* 118331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42238 | /* 118333 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42239 | /* 118335 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42240 | /* 118337 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 42241 | /* 118340 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42242 | /* 118343 */ GIR_RootConstrainSelectedInstOperands, |
| 42243 | /* 118344 */ // GIR_Coverage, 829, |
| 42244 | /* 118344 */ GIR_EraseRootFromParent_Done, |
| 42245 | /* 118345 */ // Label 2627: @118345 |
| 42246 | /* 118345 */ GIM_Try, /*On fail goto*//*Label 2628*/ GIMT_Encode4(118385), // Rule ID 826 // |
| 42247 | /* 118350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 42248 | /* 118353 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42249 | /* 118357 */ // (fshl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, CL:{ *:[i8] }) => (SHLD64rrCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 42250 | /* 118357 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42251 | /* 118361 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42252 | /* 118367 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 42253 | /* 118371 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64rrCL), |
| 42254 | /* 118374 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42255 | /* 118376 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42256 | /* 118378 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42257 | /* 118380 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42258 | /* 118383 */ GIR_RootConstrainSelectedInstOperands, |
| 42259 | /* 118384 */ // GIR_Coverage, 826, |
| 42260 | /* 118384 */ GIR_EraseRootFromParent_Done, |
| 42261 | /* 118385 */ // Label 2628: @118385 |
| 42262 | /* 118385 */ GIM_Try, /*On fail goto*//*Label 2629*/ GIMT_Encode4(118425), // Rule ID 832 // |
| 42263 | /* 118390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 42264 | /* 118393 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 42265 | /* 118397 */ // (fshl:{ *:[i64] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, CL:{ *:[i8] }) => (SHLD64rrCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 42266 | /* 118397 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42267 | /* 118401 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42268 | /* 118407 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 42269 | /* 118411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLD64rrCL_ND), |
| 42270 | /* 118414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42271 | /* 118416 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42272 | /* 118418 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42273 | /* 118420 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 42274 | /* 118423 */ GIR_RootConstrainSelectedInstOperands, |
| 42275 | /* 118424 */ // GIR_Coverage, 832, |
| 42276 | /* 118424 */ GIR_EraseRootFromParent_Done, |
| 42277 | /* 118425 */ // Label 2629: @118425 |
| 42278 | /* 118425 */ GIM_Reject, |
| 42279 | /* 118426 */ // Label 2625: @118426 |
| 42280 | /* 118426 */ GIM_Reject, |
| 42281 | /* 118427 */ // Label 2610: @118427 |
| 42282 | /* 118427 */ GIM_Try, /*On fail goto*//*Label 2630*/ GIMT_Encode4(118764), |
| 42283 | /* 118432 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 42284 | /* 118435 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 42285 | /* 118438 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 42286 | /* 118441 */ GIM_Try, /*On fail goto*//*Label 2631*/ GIMT_Encode4(118509), // Rule ID 14160 // |
| 42287 | /* 118446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42288 | /* 118449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42289 | /* 118453 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42290 | /* 118457 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42291 | /* 118461 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42292 | /* 118465 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42293 | /* 118469 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42294 | /* 118472 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42295 | /* 118476 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42296 | /* 118480 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42297 | /* 118482 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42298 | /* 118489 */ // (fshl:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVQZ128m:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42299 | /* 118489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVQZ128m), |
| 42300 | /* 118492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42301 | /* 118494 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42302 | /* 118496 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42303 | /* 118498 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42304 | /* 118502 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42305 | /* 118507 */ GIR_RootConstrainSelectedInstOperands, |
| 42306 | /* 118508 */ // GIR_Coverage, 14160, |
| 42307 | /* 118508 */ GIR_EraseRootFromParent_Done, |
| 42308 | /* 118509 */ // Label 2631: @118509 |
| 42309 | /* 118509 */ GIM_Try, /*On fail goto*//*Label 2632*/ GIMT_Encode4(118540), // Rule ID 14157 // |
| 42310 | /* 118514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42311 | /* 118517 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42312 | /* 118521 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42313 | /* 118525 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42314 | /* 118529 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42315 | /* 118533 */ // (fshl:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, VR128X:{ *:[v2i64] }:$src3) => (VPSHLDVQZ128r:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, VR128X:{ *:[v2i64] }:$src3) |
| 42316 | /* 118533 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVQZ128r), |
| 42317 | /* 118538 */ GIR_RootConstrainSelectedInstOperands, |
| 42318 | /* 118539 */ // GIR_Coverage, 14157, |
| 42319 | /* 118539 */ GIR_Done, |
| 42320 | /* 118540 */ // Label 2632: @118540 |
| 42321 | /* 118540 */ GIM_Try, /*On fail goto*//*Label 2633*/ GIMT_Encode4(118763), // Rule ID 22152 // |
| 42322 | /* 118545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 42323 | /* 118548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 42324 | /* 118552 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42325 | /* 118556 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42326 | /* 118560 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42327 | /* 118564 */ // (fshl:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, VR128X:{ *:[v2i64] }:$src3) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPSHLDVQZr:{ *:[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] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src3, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 42328 | /* 118564 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 42329 | /* 118567 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42330 | /* 118571 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42331 | /* 118576 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 42332 | /* 118578 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 42333 | /* 118581 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42334 | /* 118585 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42335 | /* 118590 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 42336 | /* 118593 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 42337 | /* 118597 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 42338 | /* 118600 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42339 | /* 118605 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42340 | /* 118610 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42341 | /* 118615 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 42342 | /* 118618 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42343 | /* 118622 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42344 | /* 118627 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 42345 | /* 118629 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 42346 | /* 118632 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42347 | /* 118636 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42348 | /* 118641 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 42349 | /* 118644 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42350 | /* 118648 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 42351 | /* 118651 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42352 | /* 118656 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42353 | /* 118661 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42354 | /* 118666 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 42355 | /* 118669 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42356 | /* 118673 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42357 | /* 118678 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 42358 | /* 118680 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 42359 | /* 118683 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42360 | /* 118687 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42361 | /* 118692 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 42362 | /* 118695 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 42363 | /* 118699 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 42364 | /* 118702 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42365 | /* 118707 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42366 | /* 118712 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42367 | /* 118717 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 42368 | /* 118720 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHLDVQZr), |
| 42369 | /* 118724 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42370 | /* 118729 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42371 | /* 118732 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 42372 | /* 118735 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 42373 | /* 118738 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 42374 | /* 118740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42375 | /* 118743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42376 | /* 118745 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 42377 | /* 118752 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 42378 | /* 118757 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42379 | /* 118762 */ // GIR_Coverage, 22152, |
| 42380 | /* 118762 */ GIR_EraseRootFromParent_Done, |
| 42381 | /* 118763 */ // Label 2633: @118763 |
| 42382 | /* 118763 */ GIM_Reject, |
| 42383 | /* 118764 */ // Label 2630: @118764 |
| 42384 | /* 118764 */ GIM_Reject, |
| 42385 | /* 118765 */ // Label 2611: @118765 |
| 42386 | /* 118765 */ GIM_Try, /*On fail goto*//*Label 2634*/ GIMT_Encode4(119102), |
| 42387 | /* 118770 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 42388 | /* 118773 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 42389 | /* 118776 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 42390 | /* 118779 */ GIM_Try, /*On fail goto*//*Label 2635*/ GIMT_Encode4(118847), // Rule ID 14133 // |
| 42391 | /* 118784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42392 | /* 118787 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42393 | /* 118791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42394 | /* 118795 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42395 | /* 118799 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42396 | /* 118803 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42397 | /* 118807 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42398 | /* 118810 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42399 | /* 118814 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42400 | /* 118818 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42401 | /* 118820 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42402 | /* 118827 */ // (fshl:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVDZ128m:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42403 | /* 118827 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVDZ128m), |
| 42404 | /* 118830 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42405 | /* 118832 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42406 | /* 118834 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42407 | /* 118836 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42408 | /* 118840 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42409 | /* 118845 */ GIR_RootConstrainSelectedInstOperands, |
| 42410 | /* 118846 */ // GIR_Coverage, 14133, |
| 42411 | /* 118846 */ GIR_EraseRootFromParent_Done, |
| 42412 | /* 118847 */ // Label 2635: @118847 |
| 42413 | /* 118847 */ GIM_Try, /*On fail goto*//*Label 2636*/ GIMT_Encode4(118878), // Rule ID 14130 // |
| 42414 | /* 118852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42415 | /* 118855 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42416 | /* 118859 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42417 | /* 118863 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42418 | /* 118867 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42419 | /* 118871 */ // (fshl:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2, VR128X:{ *:[v4i32] }:$src3) => (VPSHLDVDZ128r:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2, VR128X:{ *:[v4i32] }:$src3) |
| 42420 | /* 118871 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVDZ128r), |
| 42421 | /* 118876 */ GIR_RootConstrainSelectedInstOperands, |
| 42422 | /* 118877 */ // GIR_Coverage, 14130, |
| 42423 | /* 118877 */ GIR_Done, |
| 42424 | /* 118878 */ // Label 2636: @118878 |
| 42425 | /* 118878 */ GIM_Try, /*On fail goto*//*Label 2637*/ GIMT_Encode4(119101), // Rule ID 22160 // |
| 42426 | /* 118883 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 42427 | /* 118886 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 42428 | /* 118890 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42429 | /* 118894 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42430 | /* 118898 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42431 | /* 118902 */ // (fshl:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2, VR128X:{ *:[v4i32] }:$src3) => (EXTRACT_SUBREG:{ *:[v4i32] } (VPSHLDVDZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src2, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src3, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 42432 | /* 118902 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v16s32, |
| 42433 | /* 118905 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42434 | /* 118909 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42435 | /* 118914 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 42436 | /* 118916 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 42437 | /* 118919 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42438 | /* 118923 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42439 | /* 118928 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 42440 | /* 118931 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 42441 | /* 118935 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 42442 | /* 118938 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42443 | /* 118943 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42444 | /* 118948 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42445 | /* 118953 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 42446 | /* 118956 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42447 | /* 118960 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42448 | /* 118965 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 42449 | /* 118967 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 42450 | /* 118970 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42451 | /* 118974 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42452 | /* 118979 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 42453 | /* 118982 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42454 | /* 118986 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 42455 | /* 118989 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42456 | /* 118994 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42457 | /* 118999 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42458 | /* 119004 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 42459 | /* 119007 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42460 | /* 119011 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42461 | /* 119016 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 42462 | /* 119018 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 42463 | /* 119021 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42464 | /* 119025 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42465 | /* 119030 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 42466 | /* 119033 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 42467 | /* 119037 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 42468 | /* 119040 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42469 | /* 119045 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42470 | /* 119050 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42471 | /* 119055 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 42472 | /* 119058 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHLDVDZr), |
| 42473 | /* 119062 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42474 | /* 119067 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42475 | /* 119070 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 42476 | /* 119073 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 42477 | /* 119076 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 42478 | /* 119078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42479 | /* 119081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42480 | /* 119083 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 42481 | /* 119090 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 42482 | /* 119095 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42483 | /* 119100 */ // GIR_Coverage, 22160, |
| 42484 | /* 119100 */ GIR_EraseRootFromParent_Done, |
| 42485 | /* 119101 */ // Label 2637: @119101 |
| 42486 | /* 119101 */ GIM_Reject, |
| 42487 | /* 119102 */ // Label 2634: @119102 |
| 42488 | /* 119102 */ GIM_Reject, |
| 42489 | /* 119103 */ // Label 2612: @119103 |
| 42490 | /* 119103 */ GIM_Try, /*On fail goto*//*Label 2638*/ GIMT_Encode4(119416), |
| 42491 | /* 119108 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 42492 | /* 119111 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 42493 | /* 119114 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 42494 | /* 119117 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42495 | /* 119121 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42496 | /* 119125 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42497 | /* 119129 */ GIM_Try, /*On fail goto*//*Label 2639*/ GIMT_Encode4(119185), // Rule ID 14151 // |
| 42498 | /* 119134 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42499 | /* 119137 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42500 | /* 119141 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42501 | /* 119145 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42502 | /* 119148 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42503 | /* 119152 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42504 | /* 119156 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42505 | /* 119158 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42506 | /* 119165 */ // (fshl:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVQZ256m:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42507 | /* 119165 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVQZ256m), |
| 42508 | /* 119168 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42509 | /* 119170 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42510 | /* 119172 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42511 | /* 119174 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42512 | /* 119178 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42513 | /* 119183 */ GIR_RootConstrainSelectedInstOperands, |
| 42514 | /* 119184 */ // GIR_Coverage, 14151, |
| 42515 | /* 119184 */ GIR_EraseRootFromParent_Done, |
| 42516 | /* 119185 */ // Label 2639: @119185 |
| 42517 | /* 119185 */ GIM_Try, /*On fail goto*//*Label 2640*/ GIMT_Encode4(119204), // Rule ID 14148 // |
| 42518 | /* 119190 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42519 | /* 119193 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42520 | /* 119197 */ // (fshl:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, VR256X:{ *:[v4i64] }:$src3) => (VPSHLDVQZ256r:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, VR256X:{ *:[v4i64] }:$src3) |
| 42521 | /* 119197 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVQZ256r), |
| 42522 | /* 119202 */ GIR_RootConstrainSelectedInstOperands, |
| 42523 | /* 119203 */ // GIR_Coverage, 14148, |
| 42524 | /* 119203 */ GIR_Done, |
| 42525 | /* 119204 */ // Label 2640: @119204 |
| 42526 | /* 119204 */ GIM_Try, /*On fail goto*//*Label 2641*/ GIMT_Encode4(119415), // Rule ID 22148 // |
| 42527 | /* 119209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 42528 | /* 119212 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42529 | /* 119216 */ // (fshl:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, VR256X:{ *:[v4i64] }:$src3) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPSHLDVQZr:{ *:[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] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src3, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 42530 | /* 119216 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 42531 | /* 119219 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42532 | /* 119223 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42533 | /* 119228 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 42534 | /* 119230 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 42535 | /* 119233 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42536 | /* 119237 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42537 | /* 119242 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 42538 | /* 119245 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 42539 | /* 119249 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 42540 | /* 119252 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42541 | /* 119257 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42542 | /* 119262 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42543 | /* 119267 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 42544 | /* 119270 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42545 | /* 119274 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42546 | /* 119279 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 42547 | /* 119281 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 42548 | /* 119284 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42549 | /* 119288 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42550 | /* 119293 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 42551 | /* 119296 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42552 | /* 119300 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 42553 | /* 119303 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42554 | /* 119308 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42555 | /* 119313 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42556 | /* 119318 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 42557 | /* 119321 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42558 | /* 119325 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42559 | /* 119330 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 42560 | /* 119332 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 42561 | /* 119335 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42562 | /* 119339 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42563 | /* 119344 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 42564 | /* 119347 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 42565 | /* 119351 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 42566 | /* 119354 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42567 | /* 119359 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42568 | /* 119364 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42569 | /* 119369 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 42570 | /* 119372 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHLDVQZr), |
| 42571 | /* 119376 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42572 | /* 119381 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42573 | /* 119384 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 42574 | /* 119387 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 42575 | /* 119390 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 42576 | /* 119392 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42577 | /* 119395 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42578 | /* 119397 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 42579 | /* 119404 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 42580 | /* 119409 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42581 | /* 119414 */ // GIR_Coverage, 22148, |
| 42582 | /* 119414 */ GIR_EraseRootFromParent_Done, |
| 42583 | /* 119415 */ // Label 2641: @119415 |
| 42584 | /* 119415 */ GIM_Reject, |
| 42585 | /* 119416 */ // Label 2638: @119416 |
| 42586 | /* 119416 */ GIM_Reject, |
| 42587 | /* 119417 */ // Label 2613: @119417 |
| 42588 | /* 119417 */ GIM_Try, /*On fail goto*//*Label 2642*/ GIMT_Encode4(119754), |
| 42589 | /* 119422 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 42590 | /* 119425 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 42591 | /* 119428 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 42592 | /* 119431 */ GIM_Try, /*On fail goto*//*Label 2643*/ GIMT_Encode4(119499), // Rule ID 14109 // |
| 42593 | /* 119436 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42594 | /* 119439 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42595 | /* 119443 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42596 | /* 119447 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42597 | /* 119451 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42598 | /* 119455 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42599 | /* 119459 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42600 | /* 119462 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42601 | /* 119466 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42602 | /* 119470 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42603 | /* 119472 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42604 | /* 119479 */ // (fshl:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVWZ128m:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42605 | /* 119479 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZ128m), |
| 42606 | /* 119482 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42607 | /* 119484 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42608 | /* 119486 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42609 | /* 119488 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42610 | /* 119492 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42611 | /* 119497 */ GIR_RootConstrainSelectedInstOperands, |
| 42612 | /* 119498 */ // GIR_Coverage, 14109, |
| 42613 | /* 119498 */ GIR_EraseRootFromParent_Done, |
| 42614 | /* 119499 */ // Label 2643: @119499 |
| 42615 | /* 119499 */ GIM_Try, /*On fail goto*//*Label 2644*/ GIMT_Encode4(119530), // Rule ID 14106 // |
| 42616 | /* 119504 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42617 | /* 119507 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42618 | /* 119511 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42619 | /* 119515 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42620 | /* 119519 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42621 | /* 119523 */ // (fshl:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2, VR128X:{ *:[v8i16] }:$src3) => (VPSHLDVWZ128r:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2, VR128X:{ *:[v8i16] }:$src3) |
| 42622 | /* 119523 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZ128r), |
| 42623 | /* 119528 */ GIR_RootConstrainSelectedInstOperands, |
| 42624 | /* 119529 */ // GIR_Coverage, 14106, |
| 42625 | /* 119529 */ GIR_Done, |
| 42626 | /* 119530 */ // Label 2644: @119530 |
| 42627 | /* 119530 */ GIM_Try, /*On fail goto*//*Label 2645*/ GIMT_Encode4(119753), // Rule ID 22168 // |
| 42628 | /* 119535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 42629 | /* 119538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 42630 | /* 119542 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42631 | /* 119546 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42632 | /* 119550 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 42633 | /* 119554 */ // (fshl:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2, VR128X:{ *:[v8i16] }:$src3) => (EXTRACT_SUBREG:{ *:[v8i16] } (VPSHLDVWZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src2, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src3, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 42634 | /* 119554 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v32s16, |
| 42635 | /* 119557 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42636 | /* 119561 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42637 | /* 119566 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 42638 | /* 119568 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 42639 | /* 119571 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42640 | /* 119575 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42641 | /* 119580 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 42642 | /* 119583 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 42643 | /* 119587 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 42644 | /* 119590 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42645 | /* 119595 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42646 | /* 119600 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42647 | /* 119605 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 42648 | /* 119608 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42649 | /* 119612 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42650 | /* 119617 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 42651 | /* 119619 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 42652 | /* 119622 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42653 | /* 119626 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42654 | /* 119631 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 42655 | /* 119634 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42656 | /* 119638 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 42657 | /* 119641 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42658 | /* 119646 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42659 | /* 119651 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42660 | /* 119656 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 42661 | /* 119659 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42662 | /* 119663 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42663 | /* 119668 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 42664 | /* 119670 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 42665 | /* 119673 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42666 | /* 119677 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42667 | /* 119682 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 42668 | /* 119685 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 42669 | /* 119689 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 42670 | /* 119692 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42671 | /* 119697 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42672 | /* 119702 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 42673 | /* 119707 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 42674 | /* 119710 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZr), |
| 42675 | /* 119714 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42676 | /* 119719 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42677 | /* 119722 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 42678 | /* 119725 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 42679 | /* 119728 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 42680 | /* 119730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42681 | /* 119733 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42682 | /* 119735 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 42683 | /* 119742 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 42684 | /* 119747 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42685 | /* 119752 */ // GIR_Coverage, 22168, |
| 42686 | /* 119752 */ GIR_EraseRootFromParent_Done, |
| 42687 | /* 119753 */ // Label 2645: @119753 |
| 42688 | /* 119753 */ GIM_Reject, |
| 42689 | /* 119754 */ // Label 2642: @119754 |
| 42690 | /* 119754 */ GIM_Reject, |
| 42691 | /* 119755 */ // Label 2614: @119755 |
| 42692 | /* 119755 */ GIM_Try, /*On fail goto*//*Label 2646*/ GIMT_Encode4(120068), |
| 42693 | /* 119760 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 42694 | /* 119763 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 42695 | /* 119766 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 42696 | /* 119769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42697 | /* 119773 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42698 | /* 119777 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42699 | /* 119781 */ GIM_Try, /*On fail goto*//*Label 2647*/ GIMT_Encode4(119837), // Rule ID 14124 // |
| 42700 | /* 119786 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42701 | /* 119789 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42702 | /* 119793 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42703 | /* 119797 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42704 | /* 119800 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42705 | /* 119804 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42706 | /* 119808 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42707 | /* 119810 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42708 | /* 119817 */ // (fshl:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVDZ256m:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42709 | /* 119817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVDZ256m), |
| 42710 | /* 119820 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42711 | /* 119822 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42712 | /* 119824 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42713 | /* 119826 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42714 | /* 119830 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42715 | /* 119835 */ GIR_RootConstrainSelectedInstOperands, |
| 42716 | /* 119836 */ // GIR_Coverage, 14124, |
| 42717 | /* 119836 */ GIR_EraseRootFromParent_Done, |
| 42718 | /* 119837 */ // Label 2647: @119837 |
| 42719 | /* 119837 */ GIM_Try, /*On fail goto*//*Label 2648*/ GIMT_Encode4(119856), // Rule ID 14121 // |
| 42720 | /* 119842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42721 | /* 119845 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42722 | /* 119849 */ // (fshl:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2, VR256X:{ *:[v8i32] }:$src3) => (VPSHLDVDZ256r:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2, VR256X:{ *:[v8i32] }:$src3) |
| 42723 | /* 119849 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVDZ256r), |
| 42724 | /* 119854 */ GIR_RootConstrainSelectedInstOperands, |
| 42725 | /* 119855 */ // GIR_Coverage, 14121, |
| 42726 | /* 119855 */ GIR_Done, |
| 42727 | /* 119856 */ // Label 2648: @119856 |
| 42728 | /* 119856 */ GIM_Try, /*On fail goto*//*Label 2649*/ GIMT_Encode4(120067), // Rule ID 22156 // |
| 42729 | /* 119861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 42730 | /* 119864 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42731 | /* 119868 */ // (fshl:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2, VR256X:{ *:[v8i32] }:$src3) => (EXTRACT_SUBREG:{ *:[v8i32] } (VPSHLDVDZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src2, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src3, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 42732 | /* 119868 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v16s32, |
| 42733 | /* 119871 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42734 | /* 119875 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42735 | /* 119880 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 42736 | /* 119882 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 42737 | /* 119885 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42738 | /* 119889 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42739 | /* 119894 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 42740 | /* 119897 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 42741 | /* 119901 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 42742 | /* 119904 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42743 | /* 119909 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42744 | /* 119914 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42745 | /* 119919 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 42746 | /* 119922 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42747 | /* 119926 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42748 | /* 119931 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 42749 | /* 119933 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 42750 | /* 119936 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42751 | /* 119940 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42752 | /* 119945 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 42753 | /* 119948 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42754 | /* 119952 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 42755 | /* 119955 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42756 | /* 119960 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42757 | /* 119965 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42758 | /* 119970 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 42759 | /* 119973 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42760 | /* 119977 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42761 | /* 119982 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 42762 | /* 119984 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 42763 | /* 119987 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42764 | /* 119991 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42765 | /* 119996 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 42766 | /* 119999 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 42767 | /* 120003 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 42768 | /* 120006 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42769 | /* 120011 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42770 | /* 120016 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42771 | /* 120021 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 42772 | /* 120024 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHLDVDZr), |
| 42773 | /* 120028 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42774 | /* 120033 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42775 | /* 120036 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 42776 | /* 120039 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 42777 | /* 120042 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 42778 | /* 120044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42779 | /* 120047 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42780 | /* 120049 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 42781 | /* 120056 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 42782 | /* 120061 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42783 | /* 120066 */ // GIR_Coverage, 22156, |
| 42784 | /* 120066 */ GIR_EraseRootFromParent_Done, |
| 42785 | /* 120067 */ // Label 2649: @120067 |
| 42786 | /* 120067 */ GIM_Reject, |
| 42787 | /* 120068 */ // Label 2646: @120068 |
| 42788 | /* 120068 */ GIM_Reject, |
| 42789 | /* 120069 */ // Label 2615: @120069 |
| 42790 | /* 120069 */ GIM_Try, /*On fail goto*//*Label 2650*/ GIMT_Encode4(120171), |
| 42791 | /* 120074 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 42792 | /* 120077 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 42793 | /* 120080 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 42794 | /* 120083 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42795 | /* 120087 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42796 | /* 120091 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42797 | /* 120095 */ GIM_Try, /*On fail goto*//*Label 2651*/ GIMT_Encode4(120151), // Rule ID 14142 // |
| 42798 | /* 120100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 42799 | /* 120103 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42800 | /* 120107 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42801 | /* 120111 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42802 | /* 120114 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42803 | /* 120118 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42804 | /* 120122 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42805 | /* 120124 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42806 | /* 120131 */ // (fshl:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVQZm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42807 | /* 120131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVQZm), |
| 42808 | /* 120134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42809 | /* 120136 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42810 | /* 120138 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42811 | /* 120140 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42812 | /* 120144 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42813 | /* 120149 */ GIR_RootConstrainSelectedInstOperands, |
| 42814 | /* 120150 */ // GIR_Coverage, 14142, |
| 42815 | /* 120150 */ GIR_EraseRootFromParent_Done, |
| 42816 | /* 120151 */ // Label 2651: @120151 |
| 42817 | /* 120151 */ GIM_Try, /*On fail goto*//*Label 2652*/ GIMT_Encode4(120170), // Rule ID 14139 // |
| 42818 | /* 120156 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 42819 | /* 120159 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42820 | /* 120163 */ // (fshl:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2, VR512:{ *:[v8i64] }:$src3) => (VPSHLDVQZr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2, VR512:{ *:[v8i64] }:$src3) |
| 42821 | /* 120163 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVQZr), |
| 42822 | /* 120168 */ GIR_RootConstrainSelectedInstOperands, |
| 42823 | /* 120169 */ // GIR_Coverage, 14139, |
| 42824 | /* 120169 */ GIR_Done, |
| 42825 | /* 120170 */ // Label 2652: @120170 |
| 42826 | /* 120170 */ GIM_Reject, |
| 42827 | /* 120171 */ // Label 2650: @120171 |
| 42828 | /* 120171 */ GIM_Reject, |
| 42829 | /* 120172 */ // Label 2616: @120172 |
| 42830 | /* 120172 */ GIM_Try, /*On fail goto*//*Label 2653*/ GIMT_Encode4(120485), |
| 42831 | /* 120177 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 42832 | /* 120180 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 42833 | /* 120183 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 42834 | /* 120186 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42835 | /* 120190 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42836 | /* 120194 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42837 | /* 120198 */ GIM_Try, /*On fail goto*//*Label 2654*/ GIMT_Encode4(120254), // Rule ID 14103 // |
| 42838 | /* 120203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42839 | /* 120206 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42840 | /* 120210 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42841 | /* 120214 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42842 | /* 120217 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42843 | /* 120221 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42844 | /* 120225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42845 | /* 120227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42846 | /* 120234 */ // (fshl:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVWZ256m:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42847 | /* 120234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZ256m), |
| 42848 | /* 120237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42849 | /* 120239 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42850 | /* 120241 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42851 | /* 120243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42852 | /* 120247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42853 | /* 120252 */ GIR_RootConstrainSelectedInstOperands, |
| 42854 | /* 120253 */ // GIR_Coverage, 14103, |
| 42855 | /* 120253 */ GIR_EraseRootFromParent_Done, |
| 42856 | /* 120254 */ // Label 2654: @120254 |
| 42857 | /* 120254 */ GIM_Try, /*On fail goto*//*Label 2655*/ GIMT_Encode4(120273), // Rule ID 14100 // |
| 42858 | /* 120259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 42859 | /* 120262 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42860 | /* 120266 */ // (fshl:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2, VR256X:{ *:[v16i16] }:$src3) => (VPSHLDVWZ256r:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2, VR256X:{ *:[v16i16] }:$src3) |
| 42861 | /* 120266 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZ256r), |
| 42862 | /* 120271 */ GIR_RootConstrainSelectedInstOperands, |
| 42863 | /* 120272 */ // GIR_Coverage, 14100, |
| 42864 | /* 120272 */ GIR_Done, |
| 42865 | /* 120273 */ // Label 2655: @120273 |
| 42866 | /* 120273 */ GIM_Try, /*On fail goto*//*Label 2656*/ GIMT_Encode4(120484), // Rule ID 22164 // |
| 42867 | /* 120278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 42868 | /* 120281 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 42869 | /* 120285 */ // (fshl:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2, VR256X:{ *:[v16i16] }:$src3) => (EXTRACT_SUBREG:{ *:[v16i16] } (VPSHLDVWZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src2, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src3, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 42870 | /* 120285 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v32s16, |
| 42871 | /* 120288 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42872 | /* 120292 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42873 | /* 120297 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 42874 | /* 120299 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 42875 | /* 120302 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42876 | /* 120306 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42877 | /* 120311 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 42878 | /* 120314 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 42879 | /* 120318 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 42880 | /* 120321 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42881 | /* 120326 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42882 | /* 120331 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42883 | /* 120336 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 42884 | /* 120339 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42885 | /* 120343 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42886 | /* 120348 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 42887 | /* 120350 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 42888 | /* 120353 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42889 | /* 120357 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42890 | /* 120362 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 42891 | /* 120365 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 42892 | /* 120369 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 42893 | /* 120372 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42894 | /* 120377 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42895 | /* 120382 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42896 | /* 120387 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 42897 | /* 120390 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 42898 | /* 120394 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42899 | /* 120399 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 42900 | /* 120401 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 42901 | /* 120404 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 42902 | /* 120408 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42903 | /* 120413 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 42904 | /* 120416 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 42905 | /* 120420 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 42906 | /* 120423 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 42907 | /* 120428 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42908 | /* 120433 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 42909 | /* 120438 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 42910 | /* 120441 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZr), |
| 42911 | /* 120445 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 42912 | /* 120450 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 42913 | /* 120453 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 42914 | /* 120456 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 42915 | /* 120459 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 42916 | /* 120461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 42917 | /* 120464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42918 | /* 120466 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 42919 | /* 120473 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 42920 | /* 120478 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 42921 | /* 120483 */ // GIR_Coverage, 22164, |
| 42922 | /* 120483 */ GIR_EraseRootFromParent_Done, |
| 42923 | /* 120484 */ // Label 2656: @120484 |
| 42924 | /* 120484 */ GIM_Reject, |
| 42925 | /* 120485 */ // Label 2653: @120485 |
| 42926 | /* 120485 */ GIM_Reject, |
| 42927 | /* 120486 */ // Label 2617: @120486 |
| 42928 | /* 120486 */ GIM_Try, /*On fail goto*//*Label 2657*/ GIMT_Encode4(120588), |
| 42929 | /* 120491 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 42930 | /* 120494 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 42931 | /* 120497 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 42932 | /* 120500 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42933 | /* 120504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42934 | /* 120508 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42935 | /* 120512 */ GIM_Try, /*On fail goto*//*Label 2658*/ GIMT_Encode4(120568), // Rule ID 14115 // |
| 42936 | /* 120517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 42937 | /* 120520 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42938 | /* 120524 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42939 | /* 120528 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42940 | /* 120531 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42941 | /* 120535 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42942 | /* 120539 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42943 | /* 120541 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42944 | /* 120548 */ // (fshl:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVDZm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42945 | /* 120548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVDZm), |
| 42946 | /* 120551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42947 | /* 120553 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42948 | /* 120555 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42949 | /* 120557 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42950 | /* 120561 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42951 | /* 120566 */ GIR_RootConstrainSelectedInstOperands, |
| 42952 | /* 120567 */ // GIR_Coverage, 14115, |
| 42953 | /* 120567 */ GIR_EraseRootFromParent_Done, |
| 42954 | /* 120568 */ // Label 2658: @120568 |
| 42955 | /* 120568 */ GIM_Try, /*On fail goto*//*Label 2659*/ GIMT_Encode4(120587), // Rule ID 14112 // |
| 42956 | /* 120573 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 42957 | /* 120576 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42958 | /* 120580 */ // (fshl:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2, VR512:{ *:[v16i32] }:$src3) => (VPSHLDVDZr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2, VR512:{ *:[v16i32] }:$src3) |
| 42959 | /* 120580 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVDZr), |
| 42960 | /* 120585 */ GIR_RootConstrainSelectedInstOperands, |
| 42961 | /* 120586 */ // GIR_Coverage, 14112, |
| 42962 | /* 120586 */ GIR_Done, |
| 42963 | /* 120587 */ // Label 2659: @120587 |
| 42964 | /* 120587 */ GIM_Reject, |
| 42965 | /* 120588 */ // Label 2657: @120588 |
| 42966 | /* 120588 */ GIM_Reject, |
| 42967 | /* 120589 */ // Label 2618: @120589 |
| 42968 | /* 120589 */ GIM_Try, /*On fail goto*//*Label 2660*/ GIMT_Encode4(120691), |
| 42969 | /* 120594 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 42970 | /* 120597 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 42971 | /* 120600 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 42972 | /* 120603 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42973 | /* 120607 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42974 | /* 120611 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42975 | /* 120615 */ GIM_Try, /*On fail goto*//*Label 2661*/ GIMT_Encode4(120671), // Rule ID 14097 // |
| 42976 | /* 120620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 42977 | /* 120623 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 42978 | /* 120627 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 42979 | /* 120631 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 42980 | /* 120634 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 42981 | /* 120638 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 42982 | /* 120642 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 42983 | /* 120644 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 42984 | /* 120651 */ // (fshl:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHLDVWZm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 42985 | /* 120651 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZm), |
| 42986 | /* 120654 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 42987 | /* 120656 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 42988 | /* 120658 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 42989 | /* 120660 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 42990 | /* 120664 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 42991 | /* 120669 */ GIR_RootConstrainSelectedInstOperands, |
| 42992 | /* 120670 */ // GIR_Coverage, 14097, |
| 42993 | /* 120670 */ GIR_EraseRootFromParent_Done, |
| 42994 | /* 120671 */ // Label 2661: @120671 |
| 42995 | /* 120671 */ GIM_Try, /*On fail goto*//*Label 2662*/ GIMT_Encode4(120690), // Rule ID 14094 // |
| 42996 | /* 120676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 42997 | /* 120679 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 42998 | /* 120683 */ // (fshl:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2, VR512:{ *:[v32i16] }:$src3) => (VPSHLDVWZr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2, VR512:{ *:[v32i16] }:$src3) |
| 42999 | /* 120683 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZr), |
| 43000 | /* 120688 */ GIR_RootConstrainSelectedInstOperands, |
| 43001 | /* 120689 */ // GIR_Coverage, 14094, |
| 43002 | /* 120689 */ GIR_Done, |
| 43003 | /* 120690 */ // Label 2662: @120690 |
| 43004 | /* 120690 */ GIM_Reject, |
| 43005 | /* 120691 */ // Label 2660: @120691 |
| 43006 | /* 120691 */ GIM_Reject, |
| 43007 | /* 120692 */ // Label 2619: @120692 |
| 43008 | /* 120692 */ GIM_Reject, |
| 43009 | /* 120693 */ // Label 31: @120693 |
| 43010 | /* 120693 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(23), /*)*//*default:*//*Label 2674*/ GIMT_Encode4(123459), |
| 43011 | /* 120704 */ /*GILLT_s32*//*Label 2663*/ GIMT_Encode4(120784), |
| 43012 | /* 120708 */ /*GILLT_s64*//*Label 2664*/ GIMT_Encode4(120962), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 43013 | /* 120724 */ /*GILLT_v2s64*//*Label 2665*/ GIMT_Encode4(121140), GIMT_Encode4(0), |
| 43014 | /* 120732 */ /*GILLT_v4s32*//*Label 2666*/ GIMT_Encode4(121484), |
| 43015 | /* 120736 */ /*GILLT_v4s64*//*Label 2667*/ GIMT_Encode4(121828), GIMT_Encode4(0), |
| 43016 | /* 120744 */ /*GILLT_v8s16*//*Label 2668*/ GIMT_Encode4(122148), |
| 43017 | /* 120748 */ /*GILLT_v8s32*//*Label 2669*/ GIMT_Encode4(122492), |
| 43018 | /* 120752 */ /*GILLT_v8s64*//*Label 2670*/ GIMT_Encode4(122812), GIMT_Encode4(0), GIMT_Encode4(0), |
| 43019 | /* 120764 */ /*GILLT_v16s16*//*Label 2671*/ GIMT_Encode4(122921), |
| 43020 | /* 120768 */ /*GILLT_v16s32*//*Label 2672*/ GIMT_Encode4(123241), GIMT_Encode4(0), GIMT_Encode4(0), |
| 43021 | /* 120780 */ /*GILLT_v32s16*//*Label 2673*/ GIMT_Encode4(123350), |
| 43022 | /* 120784 */ // Label 2663: @120784 |
| 43023 | /* 120784 */ GIM_Try, /*On fail goto*//*Label 2675*/ GIMT_Encode4(120961), |
| 43024 | /* 120789 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 43025 | /* 120792 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 43026 | /* 120795 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 43027 | /* 120798 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43028 | /* 120802 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43029 | /* 120806 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 43030 | /* 120810 */ GIM_Try, /*On fail goto*//*Label 2676*/ GIMT_Encode4(120845), // Rule ID 846 // |
| 43031 | /* 120815 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43032 | /* 120818 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43033 | /* 120822 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43034 | /* 120826 */ // MIs[1] Operand 1 |
| 43035 | /* 120826 */ // No operand predicates |
| 43036 | /* 120826 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43037 | /* 120828 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src3) => (SHRD32rri8:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43038 | /* 120828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32rri8), |
| 43039 | /* 120831 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43040 | /* 120833 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43041 | /* 120835 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43042 | /* 120837 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 43043 | /* 120840 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43044 | /* 120843 */ GIR_RootConstrainSelectedInstOperands, |
| 43045 | /* 120844 */ // GIR_Coverage, 846, |
| 43046 | /* 120844 */ GIR_EraseRootFromParent_Done, |
| 43047 | /* 120845 */ // Label 2676: @120845 |
| 43048 | /* 120845 */ GIM_Try, /*On fail goto*//*Label 2677*/ GIMT_Encode4(120880), // Rule ID 852 // |
| 43049 | /* 120850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43050 | /* 120853 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43051 | /* 120857 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43052 | /* 120861 */ // MIs[1] Operand 1 |
| 43053 | /* 120861 */ // No operand predicates |
| 43054 | /* 120861 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43055 | /* 120863 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src3) => (SHRD32rri8_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43056 | /* 120863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32rri8_ND), |
| 43057 | /* 120866 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43058 | /* 120868 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43059 | /* 120870 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43060 | /* 120872 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 43061 | /* 120875 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43062 | /* 120878 */ GIR_RootConstrainSelectedInstOperands, |
| 43063 | /* 120879 */ // GIR_Coverage, 852, |
| 43064 | /* 120879 */ GIR_EraseRootFromParent_Done, |
| 43065 | /* 120880 */ // Label 2677: @120880 |
| 43066 | /* 120880 */ GIM_Try, /*On fail goto*//*Label 2678*/ GIMT_Encode4(120920), // Rule ID 849 // |
| 43067 | /* 120885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43068 | /* 120888 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43069 | /* 120892 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHRD32rrCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 43070 | /* 120892 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43071 | /* 120896 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43072 | /* 120902 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43073 | /* 120906 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32rrCL), |
| 43074 | /* 120909 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43075 | /* 120911 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43076 | /* 120913 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43077 | /* 120915 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43078 | /* 120918 */ GIR_RootConstrainSelectedInstOperands, |
| 43079 | /* 120919 */ // GIR_Coverage, 849, |
| 43080 | /* 120919 */ GIR_EraseRootFromParent_Done, |
| 43081 | /* 120920 */ // Label 2678: @120920 |
| 43082 | /* 120920 */ GIM_Try, /*On fail goto*//*Label 2679*/ GIMT_Encode4(120960), // Rule ID 855 // |
| 43083 | /* 120925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43084 | /* 120928 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43085 | /* 120932 */ // (fshr:{ *:[i32] } GR32:{ *:[i32] }:$src2, GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (SHRD32rrCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, GR32:{ *:[i32] }:$src2) |
| 43086 | /* 120932 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43087 | /* 120936 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43088 | /* 120942 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43089 | /* 120946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD32rrCL_ND), |
| 43090 | /* 120949 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43091 | /* 120951 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43092 | /* 120953 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43093 | /* 120955 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43094 | /* 120958 */ GIR_RootConstrainSelectedInstOperands, |
| 43095 | /* 120959 */ // GIR_Coverage, 855, |
| 43096 | /* 120959 */ GIR_EraseRootFromParent_Done, |
| 43097 | /* 120960 */ // Label 2679: @120960 |
| 43098 | /* 120960 */ GIM_Reject, |
| 43099 | /* 120961 */ // Label 2675: @120961 |
| 43100 | /* 120961 */ GIM_Reject, |
| 43101 | /* 120962 */ // Label 2664: @120962 |
| 43102 | /* 120962 */ GIM_Try, /*On fail goto*//*Label 2680*/ GIMT_Encode4(121139), |
| 43103 | /* 120967 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 43104 | /* 120970 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 43105 | /* 120973 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s8, |
| 43106 | /* 120976 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43107 | /* 120980 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43108 | /* 120984 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 43109 | /* 120988 */ GIM_Try, /*On fail goto*//*Label 2681*/ GIMT_Encode4(121023), // Rule ID 847 // |
| 43110 | /* 120993 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43111 | /* 120996 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43112 | /* 121000 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43113 | /* 121004 */ // MIs[1] Operand 1 |
| 43114 | /* 121004 */ // No operand predicates |
| 43115 | /* 121004 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43116 | /* 121006 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src3) => (SHRD64rri8:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43117 | /* 121006 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64rri8), |
| 43118 | /* 121009 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43119 | /* 121011 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43120 | /* 121013 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43121 | /* 121015 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 43122 | /* 121018 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43123 | /* 121021 */ GIR_RootConstrainSelectedInstOperands, |
| 43124 | /* 121022 */ // GIR_Coverage, 847, |
| 43125 | /* 121022 */ GIR_EraseRootFromParent_Done, |
| 43126 | /* 121023 */ // Label 2681: @121023 |
| 43127 | /* 121023 */ GIM_Try, /*On fail goto*//*Label 2682*/ GIMT_Encode4(121058), // Rule ID 853 // |
| 43128 | /* 121028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43129 | /* 121031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43130 | /* 121035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43131 | /* 121039 */ // MIs[1] Operand 1 |
| 43132 | /* 121039 */ // No operand predicates |
| 43133 | /* 121039 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43134 | /* 121041 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src3) => (SHRD64rri8_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2, (imm:{ *:[i8] }):$src3) |
| 43135 | /* 121041 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64rri8_ND), |
| 43136 | /* 121044 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43137 | /* 121046 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43138 | /* 121048 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43139 | /* 121050 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src3 |
| 43140 | /* 121053 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43141 | /* 121056 */ GIR_RootConstrainSelectedInstOperands, |
| 43142 | /* 121057 */ // GIR_Coverage, 853, |
| 43143 | /* 121057 */ GIR_EraseRootFromParent_Done, |
| 43144 | /* 121058 */ // Label 2682: @121058 |
| 43145 | /* 121058 */ GIM_Try, /*On fail goto*//*Label 2683*/ GIMT_Encode4(121098), // Rule ID 850 // |
| 43146 | /* 121063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43147 | /* 121066 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43148 | /* 121070 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHRD64rrCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 43149 | /* 121070 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43150 | /* 121074 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43151 | /* 121080 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43152 | /* 121084 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64rrCL), |
| 43153 | /* 121087 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43154 | /* 121089 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43155 | /* 121091 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43156 | /* 121093 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43157 | /* 121096 */ GIR_RootConstrainSelectedInstOperands, |
| 43158 | /* 121097 */ // GIR_Coverage, 850, |
| 43159 | /* 121097 */ GIR_EraseRootFromParent_Done, |
| 43160 | /* 121098 */ // Label 2683: @121098 |
| 43161 | /* 121098 */ GIM_Try, /*On fail goto*//*Label 2684*/ GIMT_Encode4(121138), // Rule ID 856 // |
| 43162 | /* 121103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 43163 | /* 121106 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 43164 | /* 121110 */ // (fshr:{ *:[i64] } GR64:{ *:[i64] }:$src2, GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (SHRD64rrCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, GR64:{ *:[i64] }:$src2) |
| 43165 | /* 121110 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43166 | /* 121114 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43167 | /* 121120 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // CL |
| 43168 | /* 121124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRD64rrCL_ND), |
| 43169 | /* 121127 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43170 | /* 121129 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43171 | /* 121131 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43172 | /* 121133 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43173 | /* 121136 */ GIR_RootConstrainSelectedInstOperands, |
| 43174 | /* 121137 */ // GIR_Coverage, 856, |
| 43175 | /* 121137 */ GIR_EraseRootFromParent_Done, |
| 43176 | /* 121138 */ // Label 2684: @121138 |
| 43177 | /* 121138 */ GIM_Reject, |
| 43178 | /* 121139 */ // Label 2680: @121139 |
| 43179 | /* 121139 */ GIM_Reject, |
| 43180 | /* 121140 */ // Label 2665: @121140 |
| 43181 | /* 121140 */ GIM_Try, /*On fail goto*//*Label 2685*/ GIMT_Encode4(121483), |
| 43182 | /* 121145 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 43183 | /* 121148 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 43184 | /* 121151 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 43185 | /* 121154 */ GIM_Try, /*On fail goto*//*Label 2686*/ GIMT_Encode4(121222), // Rule ID 14232 // |
| 43186 | /* 121159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43187 | /* 121162 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43188 | /* 121166 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43189 | /* 121170 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43190 | /* 121174 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43191 | /* 121178 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43192 | /* 121182 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43193 | /* 121185 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43194 | /* 121189 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43195 | /* 121193 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43196 | /* 121195 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43197 | /* 121202 */ // (fshr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src2, VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVQZ128m:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43198 | /* 121202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVQZ128m), |
| 43199 | /* 121205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43200 | /* 121207 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43201 | /* 121209 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43202 | /* 121211 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43203 | /* 121215 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43204 | /* 121220 */ GIR_RootConstrainSelectedInstOperands, |
| 43205 | /* 121221 */ // GIR_Coverage, 14232, |
| 43206 | /* 121221 */ GIR_EraseRootFromParent_Done, |
| 43207 | /* 121222 */ // Label 2686: @121222 |
| 43208 | /* 121222 */ GIM_Try, /*On fail goto*//*Label 2687*/ GIMT_Encode4(121259), // Rule ID 14229 // |
| 43209 | /* 121227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43210 | /* 121230 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43211 | /* 121234 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43212 | /* 121238 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43213 | /* 121242 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43214 | /* 121246 */ // (fshr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src2, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src3) => (VPSHRDVQZ128r:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, VR128X:{ *:[v2i64] }:$src3) |
| 43215 | /* 121246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVQZ128r), |
| 43216 | /* 121249 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43217 | /* 121251 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43218 | /* 121253 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43219 | /* 121255 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43220 | /* 121257 */ GIR_RootConstrainSelectedInstOperands, |
| 43221 | /* 121258 */ // GIR_Coverage, 14229, |
| 43222 | /* 121258 */ GIR_EraseRootFromParent_Done, |
| 43223 | /* 121259 */ // Label 2687: @121259 |
| 43224 | /* 121259 */ GIM_Try, /*On fail goto*//*Label 2688*/ GIMT_Encode4(121482), // Rule ID 22154 // |
| 43225 | /* 121264 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 43226 | /* 121267 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 43227 | /* 121271 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43228 | /* 121275 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43229 | /* 121279 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43230 | /* 121283 */ // (fshr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2, VR128X:{ *:[v2i64] }:$src3) => (EXTRACT_SUBREG:{ *:[v2i64] } (VPSHRDVQZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src2, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR128X:{ *:[v2i64] }:$src3, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 43231 | /* 121283 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 43232 | /* 121286 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43233 | /* 121290 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43234 | /* 121295 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 43235 | /* 121297 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 43236 | /* 121300 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43237 | /* 121304 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43238 | /* 121309 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 43239 | /* 121312 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 43240 | /* 121316 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 43241 | /* 121319 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43242 | /* 121324 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43243 | /* 121329 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43244 | /* 121334 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 43245 | /* 121337 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43246 | /* 121341 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43247 | /* 121346 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 43248 | /* 121348 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 43249 | /* 121351 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43250 | /* 121355 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43251 | /* 121360 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 43252 | /* 121363 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 43253 | /* 121367 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 43254 | /* 121370 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43255 | /* 121375 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43256 | /* 121380 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43257 | /* 121385 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 43258 | /* 121388 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43259 | /* 121392 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43260 | /* 121397 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 43261 | /* 121399 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 43262 | /* 121402 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43263 | /* 121406 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43264 | /* 121411 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 43265 | /* 121414 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43266 | /* 121418 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 43267 | /* 121421 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43268 | /* 121426 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43269 | /* 121431 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43270 | /* 121436 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 43271 | /* 121439 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHRDVQZr), |
| 43272 | /* 121443 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43273 | /* 121448 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43274 | /* 121451 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 43275 | /* 121454 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 43276 | /* 121457 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 43277 | /* 121459 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43278 | /* 121462 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43279 | /* 121464 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 43280 | /* 121471 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 43281 | /* 121476 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43282 | /* 121481 */ // GIR_Coverage, 22154, |
| 43283 | /* 121481 */ GIR_EraseRootFromParent_Done, |
| 43284 | /* 121482 */ // Label 2688: @121482 |
| 43285 | /* 121482 */ GIM_Reject, |
| 43286 | /* 121483 */ // Label 2685: @121483 |
| 43287 | /* 121483 */ GIM_Reject, |
| 43288 | /* 121484 */ // Label 2666: @121484 |
| 43289 | /* 121484 */ GIM_Try, /*On fail goto*//*Label 2689*/ GIMT_Encode4(121827), |
| 43290 | /* 121489 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 43291 | /* 121492 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 43292 | /* 121495 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 43293 | /* 121498 */ GIM_Try, /*On fail goto*//*Label 2690*/ GIMT_Encode4(121566), // Rule ID 14205 // |
| 43294 | /* 121503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43295 | /* 121506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43296 | /* 121510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43297 | /* 121514 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43298 | /* 121518 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43299 | /* 121522 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43300 | /* 121526 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43301 | /* 121529 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43302 | /* 121533 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43303 | /* 121537 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43304 | /* 121539 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43305 | /* 121546 */ // (fshr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src2, VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVDZ128m:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43306 | /* 121546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVDZ128m), |
| 43307 | /* 121549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43308 | /* 121551 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43309 | /* 121553 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43310 | /* 121555 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43311 | /* 121559 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43312 | /* 121564 */ GIR_RootConstrainSelectedInstOperands, |
| 43313 | /* 121565 */ // GIR_Coverage, 14205, |
| 43314 | /* 121565 */ GIR_EraseRootFromParent_Done, |
| 43315 | /* 121566 */ // Label 2690: @121566 |
| 43316 | /* 121566 */ GIM_Try, /*On fail goto*//*Label 2691*/ GIMT_Encode4(121603), // Rule ID 14202 // |
| 43317 | /* 121571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43318 | /* 121574 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43319 | /* 121578 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43320 | /* 121582 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43321 | /* 121586 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43322 | /* 121590 */ // (fshr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src2, VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src3) => (VPSHRDVDZ128r:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2, VR128X:{ *:[v4i32] }:$src3) |
| 43323 | /* 121590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVDZ128r), |
| 43324 | /* 121593 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43325 | /* 121595 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43326 | /* 121597 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43327 | /* 121599 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43328 | /* 121601 */ GIR_RootConstrainSelectedInstOperands, |
| 43329 | /* 121602 */ // GIR_Coverage, 14202, |
| 43330 | /* 121602 */ GIR_EraseRootFromParent_Done, |
| 43331 | /* 121603 */ // Label 2691: @121603 |
| 43332 | /* 121603 */ GIM_Try, /*On fail goto*//*Label 2692*/ GIMT_Encode4(121826), // Rule ID 22162 // |
| 43333 | /* 121608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 43334 | /* 121611 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 43335 | /* 121615 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43336 | /* 121619 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43337 | /* 121623 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43338 | /* 121627 */ // (fshr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2, VR128X:{ *:[v4i32] }:$src3) => (EXTRACT_SUBREG:{ *:[v4i32] } (VPSHRDVDZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src2, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR128X:{ *:[v4i32] }:$src3, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 43339 | /* 121627 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v16s32, |
| 43340 | /* 121630 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43341 | /* 121634 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43342 | /* 121639 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 43343 | /* 121641 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 43344 | /* 121644 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43345 | /* 121648 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43346 | /* 121653 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 43347 | /* 121656 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 43348 | /* 121660 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 43349 | /* 121663 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43350 | /* 121668 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43351 | /* 121673 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43352 | /* 121678 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 43353 | /* 121681 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43354 | /* 121685 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43355 | /* 121690 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 43356 | /* 121692 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 43357 | /* 121695 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43358 | /* 121699 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43359 | /* 121704 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 43360 | /* 121707 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 43361 | /* 121711 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 43362 | /* 121714 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43363 | /* 121719 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43364 | /* 121724 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43365 | /* 121729 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 43366 | /* 121732 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43367 | /* 121736 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43368 | /* 121741 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 43369 | /* 121743 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 43370 | /* 121746 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43371 | /* 121750 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43372 | /* 121755 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 43373 | /* 121758 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43374 | /* 121762 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 43375 | /* 121765 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43376 | /* 121770 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43377 | /* 121775 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43378 | /* 121780 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 43379 | /* 121783 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHRDVDZr), |
| 43380 | /* 121787 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43381 | /* 121792 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43382 | /* 121795 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 43383 | /* 121798 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 43384 | /* 121801 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 43385 | /* 121803 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43386 | /* 121806 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43387 | /* 121808 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 43388 | /* 121815 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 43389 | /* 121820 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43390 | /* 121825 */ // GIR_Coverage, 22162, |
| 43391 | /* 121825 */ GIR_EraseRootFromParent_Done, |
| 43392 | /* 121826 */ // Label 2692: @121826 |
| 43393 | /* 121826 */ GIM_Reject, |
| 43394 | /* 121827 */ // Label 2689: @121827 |
| 43395 | /* 121827 */ GIM_Reject, |
| 43396 | /* 121828 */ // Label 2667: @121828 |
| 43397 | /* 121828 */ GIM_Try, /*On fail goto*//*Label 2693*/ GIMT_Encode4(122147), |
| 43398 | /* 121833 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 43399 | /* 121836 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 43400 | /* 121839 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 43401 | /* 121842 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43402 | /* 121846 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43403 | /* 121850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43404 | /* 121854 */ GIM_Try, /*On fail goto*//*Label 2694*/ GIMT_Encode4(121910), // Rule ID 14223 // |
| 43405 | /* 121859 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43406 | /* 121862 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43407 | /* 121866 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43408 | /* 121870 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43409 | /* 121873 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43410 | /* 121877 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43411 | /* 121881 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43412 | /* 121883 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43413 | /* 121890 */ // (fshr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src2, VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVQZ256m:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43414 | /* 121890 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVQZ256m), |
| 43415 | /* 121893 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43416 | /* 121895 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43417 | /* 121897 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43418 | /* 121899 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43419 | /* 121903 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43420 | /* 121908 */ GIR_RootConstrainSelectedInstOperands, |
| 43421 | /* 121909 */ // GIR_Coverage, 14223, |
| 43422 | /* 121909 */ GIR_EraseRootFromParent_Done, |
| 43423 | /* 121910 */ // Label 2694: @121910 |
| 43424 | /* 121910 */ GIM_Try, /*On fail goto*//*Label 2695*/ GIMT_Encode4(121935), // Rule ID 14220 // |
| 43425 | /* 121915 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43426 | /* 121918 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43427 | /* 121922 */ // (fshr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src2, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src3) => (VPSHRDVQZ256r:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, VR256X:{ *:[v4i64] }:$src3) |
| 43428 | /* 121922 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVQZ256r), |
| 43429 | /* 121925 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43430 | /* 121927 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43431 | /* 121929 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43432 | /* 121931 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43433 | /* 121933 */ GIR_RootConstrainSelectedInstOperands, |
| 43434 | /* 121934 */ // GIR_Coverage, 14220, |
| 43435 | /* 121934 */ GIR_EraseRootFromParent_Done, |
| 43436 | /* 121935 */ // Label 2695: @121935 |
| 43437 | /* 121935 */ GIM_Try, /*On fail goto*//*Label 2696*/ GIMT_Encode4(122146), // Rule ID 22150 // |
| 43438 | /* 121940 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 43439 | /* 121943 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43440 | /* 121947 */ // (fshr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2, VR256X:{ *:[v4i64] }:$src3) => (EXTRACT_SUBREG:{ *:[v4i64] } (VPSHRDVQZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src2, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v8i64] } (IMPLICIT_DEF:{ *:[v8i64] }), VR256X:{ *:[v4i64] }:$src3, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 43441 | /* 121947 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v8s64, |
| 43442 | /* 121950 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43443 | /* 121954 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43444 | /* 121959 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 43445 | /* 121961 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 43446 | /* 121964 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43447 | /* 121968 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43448 | /* 121973 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 43449 | /* 121976 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 43450 | /* 121980 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 43451 | /* 121983 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43452 | /* 121988 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43453 | /* 121993 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43454 | /* 121998 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 43455 | /* 122001 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43456 | /* 122005 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43457 | /* 122010 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 43458 | /* 122012 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 43459 | /* 122015 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43460 | /* 122019 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43461 | /* 122024 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 43462 | /* 122027 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 43463 | /* 122031 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 43464 | /* 122034 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43465 | /* 122039 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43466 | /* 122044 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43467 | /* 122049 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 43468 | /* 122052 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43469 | /* 122056 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43470 | /* 122061 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 43471 | /* 122063 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 43472 | /* 122066 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43473 | /* 122070 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43474 | /* 122075 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 43475 | /* 122078 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43476 | /* 122082 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 43477 | /* 122085 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43478 | /* 122090 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43479 | /* 122095 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43480 | /* 122100 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 43481 | /* 122103 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHRDVQZr), |
| 43482 | /* 122107 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43483 | /* 122112 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43484 | /* 122115 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 43485 | /* 122118 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 43486 | /* 122121 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 43487 | /* 122123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43488 | /* 122126 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43489 | /* 122128 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 43490 | /* 122135 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 43491 | /* 122140 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43492 | /* 122145 */ // GIR_Coverage, 22150, |
| 43493 | /* 122145 */ GIR_EraseRootFromParent_Done, |
| 43494 | /* 122146 */ // Label 2696: @122146 |
| 43495 | /* 122146 */ GIM_Reject, |
| 43496 | /* 122147 */ // Label 2693: @122147 |
| 43497 | /* 122147 */ GIM_Reject, |
| 43498 | /* 122148 */ // Label 2668: @122148 |
| 43499 | /* 122148 */ GIM_Try, /*On fail goto*//*Label 2697*/ GIMT_Encode4(122491), |
| 43500 | /* 122153 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 43501 | /* 122156 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 43502 | /* 122159 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 43503 | /* 122162 */ GIM_Try, /*On fail goto*//*Label 2698*/ GIMT_Encode4(122230), // Rule ID 14181 // |
| 43504 | /* 122167 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43505 | /* 122170 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43506 | /* 122174 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43507 | /* 122178 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43508 | /* 122182 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43509 | /* 122186 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43510 | /* 122190 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43511 | /* 122193 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43512 | /* 122197 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43513 | /* 122201 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43514 | /* 122203 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43515 | /* 122210 */ // (fshr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src2, VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVWZ128m:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43516 | /* 122210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZ128m), |
| 43517 | /* 122213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43518 | /* 122215 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43519 | /* 122217 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43520 | /* 122219 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43521 | /* 122223 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43522 | /* 122228 */ GIR_RootConstrainSelectedInstOperands, |
| 43523 | /* 122229 */ // GIR_Coverage, 14181, |
| 43524 | /* 122229 */ GIR_EraseRootFromParent_Done, |
| 43525 | /* 122230 */ // Label 2698: @122230 |
| 43526 | /* 122230 */ GIM_Try, /*On fail goto*//*Label 2699*/ GIMT_Encode4(122267), // Rule ID 14178 // |
| 43527 | /* 122235 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43528 | /* 122238 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43529 | /* 122242 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43530 | /* 122246 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43531 | /* 122250 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43532 | /* 122254 */ // (fshr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src2, VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src3) => (VPSHRDVWZ128r:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2, VR128X:{ *:[v8i16] }:$src3) |
| 43533 | /* 122254 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZ128r), |
| 43534 | /* 122257 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43535 | /* 122259 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43536 | /* 122261 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43537 | /* 122263 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43538 | /* 122265 */ GIR_RootConstrainSelectedInstOperands, |
| 43539 | /* 122266 */ // GIR_Coverage, 14178, |
| 43540 | /* 122266 */ GIR_EraseRootFromParent_Done, |
| 43541 | /* 122267 */ // Label 2699: @122267 |
| 43542 | /* 122267 */ GIM_Try, /*On fail goto*//*Label 2700*/ GIMT_Encode4(122490), // Rule ID 22170 // |
| 43543 | /* 122272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 43544 | /* 122275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 43545 | /* 122279 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43546 | /* 122283 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43547 | /* 122287 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 43548 | /* 122291 */ // (fshr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2, VR128X:{ *:[v8i16] }:$src3) => (EXTRACT_SUBREG:{ *:[v8i16] } (VPSHRDVWZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src2, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src3, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 43549 | /* 122291 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v32s16, |
| 43550 | /* 122294 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43551 | /* 122298 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43552 | /* 122303 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 43553 | /* 122305 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 43554 | /* 122308 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43555 | /* 122312 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43556 | /* 122317 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 43557 | /* 122320 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 43558 | /* 122324 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 43559 | /* 122327 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43560 | /* 122332 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43561 | /* 122337 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43562 | /* 122342 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 43563 | /* 122345 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43564 | /* 122349 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43565 | /* 122354 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 43566 | /* 122356 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 43567 | /* 122359 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43568 | /* 122363 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43569 | /* 122368 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 43570 | /* 122371 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 43571 | /* 122375 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 43572 | /* 122378 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43573 | /* 122383 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43574 | /* 122388 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43575 | /* 122393 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 43576 | /* 122396 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43577 | /* 122400 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43578 | /* 122405 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 43579 | /* 122407 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 43580 | /* 122410 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43581 | /* 122414 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43582 | /* 122419 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 43583 | /* 122422 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43584 | /* 122426 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 43585 | /* 122429 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43586 | /* 122434 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43587 | /* 122439 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 43588 | /* 122444 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 43589 | /* 122447 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZr), |
| 43590 | /* 122451 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43591 | /* 122456 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43592 | /* 122459 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 43593 | /* 122462 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 43594 | /* 122465 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 43595 | /* 122467 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43596 | /* 122470 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43597 | /* 122472 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 43598 | /* 122479 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 43599 | /* 122484 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43600 | /* 122489 */ // GIR_Coverage, 22170, |
| 43601 | /* 122489 */ GIR_EraseRootFromParent_Done, |
| 43602 | /* 122490 */ // Label 2700: @122490 |
| 43603 | /* 122490 */ GIM_Reject, |
| 43604 | /* 122491 */ // Label 2697: @122491 |
| 43605 | /* 122491 */ GIM_Reject, |
| 43606 | /* 122492 */ // Label 2669: @122492 |
| 43607 | /* 122492 */ GIM_Try, /*On fail goto*//*Label 2701*/ GIMT_Encode4(122811), |
| 43608 | /* 122497 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 43609 | /* 122500 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 43610 | /* 122503 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 43611 | /* 122506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43612 | /* 122510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43613 | /* 122514 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43614 | /* 122518 */ GIM_Try, /*On fail goto*//*Label 2702*/ GIMT_Encode4(122574), // Rule ID 14196 // |
| 43615 | /* 122523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43616 | /* 122526 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43617 | /* 122530 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43618 | /* 122534 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43619 | /* 122537 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43620 | /* 122541 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43621 | /* 122545 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43622 | /* 122547 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43623 | /* 122554 */ // (fshr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src2, VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVDZ256m:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43624 | /* 122554 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVDZ256m), |
| 43625 | /* 122557 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43626 | /* 122559 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43627 | /* 122561 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43628 | /* 122563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43629 | /* 122567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43630 | /* 122572 */ GIR_RootConstrainSelectedInstOperands, |
| 43631 | /* 122573 */ // GIR_Coverage, 14196, |
| 43632 | /* 122573 */ GIR_EraseRootFromParent_Done, |
| 43633 | /* 122574 */ // Label 2702: @122574 |
| 43634 | /* 122574 */ GIM_Try, /*On fail goto*//*Label 2703*/ GIMT_Encode4(122599), // Rule ID 14193 // |
| 43635 | /* 122579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43636 | /* 122582 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43637 | /* 122586 */ // (fshr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src2, VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src3) => (VPSHRDVDZ256r:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2, VR256X:{ *:[v8i32] }:$src3) |
| 43638 | /* 122586 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVDZ256r), |
| 43639 | /* 122589 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43640 | /* 122591 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43641 | /* 122593 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43642 | /* 122595 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43643 | /* 122597 */ GIR_RootConstrainSelectedInstOperands, |
| 43644 | /* 122598 */ // GIR_Coverage, 14193, |
| 43645 | /* 122598 */ GIR_EraseRootFromParent_Done, |
| 43646 | /* 122599 */ // Label 2703: @122599 |
| 43647 | /* 122599 */ GIM_Try, /*On fail goto*//*Label 2704*/ GIMT_Encode4(122810), // Rule ID 22158 // |
| 43648 | /* 122604 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 43649 | /* 122607 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43650 | /* 122611 */ // (fshr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2, VR256X:{ *:[v8i32] }:$src3) => (EXTRACT_SUBREG:{ *:[v8i32] } (VPSHRDVDZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src2, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v16i32] } (IMPLICIT_DEF:{ *:[v16i32] }), VR256X:{ *:[v8i32] }:$src3, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 43651 | /* 122611 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v16s32, |
| 43652 | /* 122614 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43653 | /* 122618 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43654 | /* 122623 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 43655 | /* 122625 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 43656 | /* 122628 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43657 | /* 122632 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43658 | /* 122637 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 43659 | /* 122640 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 43660 | /* 122644 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 43661 | /* 122647 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43662 | /* 122652 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43663 | /* 122657 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43664 | /* 122662 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 43665 | /* 122665 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43666 | /* 122669 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43667 | /* 122674 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 43668 | /* 122676 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 43669 | /* 122679 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43670 | /* 122683 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43671 | /* 122688 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 43672 | /* 122691 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 43673 | /* 122695 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 43674 | /* 122698 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43675 | /* 122703 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43676 | /* 122708 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43677 | /* 122713 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 43678 | /* 122716 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43679 | /* 122720 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43680 | /* 122725 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 43681 | /* 122727 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 43682 | /* 122730 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43683 | /* 122734 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43684 | /* 122739 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 43685 | /* 122742 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43686 | /* 122746 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 43687 | /* 122749 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43688 | /* 122754 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43689 | /* 122759 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43690 | /* 122764 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 43691 | /* 122767 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHRDVDZr), |
| 43692 | /* 122771 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43693 | /* 122776 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43694 | /* 122779 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 43695 | /* 122782 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 43696 | /* 122785 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 43697 | /* 122787 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43698 | /* 122790 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43699 | /* 122792 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 43700 | /* 122799 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 43701 | /* 122804 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43702 | /* 122809 */ // GIR_Coverage, 22158, |
| 43703 | /* 122809 */ GIR_EraseRootFromParent_Done, |
| 43704 | /* 122810 */ // Label 2704: @122810 |
| 43705 | /* 122810 */ GIM_Reject, |
| 43706 | /* 122811 */ // Label 2701: @122811 |
| 43707 | /* 122811 */ GIM_Reject, |
| 43708 | /* 122812 */ // Label 2670: @122812 |
| 43709 | /* 122812 */ GIM_Try, /*On fail goto*//*Label 2705*/ GIMT_Encode4(122920), |
| 43710 | /* 122817 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 43711 | /* 122820 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 43712 | /* 122823 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 43713 | /* 122826 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43714 | /* 122830 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43715 | /* 122834 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43716 | /* 122838 */ GIM_Try, /*On fail goto*//*Label 2706*/ GIMT_Encode4(122894), // Rule ID 14214 // |
| 43717 | /* 122843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 43718 | /* 122846 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43719 | /* 122850 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43720 | /* 122854 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43721 | /* 122857 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43722 | /* 122861 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43723 | /* 122865 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43724 | /* 122867 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43725 | /* 122874 */ // (fshr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src2, VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVQZm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43726 | /* 122874 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVQZm), |
| 43727 | /* 122877 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43728 | /* 122879 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43729 | /* 122881 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43730 | /* 122883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43731 | /* 122887 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43732 | /* 122892 */ GIR_RootConstrainSelectedInstOperands, |
| 43733 | /* 122893 */ // GIR_Coverage, 14214, |
| 43734 | /* 122893 */ GIR_EraseRootFromParent_Done, |
| 43735 | /* 122894 */ // Label 2706: @122894 |
| 43736 | /* 122894 */ GIM_Try, /*On fail goto*//*Label 2707*/ GIMT_Encode4(122919), // Rule ID 14211 // |
| 43737 | /* 122899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 43738 | /* 122902 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43739 | /* 122906 */ // (fshr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src2, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src3) => (VPSHRDVQZr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2, VR512:{ *:[v8i64] }:$src3) |
| 43740 | /* 122906 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVQZr), |
| 43741 | /* 122909 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43742 | /* 122911 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43743 | /* 122913 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43744 | /* 122915 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43745 | /* 122917 */ GIR_RootConstrainSelectedInstOperands, |
| 43746 | /* 122918 */ // GIR_Coverage, 14211, |
| 43747 | /* 122918 */ GIR_EraseRootFromParent_Done, |
| 43748 | /* 122919 */ // Label 2707: @122919 |
| 43749 | /* 122919 */ GIM_Reject, |
| 43750 | /* 122920 */ // Label 2705: @122920 |
| 43751 | /* 122920 */ GIM_Reject, |
| 43752 | /* 122921 */ // Label 2671: @122921 |
| 43753 | /* 122921 */ GIM_Try, /*On fail goto*//*Label 2708*/ GIMT_Encode4(123240), |
| 43754 | /* 122926 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 43755 | /* 122929 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 43756 | /* 122932 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 43757 | /* 122935 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43758 | /* 122939 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43759 | /* 122943 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43760 | /* 122947 */ GIM_Try, /*On fail goto*//*Label 2709*/ GIMT_Encode4(123003), // Rule ID 14175 // |
| 43761 | /* 122952 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43762 | /* 122955 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43763 | /* 122959 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43764 | /* 122963 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43765 | /* 122966 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43766 | /* 122970 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43767 | /* 122974 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43768 | /* 122976 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43769 | /* 122983 */ // (fshr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src2, VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVWZ256m:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43770 | /* 122983 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZ256m), |
| 43771 | /* 122986 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43772 | /* 122988 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43773 | /* 122990 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43774 | /* 122992 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43775 | /* 122996 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43776 | /* 123001 */ GIR_RootConstrainSelectedInstOperands, |
| 43777 | /* 123002 */ // GIR_Coverage, 14175, |
| 43778 | /* 123002 */ GIR_EraseRootFromParent_Done, |
| 43779 | /* 123003 */ // Label 2709: @123003 |
| 43780 | /* 123003 */ GIM_Try, /*On fail goto*//*Label 2710*/ GIMT_Encode4(123028), // Rule ID 14172 // |
| 43781 | /* 123008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 43782 | /* 123011 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43783 | /* 123015 */ // (fshr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src2, VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src3) => (VPSHRDVWZ256r:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2, VR256X:{ *:[v16i16] }:$src3) |
| 43784 | /* 123015 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZ256r), |
| 43785 | /* 123018 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43786 | /* 123020 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43787 | /* 123022 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43788 | /* 123024 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43789 | /* 123026 */ GIR_RootConstrainSelectedInstOperands, |
| 43790 | /* 123027 */ // GIR_Coverage, 14172, |
| 43791 | /* 123027 */ GIR_EraseRootFromParent_Done, |
| 43792 | /* 123028 */ // Label 2710: @123028 |
| 43793 | /* 123028 */ GIM_Try, /*On fail goto*//*Label 2711*/ GIMT_Encode4(123239), // Rule ID 22166 // |
| 43794 | /* 123033 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 43795 | /* 123036 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 43796 | /* 123040 */ // (fshr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2, VR256X:{ *:[v16i16] }:$src3) => (EXTRACT_SUBREG:{ *:[v16i16] } (VPSHRDVWZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src2, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src3, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 43797 | /* 123040 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v32s16, |
| 43798 | /* 123043 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43799 | /* 123047 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43800 | /* 123052 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 43801 | /* 123054 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 43802 | /* 123057 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43803 | /* 123061 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43804 | /* 123066 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 43805 | /* 123069 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/3, // src3 |
| 43806 | /* 123073 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 43807 | /* 123076 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43808 | /* 123081 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43809 | /* 123086 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43810 | /* 123091 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 43811 | /* 123094 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43812 | /* 123098 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43813 | /* 123103 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 43814 | /* 123105 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 43815 | /* 123108 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43816 | /* 123112 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43817 | /* 123117 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 43818 | /* 123120 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 43819 | /* 123124 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 43820 | /* 123127 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43821 | /* 123132 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43822 | /* 123137 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43823 | /* 123142 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 43824 | /* 123145 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 43825 | /* 123149 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43826 | /* 123154 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 43827 | /* 123156 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 43828 | /* 123159 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 43829 | /* 123163 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43830 | /* 123168 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 43831 | /* 123171 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 43832 | /* 123175 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 43833 | /* 123178 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 43834 | /* 123183 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43835 | /* 123188 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 43836 | /* 123193 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 43837 | /* 123196 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZr), |
| 43838 | /* 123200 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 43839 | /* 123205 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 43840 | /* 123208 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 43841 | /* 123211 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 43842 | /* 123214 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 43843 | /* 123216 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 43844 | /* 123219 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43845 | /* 123221 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 43846 | /* 123228 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 43847 | /* 123233 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 43848 | /* 123238 */ // GIR_Coverage, 22166, |
| 43849 | /* 123238 */ GIR_EraseRootFromParent_Done, |
| 43850 | /* 123239 */ // Label 2711: @123239 |
| 43851 | /* 123239 */ GIM_Reject, |
| 43852 | /* 123240 */ // Label 2708: @123240 |
| 43853 | /* 123240 */ GIM_Reject, |
| 43854 | /* 123241 */ // Label 2672: @123241 |
| 43855 | /* 123241 */ GIM_Try, /*On fail goto*//*Label 2712*/ GIMT_Encode4(123349), |
| 43856 | /* 123246 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 43857 | /* 123249 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 43858 | /* 123252 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 43859 | /* 123255 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43860 | /* 123259 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43861 | /* 123263 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43862 | /* 123267 */ GIM_Try, /*On fail goto*//*Label 2713*/ GIMT_Encode4(123323), // Rule ID 14187 // |
| 43863 | /* 123272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 43864 | /* 123275 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43865 | /* 123279 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43866 | /* 123283 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43867 | /* 123286 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43868 | /* 123290 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43869 | /* 123294 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43870 | /* 123296 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43871 | /* 123303 */ // (fshr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src2, VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVDZm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43872 | /* 123303 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVDZm), |
| 43873 | /* 123306 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43874 | /* 123308 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43875 | /* 123310 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43876 | /* 123312 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43877 | /* 123316 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43878 | /* 123321 */ GIR_RootConstrainSelectedInstOperands, |
| 43879 | /* 123322 */ // GIR_Coverage, 14187, |
| 43880 | /* 123322 */ GIR_EraseRootFromParent_Done, |
| 43881 | /* 123323 */ // Label 2713: @123323 |
| 43882 | /* 123323 */ GIM_Try, /*On fail goto*//*Label 2714*/ GIMT_Encode4(123348), // Rule ID 14184 // |
| 43883 | /* 123328 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 43884 | /* 123331 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43885 | /* 123335 */ // (fshr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src2, VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src3) => (VPSHRDVDZr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2, VR512:{ *:[v16i32] }:$src3) |
| 43886 | /* 123335 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVDZr), |
| 43887 | /* 123338 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43888 | /* 123340 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43889 | /* 123342 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43890 | /* 123344 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43891 | /* 123346 */ GIR_RootConstrainSelectedInstOperands, |
| 43892 | /* 123347 */ // GIR_Coverage, 14184, |
| 43893 | /* 123347 */ GIR_EraseRootFromParent_Done, |
| 43894 | /* 123348 */ // Label 2714: @123348 |
| 43895 | /* 123348 */ GIM_Reject, |
| 43896 | /* 123349 */ // Label 2712: @123349 |
| 43897 | /* 123349 */ GIM_Reject, |
| 43898 | /* 123350 */ // Label 2673: @123350 |
| 43899 | /* 123350 */ GIM_Try, /*On fail goto*//*Label 2715*/ GIMT_Encode4(123458), |
| 43900 | /* 123355 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 43901 | /* 123358 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 43902 | /* 123361 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 43903 | /* 123364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43904 | /* 123368 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43905 | /* 123372 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43906 | /* 123376 */ GIM_Try, /*On fail goto*//*Label 2716*/ GIMT_Encode4(123432), // Rule ID 14169 // |
| 43907 | /* 123381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 43908 | /* 123384 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 43909 | /* 123388 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 43910 | /* 123392 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 43911 | /* 123395 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 43912 | /* 123399 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 43913 | /* 123403 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43914 | /* 123405 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 43915 | /* 123412 */ // (fshr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src2, VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src3)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSHRDVWZm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2, addr:{ *:[iPTR] }:$src3) |
| 43916 | /* 123412 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZm), |
| 43917 | /* 123415 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43918 | /* 123417 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43919 | /* 123419 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43920 | /* 123421 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 43921 | /* 123425 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 43922 | /* 123430 */ GIR_RootConstrainSelectedInstOperands, |
| 43923 | /* 123431 */ // GIR_Coverage, 14169, |
| 43924 | /* 123431 */ GIR_EraseRootFromParent_Done, |
| 43925 | /* 123432 */ // Label 2716: @123432 |
| 43926 | /* 123432 */ GIM_Try, /*On fail goto*//*Label 2717*/ GIMT_Encode4(123457), // Rule ID 14166 // |
| 43927 | /* 123437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 43928 | /* 123440 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 43929 | /* 123444 */ // (fshr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src2, VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src3) => (VPSHRDVWZr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2, VR512:{ *:[v32i16] }:$src3) |
| 43930 | /* 123444 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZr), |
| 43931 | /* 123447 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43932 | /* 123449 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 43933 | /* 123451 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 43934 | /* 123453 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 43935 | /* 123455 */ GIR_RootConstrainSelectedInstOperands, |
| 43936 | /* 123456 */ // GIR_Coverage, 14166, |
| 43937 | /* 123456 */ GIR_EraseRootFromParent_Done, |
| 43938 | /* 123457 */ // Label 2717: @123457 |
| 43939 | /* 123457 */ GIM_Reject, |
| 43940 | /* 123458 */ // Label 2715: @123458 |
| 43941 | /* 123458 */ GIM_Reject, |
| 43942 | /* 123459 */ // Label 2674: @123459 |
| 43943 | /* 123459 */ GIM_Reject, |
| 43944 | /* 123460 */ // Label 32: @123460 |
| 43945 | /* 123460 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(23), /*)*//*default:*//*Label 2731*/ GIMT_Encode4(126691), |
| 43946 | /* 123471 */ /*GILLT_s8*//*Label 2718*/ GIMT_Encode4(123559), |
| 43947 | /* 123475 */ /*GILLT_s16*//*Label 2719*/ GIMT_Encode4(123770), |
| 43948 | /* 123479 */ /*GILLT_s32*//*Label 2720*/ GIMT_Encode4(123981), |
| 43949 | /* 123483 */ /*GILLT_s64*//*Label 2721*/ GIMT_Encode4(124445), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 43950 | /* 123499 */ /*GILLT_v2s64*//*Label 2722*/ GIMT_Encode4(124909), GIMT_Encode4(0), |
| 43951 | /* 123507 */ /*GILLT_v4s32*//*Label 2723*/ GIMT_Encode4(125176), |
| 43952 | /* 123511 */ /*GILLT_v4s64*//*Label 2724*/ GIMT_Encode4(125443), GIMT_Encode4(0), |
| 43953 | /* 123519 */ /*GILLT_v8s16*//*Label 2725*/ GIMT_Encode4(125694), |
| 43954 | /* 123523 */ /*GILLT_v8s32*//*Label 2726*/ GIMT_Encode4(125959), |
| 43955 | /* 123527 */ /*GILLT_v8s64*//*Label 2727*/ GIMT_Encode4(126210), GIMT_Encode4(0), GIMT_Encode4(0), |
| 43956 | /* 123539 */ /*GILLT_v16s16*//*Label 2728*/ GIMT_Encode4(126304), |
| 43957 | /* 123543 */ /*GILLT_v16s32*//*Label 2729*/ GIMT_Encode4(126557), GIMT_Encode4(0), GIMT_Encode4(0), |
| 43958 | /* 123555 */ /*GILLT_v32s16*//*Label 2730*/ GIMT_Encode4(126651), |
| 43959 | /* 123559 */ // Label 2718: @123559 |
| 43960 | /* 123559 */ GIM_Try, /*On fail goto*//*Label 2732*/ GIMT_Encode4(123769), |
| 43961 | /* 123564 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 43962 | /* 123567 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 43963 | /* 123570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43964 | /* 123574 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 43965 | /* 123578 */ GIM_Try, /*On fail goto*//*Label 2733*/ GIMT_Encode4(123602), // Rule ID 17590 // |
| 43966 | /* 123583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43967 | /* 123586 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 43968 | /* 123590 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, 7:{ *:[i8] }) => (ROL8r1:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 43969 | /* 123590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8r1), |
| 43970 | /* 123593 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43971 | /* 123595 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43972 | /* 123597 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43973 | /* 123600 */ GIR_RootConstrainSelectedInstOperands, |
| 43974 | /* 123601 */ // GIR_Coverage, 17590, |
| 43975 | /* 123601 */ GIR_EraseRootFromParent_Done, |
| 43976 | /* 123602 */ // Label 2733: @123602 |
| 43977 | /* 123602 */ GIM_Try, /*On fail goto*//*Label 2734*/ GIMT_Encode4(123626), // Rule ID 17598 // |
| 43978 | /* 123607 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 43979 | /* 123610 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 43980 | /* 123614 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, 7:{ *:[i8] }) => (ROL8r1_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 43981 | /* 123614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8r1_ND), |
| 43982 | /* 123617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43983 | /* 123619 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 43984 | /* 123621 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 43985 | /* 123624 */ GIR_RootConstrainSelectedInstOperands, |
| 43986 | /* 123625 */ // GIR_Coverage, 17598, |
| 43987 | /* 123625 */ GIR_EraseRootFromParent_Done, |
| 43988 | /* 123626 */ // Label 2734: @123626 |
| 43989 | /* 123626 */ GIM_Try, /*On fail goto*//*Label 2735*/ GIMT_Encode4(123659), // Rule ID 789 // |
| 43990 | /* 123631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 43991 | /* 123634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 43992 | /* 123638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 43993 | /* 123642 */ // MIs[1] Operand 1 |
| 43994 | /* 123642 */ // No operand predicates |
| 43995 | /* 123642 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 43996 | /* 123644 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 43997 | /* 123644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8ri), |
| 43998 | /* 123647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 43999 | /* 123649 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44000 | /* 123651 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44001 | /* 123654 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44002 | /* 123657 */ GIR_RootConstrainSelectedInstOperands, |
| 44003 | /* 123658 */ // GIR_Coverage, 789, |
| 44004 | /* 123658 */ GIR_EraseRootFromParent_Done, |
| 44005 | /* 123659 */ // Label 2735: @123659 |
| 44006 | /* 123659 */ GIM_Try, /*On fail goto*//*Label 2736*/ GIMT_Encode4(123692), // Rule ID 793 // |
| 44007 | /* 123664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44008 | /* 123667 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44009 | /* 123671 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44010 | /* 123675 */ // MIs[1] Operand 1 |
| 44011 | /* 123675 */ // No operand predicates |
| 44012 | /* 123675 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44013 | /* 123677 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44014 | /* 123677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8ri_ND), |
| 44015 | /* 123680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44016 | /* 123682 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44017 | /* 123684 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44018 | /* 123687 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44019 | /* 123690 */ GIR_RootConstrainSelectedInstOperands, |
| 44020 | /* 123691 */ // GIR_Coverage, 793, |
| 44021 | /* 123691 */ GIR_EraseRootFromParent_Done, |
| 44022 | /* 123692 */ // Label 2736: @123692 |
| 44023 | /* 123692 */ GIM_Try, /*On fail goto*//*Label 2737*/ GIMT_Encode4(123730), // Rule ID 805 // |
| 44024 | /* 123697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44025 | /* 123700 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44026 | /* 123704 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (ROR8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 44027 | /* 123704 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44028 | /* 123708 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44029 | /* 123714 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44030 | /* 123718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8rCL), |
| 44031 | /* 123721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44032 | /* 123723 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44033 | /* 123725 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44034 | /* 123728 */ GIR_RootConstrainSelectedInstOperands, |
| 44035 | /* 123729 */ // GIR_Coverage, 805, |
| 44036 | /* 123729 */ GIR_EraseRootFromParent_Done, |
| 44037 | /* 123730 */ // Label 2737: @123730 |
| 44038 | /* 123730 */ GIM_Try, /*On fail goto*//*Label 2738*/ GIMT_Encode4(123768), // Rule ID 809 // |
| 44039 | /* 123735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44040 | /* 123738 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44041 | /* 123742 */ // (rotr:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (ROR8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 44042 | /* 123742 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44043 | /* 123746 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44044 | /* 123752 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44045 | /* 123756 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8rCL_ND), |
| 44046 | /* 123759 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44047 | /* 123761 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44048 | /* 123763 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44049 | /* 123766 */ GIR_RootConstrainSelectedInstOperands, |
| 44050 | /* 123767 */ // GIR_Coverage, 809, |
| 44051 | /* 123767 */ GIR_EraseRootFromParent_Done, |
| 44052 | /* 123768 */ // Label 2738: @123768 |
| 44053 | /* 123768 */ GIM_Reject, |
| 44054 | /* 123769 */ // Label 2732: @123769 |
| 44055 | /* 123769 */ GIM_Reject, |
| 44056 | /* 123770 */ // Label 2719: @123770 |
| 44057 | /* 123770 */ GIM_Try, /*On fail goto*//*Label 2739*/ GIMT_Encode4(123980), |
| 44058 | /* 123775 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 44059 | /* 123778 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 44060 | /* 123781 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44061 | /* 123785 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 44062 | /* 123789 */ GIM_Try, /*On fail goto*//*Label 2740*/ GIMT_Encode4(123813), // Rule ID 17591 // |
| 44063 | /* 123794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44064 | /* 123797 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 44065 | /* 123801 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, 15:{ *:[i8] }) => (ROL16r1:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 44066 | /* 123801 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16r1), |
| 44067 | /* 123804 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44068 | /* 123806 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44069 | /* 123808 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44070 | /* 123811 */ GIR_RootConstrainSelectedInstOperands, |
| 44071 | /* 123812 */ // GIR_Coverage, 17591, |
| 44072 | /* 123812 */ GIR_EraseRootFromParent_Done, |
| 44073 | /* 123813 */ // Label 2740: @123813 |
| 44074 | /* 123813 */ GIM_Try, /*On fail goto*//*Label 2741*/ GIMT_Encode4(123837), // Rule ID 17599 // |
| 44075 | /* 123818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44076 | /* 123821 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 44077 | /* 123825 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, 15:{ *:[i8] }) => (ROL16r1_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 44078 | /* 123825 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16r1_ND), |
| 44079 | /* 123828 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44080 | /* 123830 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44081 | /* 123832 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44082 | /* 123835 */ GIR_RootConstrainSelectedInstOperands, |
| 44083 | /* 123836 */ // GIR_Coverage, 17599, |
| 44084 | /* 123836 */ GIR_EraseRootFromParent_Done, |
| 44085 | /* 123837 */ // Label 2741: @123837 |
| 44086 | /* 123837 */ GIM_Try, /*On fail goto*//*Label 2742*/ GIMT_Encode4(123870), // Rule ID 790 // |
| 44087 | /* 123842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44088 | /* 123845 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44089 | /* 123849 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44090 | /* 123853 */ // MIs[1] Operand 1 |
| 44091 | /* 123853 */ // No operand predicates |
| 44092 | /* 123853 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44093 | /* 123855 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44094 | /* 123855 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16ri), |
| 44095 | /* 123858 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44096 | /* 123860 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44097 | /* 123862 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44098 | /* 123865 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44099 | /* 123868 */ GIR_RootConstrainSelectedInstOperands, |
| 44100 | /* 123869 */ // GIR_Coverage, 790, |
| 44101 | /* 123869 */ GIR_EraseRootFromParent_Done, |
| 44102 | /* 123870 */ // Label 2742: @123870 |
| 44103 | /* 123870 */ GIM_Try, /*On fail goto*//*Label 2743*/ GIMT_Encode4(123903), // Rule ID 794 // |
| 44104 | /* 123875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44105 | /* 123878 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44106 | /* 123882 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44107 | /* 123886 */ // MIs[1] Operand 1 |
| 44108 | /* 123886 */ // No operand predicates |
| 44109 | /* 123886 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44110 | /* 123888 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44111 | /* 123888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16ri_ND), |
| 44112 | /* 123891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44113 | /* 123893 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44114 | /* 123895 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44115 | /* 123898 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44116 | /* 123901 */ GIR_RootConstrainSelectedInstOperands, |
| 44117 | /* 123902 */ // GIR_Coverage, 794, |
| 44118 | /* 123902 */ GIR_EraseRootFromParent_Done, |
| 44119 | /* 123903 */ // Label 2743: @123903 |
| 44120 | /* 123903 */ GIM_Try, /*On fail goto*//*Label 2744*/ GIMT_Encode4(123941), // Rule ID 806 // |
| 44121 | /* 123908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44122 | /* 123911 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44123 | /* 123915 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (ROR16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 44124 | /* 123915 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44125 | /* 123919 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44126 | /* 123925 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44127 | /* 123929 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16rCL), |
| 44128 | /* 123932 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44129 | /* 123934 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44130 | /* 123936 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44131 | /* 123939 */ GIR_RootConstrainSelectedInstOperands, |
| 44132 | /* 123940 */ // GIR_Coverage, 806, |
| 44133 | /* 123940 */ GIR_EraseRootFromParent_Done, |
| 44134 | /* 123941 */ // Label 2744: @123941 |
| 44135 | /* 123941 */ GIM_Try, /*On fail goto*//*Label 2745*/ GIMT_Encode4(123979), // Rule ID 810 // |
| 44136 | /* 123946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44137 | /* 123949 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44138 | /* 123953 */ // (rotr:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (ROR16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 44139 | /* 123953 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44140 | /* 123957 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44141 | /* 123963 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44142 | /* 123967 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16rCL_ND), |
| 44143 | /* 123970 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44144 | /* 123972 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44145 | /* 123974 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44146 | /* 123977 */ GIR_RootConstrainSelectedInstOperands, |
| 44147 | /* 123978 */ // GIR_Coverage, 810, |
| 44148 | /* 123978 */ GIR_EraseRootFromParent_Done, |
| 44149 | /* 123979 */ // Label 2745: @123979 |
| 44150 | /* 123979 */ GIM_Reject, |
| 44151 | /* 123980 */ // Label 2739: @123980 |
| 44152 | /* 123980 */ GIM_Reject, |
| 44153 | /* 123981 */ // Label 2720: @123981 |
| 44154 | /* 123981 */ GIM_Try, /*On fail goto*//*Label 2746*/ GIMT_Encode4(124444), |
| 44155 | /* 123986 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 44156 | /* 123989 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 44157 | /* 123992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44158 | /* 123996 */ GIM_Try, /*On fail goto*//*Label 2747*/ GIMT_Encode4(124060), // Rule ID 17638 // |
| 44159 | /* 124001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 44160 | /* 124004 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44161 | /* 124008 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44162 | /* 124012 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44163 | /* 124015 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44164 | /* 124019 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 44165 | /* 124023 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44166 | /* 124027 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44167 | /* 124031 */ // MIs[2] Operand 1 |
| 44168 | /* 124031 */ // No operand predicates |
| 44169 | /* 124031 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44170 | /* 124033 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44171 | /* 124040 */ // (rotr:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>, (imm:{ *:[i8] }):$shamt) => (RORX32mi:{ *:[i32] } addr:{ *:[iPTR] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44172 | /* 124040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX32mi), |
| 44173 | /* 124043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44174 | /* 124045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44175 | /* 124049 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // shamt |
| 44176 | /* 124052 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44177 | /* 124058 */ GIR_RootConstrainSelectedInstOperands, |
| 44178 | /* 124059 */ // GIR_Coverage, 17638, |
| 44179 | /* 124059 */ GIR_EraseRootFromParent_Done, |
| 44180 | /* 124060 */ // Label 2747: @124060 |
| 44181 | /* 124060 */ GIM_Try, /*On fail goto*//*Label 2748*/ GIMT_Encode4(124124), // Rule ID 17670 // |
| 44182 | /* 124065 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 44183 | /* 124068 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44184 | /* 124072 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44185 | /* 124076 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44186 | /* 124079 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44187 | /* 124083 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 44188 | /* 124087 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44189 | /* 124091 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44190 | /* 124095 */ // MIs[2] Operand 1 |
| 44191 | /* 124095 */ // No operand predicates |
| 44192 | /* 124095 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44193 | /* 124097 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44194 | /* 124104 */ // (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) |
| 44195 | /* 124104 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX32mi_EVEX), |
| 44196 | /* 124107 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44197 | /* 124109 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44198 | /* 124113 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // shamt |
| 44199 | /* 124116 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44200 | /* 124122 */ GIR_RootConstrainSelectedInstOperands, |
| 44201 | /* 124123 */ // GIR_Coverage, 17670, |
| 44202 | /* 124123 */ GIR_EraseRootFromParent_Done, |
| 44203 | /* 124124 */ // Label 2748: @124124 |
| 44204 | /* 124124 */ GIM_Try, /*On fail goto*//*Label 2749*/ GIMT_Encode4(124158), // Rule ID 17634 // |
| 44205 | /* 124129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 44206 | /* 124132 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44207 | /* 124136 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44208 | /* 124140 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44209 | /* 124144 */ // MIs[1] Operand 1 |
| 44210 | /* 124144 */ // No operand predicates |
| 44211 | /* 124144 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44212 | /* 124146 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src, (imm:{ *:[i8] }):$shamt) => (RORX32ri:{ *:[i32] } GR32:{ *:[i32] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44213 | /* 124146 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX32ri), |
| 44214 | /* 124149 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44215 | /* 124151 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 44216 | /* 124153 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44217 | /* 124156 */ GIR_RootConstrainSelectedInstOperands, |
| 44218 | /* 124157 */ // GIR_Coverage, 17634, |
| 44219 | /* 124157 */ GIR_EraseRootFromParent_Done, |
| 44220 | /* 124158 */ // Label 2749: @124158 |
| 44221 | /* 124158 */ GIM_Try, /*On fail goto*//*Label 2750*/ GIMT_Encode4(124192), // Rule ID 17666 // |
| 44222 | /* 124163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 44223 | /* 124166 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44224 | /* 124170 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44225 | /* 124174 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44226 | /* 124178 */ // MIs[1] Operand 1 |
| 44227 | /* 124178 */ // No operand predicates |
| 44228 | /* 124178 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44229 | /* 124180 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src, (imm:{ *:[i8] }):$shamt) => (RORX32ri_EVEX:{ *:[i32] } GR32:{ *:[i32] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44230 | /* 124180 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX32ri_EVEX), |
| 44231 | /* 124183 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44232 | /* 124185 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 44233 | /* 124187 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44234 | /* 124190 */ GIR_RootConstrainSelectedInstOperands, |
| 44235 | /* 124191 */ // GIR_Coverage, 17666, |
| 44236 | /* 124191 */ GIR_EraseRootFromParent_Done, |
| 44237 | /* 124192 */ // Label 2750: @124192 |
| 44238 | /* 124192 */ GIM_Try, /*On fail goto*//*Label 2751*/ GIMT_Encode4(124229), // Rule ID 871 // |
| 44239 | /* 124197 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFastSHLDRotate), |
| 44240 | /* 124200 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44241 | /* 124204 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44242 | /* 124208 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44243 | /* 124212 */ // MIs[1] Operand 1 |
| 44244 | /* 124212 */ // No operand predicates |
| 44245 | /* 124212 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44246 | /* 124214 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$shamt) => (SHRDROT32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$shamt) |
| 44247 | /* 124214 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRDROT32ri), |
| 44248 | /* 124217 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44249 | /* 124219 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44250 | /* 124221 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44251 | /* 124224 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44252 | /* 124227 */ GIR_RootConstrainSelectedInstOperands, |
| 44253 | /* 124228 */ // GIR_Coverage, 871, |
| 44254 | /* 124228 */ GIR_EraseRootFromParent_Done, |
| 44255 | /* 124229 */ // Label 2751: @124229 |
| 44256 | /* 124229 */ GIM_Try, /*On fail goto*//*Label 2752*/ GIMT_Encode4(124257), // Rule ID 17592 // |
| 44257 | /* 124234 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44258 | /* 124237 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44259 | /* 124241 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 44260 | /* 124245 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, 31:{ *:[i8] }) => (ROL32r1:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 44261 | /* 124245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32r1), |
| 44262 | /* 124248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44263 | /* 124250 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44264 | /* 124252 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44265 | /* 124255 */ GIR_RootConstrainSelectedInstOperands, |
| 44266 | /* 124256 */ // GIR_Coverage, 17592, |
| 44267 | /* 124256 */ GIR_EraseRootFromParent_Done, |
| 44268 | /* 124257 */ // Label 2752: @124257 |
| 44269 | /* 124257 */ GIM_Try, /*On fail goto*//*Label 2753*/ GIMT_Encode4(124285), // Rule ID 17600 // |
| 44270 | /* 124262 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44271 | /* 124265 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44272 | /* 124269 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 44273 | /* 124273 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, 31:{ *:[i8] }) => (ROL32r1_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 44274 | /* 124273 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32r1_ND), |
| 44275 | /* 124276 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44276 | /* 124278 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44277 | /* 124280 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44278 | /* 124283 */ GIR_RootConstrainSelectedInstOperands, |
| 44279 | /* 124284 */ // GIR_Coverage, 17600, |
| 44280 | /* 124284 */ GIR_EraseRootFromParent_Done, |
| 44281 | /* 124285 */ // Label 2753: @124285 |
| 44282 | /* 124285 */ GIM_Try, /*On fail goto*//*Label 2754*/ GIMT_Encode4(124322), // Rule ID 791 // |
| 44283 | /* 124290 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44284 | /* 124293 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44285 | /* 124297 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44286 | /* 124301 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44287 | /* 124305 */ // MIs[1] Operand 1 |
| 44288 | /* 124305 */ // No operand predicates |
| 44289 | /* 124305 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44290 | /* 124307 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44291 | /* 124307 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32ri), |
| 44292 | /* 124310 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44293 | /* 124312 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44294 | /* 124314 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44295 | /* 124317 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44296 | /* 124320 */ GIR_RootConstrainSelectedInstOperands, |
| 44297 | /* 124321 */ // GIR_Coverage, 791, |
| 44298 | /* 124321 */ GIR_EraseRootFromParent_Done, |
| 44299 | /* 124322 */ // Label 2754: @124322 |
| 44300 | /* 124322 */ GIM_Try, /*On fail goto*//*Label 2755*/ GIMT_Encode4(124359), // Rule ID 795 // |
| 44301 | /* 124327 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44302 | /* 124330 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44303 | /* 124334 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44304 | /* 124338 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44305 | /* 124342 */ // MIs[1] Operand 1 |
| 44306 | /* 124342 */ // No operand predicates |
| 44307 | /* 124342 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44308 | /* 124344 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44309 | /* 124344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32ri_ND), |
| 44310 | /* 124347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44311 | /* 124349 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44312 | /* 124351 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44313 | /* 124354 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44314 | /* 124357 */ GIR_RootConstrainSelectedInstOperands, |
| 44315 | /* 124358 */ // GIR_Coverage, 795, |
| 44316 | /* 124358 */ GIR_EraseRootFromParent_Done, |
| 44317 | /* 124359 */ // Label 2755: @124359 |
| 44318 | /* 124359 */ GIM_Try, /*On fail goto*//*Label 2756*/ GIMT_Encode4(124401), // Rule ID 807 // |
| 44319 | /* 124364 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44320 | /* 124367 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44321 | /* 124371 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44322 | /* 124375 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (ROR32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 44323 | /* 124375 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44324 | /* 124379 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44325 | /* 124385 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44326 | /* 124389 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32rCL), |
| 44327 | /* 124392 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44328 | /* 124394 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44329 | /* 124396 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44330 | /* 124399 */ GIR_RootConstrainSelectedInstOperands, |
| 44331 | /* 124400 */ // GIR_Coverage, 807, |
| 44332 | /* 124400 */ GIR_EraseRootFromParent_Done, |
| 44333 | /* 124401 */ // Label 2756: @124401 |
| 44334 | /* 124401 */ GIM_Try, /*On fail goto*//*Label 2757*/ GIMT_Encode4(124443), // Rule ID 811 // |
| 44335 | /* 124406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44336 | /* 124409 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 44337 | /* 124413 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44338 | /* 124417 */ // (rotr:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (ROR32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 44339 | /* 124417 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44340 | /* 124421 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44341 | /* 124427 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44342 | /* 124431 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32rCL_ND), |
| 44343 | /* 124434 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44344 | /* 124436 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44345 | /* 124438 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44346 | /* 124441 */ GIR_RootConstrainSelectedInstOperands, |
| 44347 | /* 124442 */ // GIR_Coverage, 811, |
| 44348 | /* 124442 */ GIR_EraseRootFromParent_Done, |
| 44349 | /* 124443 */ // Label 2757: @124443 |
| 44350 | /* 124443 */ GIM_Reject, |
| 44351 | /* 124444 */ // Label 2746: @124444 |
| 44352 | /* 124444 */ GIM_Reject, |
| 44353 | /* 124445 */ // Label 2721: @124445 |
| 44354 | /* 124445 */ GIM_Try, /*On fail goto*//*Label 2758*/ GIMT_Encode4(124908), |
| 44355 | /* 124450 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 44356 | /* 124453 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 44357 | /* 124456 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44358 | /* 124460 */ GIM_Try, /*On fail goto*//*Label 2759*/ GIMT_Encode4(124524), // Rule ID 17639 // |
| 44359 | /* 124465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 44360 | /* 124468 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44361 | /* 124472 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44362 | /* 124476 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44363 | /* 124479 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44364 | /* 124483 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44365 | /* 124487 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44366 | /* 124491 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44367 | /* 124495 */ // MIs[2] Operand 1 |
| 44368 | /* 124495 */ // No operand predicates |
| 44369 | /* 124495 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44370 | /* 124497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44371 | /* 124504 */ // (rotr:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:{ *:[i8] }):$shamt) => (RORX64mi:{ *:[i64] } addr:{ *:[iPTR] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44372 | /* 124504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX64mi), |
| 44373 | /* 124507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44374 | /* 124509 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44375 | /* 124513 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // shamt |
| 44376 | /* 124516 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44377 | /* 124522 */ GIR_RootConstrainSelectedInstOperands, |
| 44378 | /* 124523 */ // GIR_Coverage, 17639, |
| 44379 | /* 124523 */ GIR_EraseRootFromParent_Done, |
| 44380 | /* 124524 */ // Label 2759: @124524 |
| 44381 | /* 124524 */ GIM_Try, /*On fail goto*//*Label 2760*/ GIMT_Encode4(124588), // Rule ID 17671 // |
| 44382 | /* 124529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 44383 | /* 124532 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 44384 | /* 124536 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44385 | /* 124540 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44386 | /* 124543 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44387 | /* 124547 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44388 | /* 124551 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/2, // MIs[2] |
| 44389 | /* 124555 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44390 | /* 124559 */ // MIs[2] Operand 1 |
| 44391 | /* 124559 */ // No operand predicates |
| 44392 | /* 124559 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 44393 | /* 124561 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44394 | /* 124568 */ // (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) |
| 44395 | /* 124568 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX64mi_EVEX), |
| 44396 | /* 124571 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44397 | /* 124573 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 44398 | /* 124577 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // shamt |
| 44399 | /* 124580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 44400 | /* 124586 */ GIR_RootConstrainSelectedInstOperands, |
| 44401 | /* 124587 */ // GIR_Coverage, 17671, |
| 44402 | /* 124587 */ GIR_EraseRootFromParent_Done, |
| 44403 | /* 124588 */ // Label 2760: @124588 |
| 44404 | /* 124588 */ GIM_Try, /*On fail goto*//*Label 2761*/ GIMT_Encode4(124622), // Rule ID 17635 // |
| 44405 | /* 124593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_NoEGPR), |
| 44406 | /* 124596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44407 | /* 124600 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44408 | /* 124604 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44409 | /* 124608 */ // MIs[1] Operand 1 |
| 44410 | /* 124608 */ // No operand predicates |
| 44411 | /* 124608 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44412 | /* 124610 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src, (imm:{ *:[i8] }):$shamt) => (RORX64ri:{ *:[i64] } GR64:{ *:[i64] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44413 | /* 124610 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX64ri), |
| 44414 | /* 124613 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44415 | /* 124615 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 44416 | /* 124617 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44417 | /* 124620 */ GIR_RootConstrainSelectedInstOperands, |
| 44418 | /* 124621 */ // GIR_Coverage, 17635, |
| 44419 | /* 124621 */ GIR_EraseRootFromParent_Done, |
| 44420 | /* 124622 */ // Label 2761: @124622 |
| 44421 | /* 124622 */ GIM_Try, /*On fail goto*//*Label 2762*/ GIMT_Encode4(124656), // Rule ID 17667 // |
| 44422 | /* 124627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI2_HasEGPR), |
| 44423 | /* 124630 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44424 | /* 124634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44425 | /* 124638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44426 | /* 124642 */ // MIs[1] Operand 1 |
| 44427 | /* 124642 */ // No operand predicates |
| 44428 | /* 124642 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44429 | /* 124644 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src, (imm:{ *:[i8] }):$shamt) => (RORX64ri_EVEX:{ *:[i64] } GR64:{ *:[i64] }:$src, (imm:{ *:[i8] }):$shamt) |
| 44430 | /* 124644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::RORX64ri_EVEX), |
| 44431 | /* 124647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44432 | /* 124649 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 44433 | /* 124651 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44434 | /* 124654 */ GIR_RootConstrainSelectedInstOperands, |
| 44435 | /* 124655 */ // GIR_Coverage, 17667, |
| 44436 | /* 124655 */ GIR_EraseRootFromParent_Done, |
| 44437 | /* 124656 */ // Label 2762: @124656 |
| 44438 | /* 124656 */ GIM_Try, /*On fail goto*//*Label 2763*/ GIMT_Encode4(124693), // Rule ID 872 // |
| 44439 | /* 124661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFastSHLDRotate), |
| 44440 | /* 124664 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44441 | /* 124668 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44442 | /* 124672 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44443 | /* 124676 */ // MIs[1] Operand 1 |
| 44444 | /* 124676 */ // No operand predicates |
| 44445 | /* 124676 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44446 | /* 124678 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$shamt) => (SHRDROT64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$shamt) |
| 44447 | /* 124678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHRDROT64ri), |
| 44448 | /* 124681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44449 | /* 124683 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44450 | /* 124685 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 44451 | /* 124688 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44452 | /* 124691 */ GIR_RootConstrainSelectedInstOperands, |
| 44453 | /* 124692 */ // GIR_Coverage, 872, |
| 44454 | /* 124692 */ GIR_EraseRootFromParent_Done, |
| 44455 | /* 124693 */ // Label 2763: @124693 |
| 44456 | /* 124693 */ GIM_Try, /*On fail goto*//*Label 2764*/ GIMT_Encode4(124721), // Rule ID 17593 // |
| 44457 | /* 124698 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44458 | /* 124701 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44459 | /* 124705 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 44460 | /* 124709 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, 63:{ *:[i8] }) => (ROL64r1:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 44461 | /* 124709 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64r1), |
| 44462 | /* 124712 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44463 | /* 124714 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44464 | /* 124716 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44465 | /* 124719 */ GIR_RootConstrainSelectedInstOperands, |
| 44466 | /* 124720 */ // GIR_Coverage, 17593, |
| 44467 | /* 124720 */ GIR_EraseRootFromParent_Done, |
| 44468 | /* 124721 */ // Label 2764: @124721 |
| 44469 | /* 124721 */ GIM_Try, /*On fail goto*//*Label 2765*/ GIMT_Encode4(124749), // Rule ID 17601 // |
| 44470 | /* 124726 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 44471 | /* 124729 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44472 | /* 124733 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 44473 | /* 124737 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, 63:{ *:[i8] }) => (ROL64r1_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 44474 | /* 124737 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64r1_ND), |
| 44475 | /* 124740 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44476 | /* 124742 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44477 | /* 124744 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44478 | /* 124747 */ GIR_RootConstrainSelectedInstOperands, |
| 44479 | /* 124748 */ // GIR_Coverage, 17601, |
| 44480 | /* 124748 */ GIR_EraseRootFromParent_Done, |
| 44481 | /* 124749 */ // Label 2765: @124749 |
| 44482 | /* 124749 */ GIM_Try, /*On fail goto*//*Label 2766*/ GIMT_Encode4(124786), // Rule ID 792 // |
| 44483 | /* 124754 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44484 | /* 124757 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44485 | /* 124761 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44486 | /* 124765 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44487 | /* 124769 */ // MIs[1] Operand 1 |
| 44488 | /* 124769 */ // No operand predicates |
| 44489 | /* 124769 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44490 | /* 124771 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44491 | /* 124771 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64ri), |
| 44492 | /* 124774 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44493 | /* 124776 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44494 | /* 124778 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44495 | /* 124781 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44496 | /* 124784 */ GIR_RootConstrainSelectedInstOperands, |
| 44497 | /* 124785 */ // GIR_Coverage, 792, |
| 44498 | /* 124785 */ GIR_EraseRootFromParent_Done, |
| 44499 | /* 124786 */ // Label 2766: @124786 |
| 44500 | /* 124786 */ GIM_Try, /*On fail goto*//*Label 2767*/ GIMT_Encode4(124823), // Rule ID 796 // |
| 44501 | /* 124791 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44502 | /* 124794 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44503 | /* 124798 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44504 | /* 124802 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 44505 | /* 124806 */ // MIs[1] Operand 1 |
| 44506 | /* 124806 */ // No operand predicates |
| 44507 | /* 124806 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44508 | /* 124808 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (ROR64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 44509 | /* 124808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64ri_ND), |
| 44510 | /* 124811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44511 | /* 124813 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44512 | /* 124815 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 44513 | /* 124818 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44514 | /* 124821 */ GIR_RootConstrainSelectedInstOperands, |
| 44515 | /* 124822 */ // GIR_Coverage, 796, |
| 44516 | /* 124822 */ GIR_EraseRootFromParent_Done, |
| 44517 | /* 124823 */ // Label 2767: @124823 |
| 44518 | /* 124823 */ GIM_Try, /*On fail goto*//*Label 2768*/ GIMT_Encode4(124865), // Rule ID 808 // |
| 44519 | /* 124828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 44520 | /* 124831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44521 | /* 124835 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44522 | /* 124839 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (ROR64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 44523 | /* 124839 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44524 | /* 124843 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44525 | /* 124849 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44526 | /* 124853 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64rCL), |
| 44527 | /* 124856 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44528 | /* 124858 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44529 | /* 124860 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44530 | /* 124863 */ GIR_RootConstrainSelectedInstOperands, |
| 44531 | /* 124864 */ // GIR_Coverage, 808, |
| 44532 | /* 124864 */ GIR_EraseRootFromParent_Done, |
| 44533 | /* 124865 */ // Label 2768: @124865 |
| 44534 | /* 124865 */ GIM_Try, /*On fail goto*//*Label 2769*/ GIMT_Encode4(124907), // Rule ID 812 // |
| 44535 | /* 124870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 44536 | /* 124873 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 44537 | /* 124877 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 44538 | /* 124881 */ // (rotr:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (ROR64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 44539 | /* 124881 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44540 | /* 124885 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44541 | /* 124891 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 44542 | /* 124895 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64rCL_ND), |
| 44543 | /* 124898 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44544 | /* 124900 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44545 | /* 124902 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 44546 | /* 124905 */ GIR_RootConstrainSelectedInstOperands, |
| 44547 | /* 124906 */ // GIR_Coverage, 812, |
| 44548 | /* 124906 */ GIR_EraseRootFromParent_Done, |
| 44549 | /* 124907 */ // Label 2769: @124907 |
| 44550 | /* 124907 */ GIM_Reject, |
| 44551 | /* 124908 */ // Label 2758: @124908 |
| 44552 | /* 124908 */ GIM_Reject, |
| 44553 | /* 124909 */ // Label 2722: @124909 |
| 44554 | /* 124909 */ GIM_Try, /*On fail goto*//*Label 2770*/ GIMT_Encode4(125175), |
| 44555 | /* 124914 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 44556 | /* 124917 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 44557 | /* 124920 */ GIM_Try, /*On fail goto*//*Label 2771*/ GIMT_Encode4(124982), // Rule ID 8009 // |
| 44558 | /* 124925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 44559 | /* 124928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44560 | /* 124932 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44561 | /* 124936 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44562 | /* 124940 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44563 | /* 124944 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44564 | /* 124947 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44565 | /* 124951 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44566 | /* 124955 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44567 | /* 124957 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44568 | /* 124964 */ // (rotr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 44569 | /* 124964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVQZ128rm), |
| 44570 | /* 124967 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44571 | /* 124969 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44572 | /* 124971 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 44573 | /* 124975 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44574 | /* 124980 */ GIR_RootConstrainSelectedInstOperands, |
| 44575 | /* 124981 */ // GIR_Coverage, 8009, |
| 44576 | /* 124981 */ GIR_EraseRootFromParent_Done, |
| 44577 | /* 124982 */ // Label 2771: @124982 |
| 44578 | /* 124982 */ GIM_Try, /*On fail goto*//*Label 2772*/ GIMT_Encode4(125009), // Rule ID 8006 // |
| 44579 | /* 124987 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 44580 | /* 124990 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44581 | /* 124994 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44582 | /* 124998 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44583 | /* 125002 */ // (rotr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPRORVQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 44584 | /* 125002 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVQZ128rr), |
| 44585 | /* 125007 */ GIR_RootConstrainSelectedInstOperands, |
| 44586 | /* 125008 */ // GIR_Coverage, 8006, |
| 44587 | /* 125008 */ GIR_Done, |
| 44588 | /* 125009 */ // Label 2772: @125009 |
| 44589 | /* 125009 */ GIM_Try, /*On fail goto*//*Label 2773*/ GIMT_Encode4(125174), // Rule ID 20814 // |
| 44590 | /* 125014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 44591 | /* 125017 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 44592 | /* 125021 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44593 | /* 125025 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44594 | /* 125029 */ // (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] }) |
| 44595 | /* 125029 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 44596 | /* 125032 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44597 | /* 125036 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44598 | /* 125041 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 44599 | /* 125043 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 44600 | /* 125046 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44601 | /* 125050 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44602 | /* 125055 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 44603 | /* 125058 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 44604 | /* 125062 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 44605 | /* 125065 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44606 | /* 125070 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44607 | /* 125075 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 44608 | /* 125080 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 44609 | /* 125083 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44610 | /* 125087 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44611 | /* 125092 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 44612 | /* 125094 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 44613 | /* 125097 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44614 | /* 125101 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44615 | /* 125106 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 44616 | /* 125109 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 44617 | /* 125113 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 44618 | /* 125116 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44619 | /* 125121 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44620 | /* 125126 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 44621 | /* 125131 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 44622 | /* 125134 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPRORVQZrr), |
| 44623 | /* 125138 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44624 | /* 125143 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 44625 | /* 125146 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 44626 | /* 125149 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 44627 | /* 125151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44628 | /* 125154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44629 | /* 125156 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 44630 | /* 125163 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 44631 | /* 125168 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44632 | /* 125173 */ // GIR_Coverage, 20814, |
| 44633 | /* 125173 */ GIR_EraseRootFromParent_Done, |
| 44634 | /* 125174 */ // Label 2773: @125174 |
| 44635 | /* 125174 */ GIM_Reject, |
| 44636 | /* 125175 */ // Label 2770: @125175 |
| 44637 | /* 125175 */ GIM_Reject, |
| 44638 | /* 125176 */ // Label 2723: @125176 |
| 44639 | /* 125176 */ GIM_Try, /*On fail goto*//*Label 2774*/ GIMT_Encode4(125442), |
| 44640 | /* 125181 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 44641 | /* 125184 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 44642 | /* 125187 */ GIM_Try, /*On fail goto*//*Label 2775*/ GIMT_Encode4(125249), // Rule ID 7982 // |
| 44643 | /* 125192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 44644 | /* 125195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44645 | /* 125199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44646 | /* 125203 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44647 | /* 125207 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44648 | /* 125211 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44649 | /* 125214 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44650 | /* 125218 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44651 | /* 125222 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44652 | /* 125224 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44653 | /* 125231 */ // (rotr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 44654 | /* 125231 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVDZ128rm), |
| 44655 | /* 125234 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44656 | /* 125236 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44657 | /* 125238 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 44658 | /* 125242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44659 | /* 125247 */ GIR_RootConstrainSelectedInstOperands, |
| 44660 | /* 125248 */ // GIR_Coverage, 7982, |
| 44661 | /* 125248 */ GIR_EraseRootFromParent_Done, |
| 44662 | /* 125249 */ // Label 2775: @125249 |
| 44663 | /* 125249 */ GIM_Try, /*On fail goto*//*Label 2776*/ GIMT_Encode4(125276), // Rule ID 7979 // |
| 44664 | /* 125254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 44665 | /* 125257 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44666 | /* 125261 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44667 | /* 125265 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44668 | /* 125269 */ // (rotr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPRORVDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 44669 | /* 125269 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVDZ128rr), |
| 44670 | /* 125274 */ GIR_RootConstrainSelectedInstOperands, |
| 44671 | /* 125275 */ // GIR_Coverage, 7979, |
| 44672 | /* 125275 */ GIR_Done, |
| 44673 | /* 125276 */ // Label 2776: @125276 |
| 44674 | /* 125276 */ GIM_Try, /*On fail goto*//*Label 2777*/ GIMT_Encode4(125441), // Rule ID 20822 // |
| 44675 | /* 125281 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 44676 | /* 125284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 44677 | /* 125288 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44678 | /* 125292 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44679 | /* 125296 */ // (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] }) |
| 44680 | /* 125296 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 44681 | /* 125299 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44682 | /* 125303 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44683 | /* 125308 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 44684 | /* 125310 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 44685 | /* 125313 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44686 | /* 125317 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44687 | /* 125322 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 44688 | /* 125325 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 44689 | /* 125329 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 44690 | /* 125332 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44691 | /* 125337 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44692 | /* 125342 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 44693 | /* 125347 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 44694 | /* 125350 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44695 | /* 125354 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44696 | /* 125359 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 44697 | /* 125361 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 44698 | /* 125364 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44699 | /* 125368 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44700 | /* 125373 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 44701 | /* 125376 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 44702 | /* 125380 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 44703 | /* 125383 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44704 | /* 125388 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44705 | /* 125393 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 44706 | /* 125398 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 44707 | /* 125401 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPRORVDZrr), |
| 44708 | /* 125405 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44709 | /* 125410 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 44710 | /* 125413 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 44711 | /* 125416 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 44712 | /* 125418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44713 | /* 125421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44714 | /* 125423 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 44715 | /* 125430 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 44716 | /* 125435 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44717 | /* 125440 */ // GIR_Coverage, 20822, |
| 44718 | /* 125440 */ GIR_EraseRootFromParent_Done, |
| 44719 | /* 125441 */ // Label 2777: @125441 |
| 44720 | /* 125441 */ GIM_Reject, |
| 44721 | /* 125442 */ // Label 2774: @125442 |
| 44722 | /* 125442 */ GIM_Reject, |
| 44723 | /* 125443 */ // Label 2724: @125443 |
| 44724 | /* 125443 */ GIM_Try, /*On fail goto*//*Label 2778*/ GIMT_Encode4(125693), |
| 44725 | /* 125448 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 44726 | /* 125451 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 44727 | /* 125454 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 44728 | /* 125458 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 44729 | /* 125462 */ GIM_Try, /*On fail goto*//*Label 2779*/ GIMT_Encode4(125516), // Rule ID 8000 // |
| 44730 | /* 125467 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 44731 | /* 125470 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44732 | /* 125474 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44733 | /* 125478 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44734 | /* 125481 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44735 | /* 125485 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44736 | /* 125489 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44737 | /* 125491 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44738 | /* 125498 */ // (rotr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 44739 | /* 125498 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVQZ256rm), |
| 44740 | /* 125501 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44741 | /* 125503 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44742 | /* 125505 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 44743 | /* 125509 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44744 | /* 125514 */ GIR_RootConstrainSelectedInstOperands, |
| 44745 | /* 125515 */ // GIR_Coverage, 8000, |
| 44746 | /* 125515 */ GIR_EraseRootFromParent_Done, |
| 44747 | /* 125516 */ // Label 2779: @125516 |
| 44748 | /* 125516 */ GIM_Try, /*On fail goto*//*Label 2780*/ GIMT_Encode4(125535), // Rule ID 7997 // |
| 44749 | /* 125521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 44750 | /* 125524 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 44751 | /* 125528 */ // (rotr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPRORVQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 44752 | /* 125528 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVQZ256rr), |
| 44753 | /* 125533 */ GIR_RootConstrainSelectedInstOperands, |
| 44754 | /* 125534 */ // GIR_Coverage, 7997, |
| 44755 | /* 125534 */ GIR_Done, |
| 44756 | /* 125535 */ // Label 2780: @125535 |
| 44757 | /* 125535 */ GIM_Try, /*On fail goto*//*Label 2781*/ GIMT_Encode4(125692), // Rule ID 20810 // |
| 44758 | /* 125540 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 44759 | /* 125543 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 44760 | /* 125547 */ // (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] }) |
| 44761 | /* 125547 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 44762 | /* 125550 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44763 | /* 125554 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44764 | /* 125559 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 44765 | /* 125561 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 44766 | /* 125564 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44767 | /* 125568 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44768 | /* 125573 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 44769 | /* 125576 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 44770 | /* 125580 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 44771 | /* 125583 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44772 | /* 125588 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44773 | /* 125593 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 44774 | /* 125598 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 44775 | /* 125601 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44776 | /* 125605 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44777 | /* 125610 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 44778 | /* 125612 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 44779 | /* 125615 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44780 | /* 125619 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44781 | /* 125624 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 44782 | /* 125627 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 44783 | /* 125631 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 44784 | /* 125634 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44785 | /* 125639 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44786 | /* 125644 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 44787 | /* 125649 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 44788 | /* 125652 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPRORVQZrr), |
| 44789 | /* 125656 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44790 | /* 125661 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 44791 | /* 125664 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 44792 | /* 125667 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 44793 | /* 125669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44794 | /* 125672 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44795 | /* 125674 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 44796 | /* 125681 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 44797 | /* 125686 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44798 | /* 125691 */ // GIR_Coverage, 20810, |
| 44799 | /* 125691 */ GIR_EraseRootFromParent_Done, |
| 44800 | /* 125692 */ // Label 2781: @125692 |
| 44801 | /* 125692 */ GIM_Reject, |
| 44802 | /* 125693 */ // Label 2778: @125693 |
| 44803 | /* 125693 */ GIM_Reject, |
| 44804 | /* 125694 */ // Label 2725: @125694 |
| 44805 | /* 125694 */ GIM_Try, /*On fail goto*//*Label 2782*/ GIMT_Encode4(125958), |
| 44806 | /* 125699 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 44807 | /* 125702 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 44808 | /* 125705 */ GIM_Try, /*On fail goto*//*Label 2783*/ GIMT_Encode4(125738), // Rule ID 22182 // |
| 44809 | /* 125710 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 44810 | /* 125713 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44811 | /* 125717 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44812 | /* 125721 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44813 | /* 125725 */ // (rotr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPSHRDVWZ128r:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 44814 | /* 125725 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZ128r), |
| 44815 | /* 125728 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44816 | /* 125730 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44817 | /* 125732 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44818 | /* 125734 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 44819 | /* 125736 */ GIR_RootConstrainSelectedInstOperands, |
| 44820 | /* 125737 */ // GIR_Coverage, 22182, |
| 44821 | /* 125737 */ GIR_EraseRootFromParent_Done, |
| 44822 | /* 125738 */ // Label 2783: @125738 |
| 44823 | /* 125738 */ GIM_Try, /*On fail goto*//*Label 2784*/ GIMT_Encode4(125957), // Rule ID 22190 // |
| 44824 | /* 125743 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 44825 | /* 125746 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 44826 | /* 125750 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44827 | /* 125754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 44828 | /* 125758 */ // (rotr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (EXTRACT_SUBREG:{ *:[v8i16] } (VPSHRDVWZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 44829 | /* 125758 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v32s16, |
| 44830 | /* 125761 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44831 | /* 125765 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44832 | /* 125770 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 44833 | /* 125772 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 44834 | /* 125775 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44835 | /* 125779 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44836 | /* 125784 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 44837 | /* 125787 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 44838 | /* 125791 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 44839 | /* 125794 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44840 | /* 125799 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44841 | /* 125804 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 44842 | /* 125809 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 44843 | /* 125812 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44844 | /* 125816 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44845 | /* 125821 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 44846 | /* 125823 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 44847 | /* 125826 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44848 | /* 125830 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44849 | /* 125835 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 44850 | /* 125838 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 44851 | /* 125842 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 44852 | /* 125845 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44853 | /* 125850 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44854 | /* 125855 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 44855 | /* 125860 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 44856 | /* 125863 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44857 | /* 125867 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44858 | /* 125872 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 44859 | /* 125874 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 44860 | /* 125877 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44861 | /* 125881 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44862 | /* 125886 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 44863 | /* 125889 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 44864 | /* 125893 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 44865 | /* 125896 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44866 | /* 125901 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44867 | /* 125906 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 44868 | /* 125911 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 44869 | /* 125914 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZr), |
| 44870 | /* 125918 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44871 | /* 125923 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 44872 | /* 125926 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 44873 | /* 125929 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 44874 | /* 125932 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 44875 | /* 125934 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44876 | /* 125937 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44877 | /* 125939 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 44878 | /* 125946 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 44879 | /* 125951 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44880 | /* 125956 */ // GIR_Coverage, 22190, |
| 44881 | /* 125956 */ GIR_EraseRootFromParent_Done, |
| 44882 | /* 125957 */ // Label 2784: @125957 |
| 44883 | /* 125957 */ GIM_Reject, |
| 44884 | /* 125958 */ // Label 2782: @125958 |
| 44885 | /* 125958 */ GIM_Reject, |
| 44886 | /* 125959 */ // Label 2726: @125959 |
| 44887 | /* 125959 */ GIM_Try, /*On fail goto*//*Label 2785*/ GIMT_Encode4(126209), |
| 44888 | /* 125964 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 44889 | /* 125967 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 44890 | /* 125970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 44891 | /* 125974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 44892 | /* 125978 */ GIM_Try, /*On fail goto*//*Label 2786*/ GIMT_Encode4(126032), // Rule ID 7973 // |
| 44893 | /* 125983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 44894 | /* 125986 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44895 | /* 125990 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44896 | /* 125994 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44897 | /* 125997 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44898 | /* 126001 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44899 | /* 126005 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44900 | /* 126007 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44901 | /* 126014 */ // (rotr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 44902 | /* 126014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVDZ256rm), |
| 44903 | /* 126017 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44904 | /* 126019 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44905 | /* 126021 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 44906 | /* 126025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44907 | /* 126030 */ GIR_RootConstrainSelectedInstOperands, |
| 44908 | /* 126031 */ // GIR_Coverage, 7973, |
| 44909 | /* 126031 */ GIR_EraseRootFromParent_Done, |
| 44910 | /* 126032 */ // Label 2786: @126032 |
| 44911 | /* 126032 */ GIM_Try, /*On fail goto*//*Label 2787*/ GIMT_Encode4(126051), // Rule ID 7970 // |
| 44912 | /* 126037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 44913 | /* 126040 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 44914 | /* 126044 */ // (rotr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPRORVDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 44915 | /* 126044 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVDZ256rr), |
| 44916 | /* 126049 */ GIR_RootConstrainSelectedInstOperands, |
| 44917 | /* 126050 */ // GIR_Coverage, 7970, |
| 44918 | /* 126050 */ GIR_Done, |
| 44919 | /* 126051 */ // Label 2787: @126051 |
| 44920 | /* 126051 */ GIM_Try, /*On fail goto*//*Label 2788*/ GIMT_Encode4(126208), // Rule ID 20818 // |
| 44921 | /* 126056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 44922 | /* 126059 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 44923 | /* 126063 */ // (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] }) |
| 44924 | /* 126063 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 44925 | /* 126066 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44926 | /* 126070 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44927 | /* 126075 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 44928 | /* 126077 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 44929 | /* 126080 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44930 | /* 126084 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44931 | /* 126089 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 44932 | /* 126092 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 44933 | /* 126096 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 44934 | /* 126099 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44935 | /* 126104 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44936 | /* 126109 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 44937 | /* 126114 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 44938 | /* 126117 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 44939 | /* 126121 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44940 | /* 126126 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 44941 | /* 126128 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 44942 | /* 126131 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 44943 | /* 126135 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44944 | /* 126140 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 44945 | /* 126143 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 44946 | /* 126147 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 44947 | /* 126150 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 44948 | /* 126155 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44949 | /* 126160 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 44950 | /* 126165 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 44951 | /* 126168 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPRORVDZrr), |
| 44952 | /* 126172 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 44953 | /* 126177 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 44954 | /* 126180 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 44955 | /* 126183 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 44956 | /* 126185 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 44957 | /* 126188 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44958 | /* 126190 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 44959 | /* 126197 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 44960 | /* 126202 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 44961 | /* 126207 */ // GIR_Coverage, 20818, |
| 44962 | /* 126207 */ GIR_EraseRootFromParent_Done, |
| 44963 | /* 126208 */ // Label 2788: @126208 |
| 44964 | /* 126208 */ GIM_Reject, |
| 44965 | /* 126209 */ // Label 2785: @126209 |
| 44966 | /* 126209 */ GIM_Reject, |
| 44967 | /* 126210 */ // Label 2727: @126210 |
| 44968 | /* 126210 */ GIM_Try, /*On fail goto*//*Label 2789*/ GIMT_Encode4(126303), |
| 44969 | /* 126215 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 44970 | /* 126218 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 44971 | /* 126221 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 44972 | /* 126225 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 44973 | /* 126229 */ GIM_Try, /*On fail goto*//*Label 2790*/ GIMT_Encode4(126283), // Rule ID 7991 // |
| 44974 | /* 126234 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 44975 | /* 126237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 44976 | /* 126241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 44977 | /* 126245 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 44978 | /* 126248 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 44979 | /* 126252 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 44980 | /* 126256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 44981 | /* 126258 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 44982 | /* 126265 */ // (rotr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 44983 | /* 126265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVQZrm), |
| 44984 | /* 126268 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 44985 | /* 126270 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 44986 | /* 126272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 44987 | /* 126276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 44988 | /* 126281 */ GIR_RootConstrainSelectedInstOperands, |
| 44989 | /* 126282 */ // GIR_Coverage, 7991, |
| 44990 | /* 126282 */ GIR_EraseRootFromParent_Done, |
| 44991 | /* 126283 */ // Label 2790: @126283 |
| 44992 | /* 126283 */ GIM_Try, /*On fail goto*//*Label 2791*/ GIMT_Encode4(126302), // Rule ID 7988 // |
| 44993 | /* 126288 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 44994 | /* 126291 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 44995 | /* 126295 */ // (rotr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPRORVQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 44996 | /* 126295 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVQZrr), |
| 44997 | /* 126300 */ GIR_RootConstrainSelectedInstOperands, |
| 44998 | /* 126301 */ // GIR_Coverage, 7988, |
| 44999 | /* 126301 */ GIR_Done, |
| 45000 | /* 126302 */ // Label 2791: @126302 |
| 45001 | /* 126302 */ GIM_Reject, |
| 45002 | /* 126303 */ // Label 2789: @126303 |
| 45003 | /* 126303 */ GIM_Reject, |
| 45004 | /* 126304 */ // Label 2728: @126304 |
| 45005 | /* 126304 */ GIM_Try, /*On fail goto*//*Label 2792*/ GIMT_Encode4(126556), |
| 45006 | /* 126309 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 45007 | /* 126312 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 45008 | /* 126315 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45009 | /* 126319 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45010 | /* 126323 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45011 | /* 126327 */ GIM_Try, /*On fail goto*//*Label 2793*/ GIMT_Encode4(126348), // Rule ID 22178 // |
| 45012 | /* 126332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 45013 | /* 126335 */ // (rotr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPSHRDVWZ256r:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 45014 | /* 126335 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZ256r), |
| 45015 | /* 126338 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45016 | /* 126340 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45017 | /* 126342 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45018 | /* 126344 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 45019 | /* 126346 */ GIR_RootConstrainSelectedInstOperands, |
| 45020 | /* 126347 */ // GIR_Coverage, 22178, |
| 45021 | /* 126347 */ GIR_EraseRootFromParent_Done, |
| 45022 | /* 126348 */ // Label 2793: @126348 |
| 45023 | /* 126348 */ GIM_Try, /*On fail goto*//*Label 2794*/ GIMT_Encode4(126555), // Rule ID 22186 // |
| 45024 | /* 126353 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 45025 | /* 126356 */ // (rotr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (EXTRACT_SUBREG:{ *:[v16i16] } (VPSHRDVWZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 45026 | /* 126356 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v32s16, |
| 45027 | /* 126359 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45028 | /* 126363 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45029 | /* 126368 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 45030 | /* 126370 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 45031 | /* 126373 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45032 | /* 126377 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45033 | /* 126382 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 45034 | /* 126385 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 45035 | /* 126389 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 45036 | /* 126392 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45037 | /* 126397 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45038 | /* 126402 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45039 | /* 126407 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 45040 | /* 126410 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45041 | /* 126414 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45042 | /* 126419 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 45043 | /* 126421 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 45044 | /* 126424 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45045 | /* 126428 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45046 | /* 126433 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 45047 | /* 126436 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45048 | /* 126440 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 45049 | /* 126443 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45050 | /* 126448 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45051 | /* 126453 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45052 | /* 126458 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 45053 | /* 126461 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45054 | /* 126465 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45055 | /* 126470 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 45056 | /* 126472 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 45057 | /* 126475 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45058 | /* 126479 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45059 | /* 126484 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 45060 | /* 126487 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45061 | /* 126491 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 45062 | /* 126494 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45063 | /* 126499 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45064 | /* 126504 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45065 | /* 126509 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 45066 | /* 126512 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZr), |
| 45067 | /* 126516 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45068 | /* 126521 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 45069 | /* 126524 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 45070 | /* 126527 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 45071 | /* 126530 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 45072 | /* 126532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45073 | /* 126535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45074 | /* 126537 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 45075 | /* 126544 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 45076 | /* 126549 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45077 | /* 126554 */ // GIR_Coverage, 22186, |
| 45078 | /* 126554 */ GIR_EraseRootFromParent_Done, |
| 45079 | /* 126555 */ // Label 2794: @126555 |
| 45080 | /* 126555 */ GIM_Reject, |
| 45081 | /* 126556 */ // Label 2792: @126556 |
| 45082 | /* 126556 */ GIM_Reject, |
| 45083 | /* 126557 */ // Label 2729: @126557 |
| 45084 | /* 126557 */ GIM_Try, /*On fail goto*//*Label 2795*/ GIMT_Encode4(126650), |
| 45085 | /* 126562 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 45086 | /* 126565 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 45087 | /* 126568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45088 | /* 126572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45089 | /* 126576 */ GIM_Try, /*On fail goto*//*Label 2796*/ GIMT_Encode4(126630), // Rule ID 7964 // |
| 45090 | /* 126581 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 45091 | /* 126584 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45092 | /* 126588 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45093 | /* 126592 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45094 | /* 126595 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45095 | /* 126599 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45096 | /* 126603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45097 | /* 126605 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45098 | /* 126612 */ // (rotr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPRORVDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45099 | /* 126612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPRORVDZrm), |
| 45100 | /* 126615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45101 | /* 126617 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45102 | /* 126619 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45103 | /* 126623 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45104 | /* 126628 */ GIR_RootConstrainSelectedInstOperands, |
| 45105 | /* 126629 */ // GIR_Coverage, 7964, |
| 45106 | /* 126629 */ GIR_EraseRootFromParent_Done, |
| 45107 | /* 126630 */ // Label 2796: @126630 |
| 45108 | /* 126630 */ GIM_Try, /*On fail goto*//*Label 2797*/ GIMT_Encode4(126649), // Rule ID 7961 // |
| 45109 | /* 126635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 45110 | /* 126638 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45111 | /* 126642 */ // (rotr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPRORVDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 45112 | /* 126642 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPRORVDZrr), |
| 45113 | /* 126647 */ GIR_RootConstrainSelectedInstOperands, |
| 45114 | /* 126648 */ // GIR_Coverage, 7961, |
| 45115 | /* 126648 */ GIR_Done, |
| 45116 | /* 126649 */ // Label 2797: @126649 |
| 45117 | /* 126649 */ GIM_Reject, |
| 45118 | /* 126650 */ // Label 2795: @126650 |
| 45119 | /* 126650 */ GIM_Reject, |
| 45120 | /* 126651 */ // Label 2730: @126651 |
| 45121 | /* 126651 */ GIM_Try, /*On fail goto*//*Label 2798*/ GIMT_Encode4(126690), // Rule ID 22174 // |
| 45122 | /* 126656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 45123 | /* 126659 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 45124 | /* 126662 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 45125 | /* 126665 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45126 | /* 126669 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45127 | /* 126673 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 45128 | /* 126677 */ // (rotr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPSHRDVWZr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 45129 | /* 126677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHRDVWZr), |
| 45130 | /* 126680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45131 | /* 126682 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45132 | /* 126684 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45133 | /* 126686 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 45134 | /* 126688 */ GIR_RootConstrainSelectedInstOperands, |
| 45135 | /* 126689 */ // GIR_Coverage, 22174, |
| 45136 | /* 126689 */ GIR_EraseRootFromParent_Done, |
| 45137 | /* 126690 */ // Label 2798: @126690 |
| 45138 | /* 126690 */ GIM_Reject, |
| 45139 | /* 126691 */ // Label 2731: @126691 |
| 45140 | /* 126691 */ GIM_Reject, |
| 45141 | /* 126692 */ // Label 33: @126692 |
| 45142 | /* 126692 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(23), /*)*//*default:*//*Label 2813*/ GIMT_Encode4(130092), |
| 45143 | /* 126703 */ /*GILLT_s8*//*Label 2799*/ GIMT_Encode4(126791), |
| 45144 | /* 126707 */ /*GILLT_s16*//*Label 2800*/ GIMT_Encode4(127002), |
| 45145 | /* 126711 */ /*GILLT_s32*//*Label 2801*/ GIMT_Encode4(127213), |
| 45146 | /* 126715 */ /*GILLT_s64*//*Label 2802*/ GIMT_Encode4(127457), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 45147 | /* 126731 */ /*GILLT_v2s64*//*Label 2803*/ GIMT_Encode4(127701), GIMT_Encode4(0), |
| 45148 | /* 126739 */ /*GILLT_v4s32*//*Label 2804*/ GIMT_Encode4(128119), |
| 45149 | /* 126743 */ /*GILLT_v4s64*//*Label 2805*/ GIMT_Encode4(128537), GIMT_Encode4(0), |
| 45150 | /* 126751 */ /*GILLT_v8s16*//*Label 2806*/ GIMT_Encode4(128788), |
| 45151 | /* 126755 */ /*GILLT_v8s32*//*Label 2807*/ GIMT_Encode4(129204), |
| 45152 | /* 126759 */ /*GILLT_v8s64*//*Label 2808*/ GIMT_Encode4(129455), GIMT_Encode4(0), |
| 45153 | /* 126767 */ /*GILLT_v16s8*//*Label 2809*/ GIMT_Encode4(129549), |
| 45154 | /* 126771 */ /*GILLT_v16s16*//*Label 2810*/ GIMT_Encode4(129705), |
| 45155 | /* 126775 */ /*GILLT_v16s32*//*Label 2811*/ GIMT_Encode4(129958), GIMT_Encode4(0), GIMT_Encode4(0), |
| 45156 | /* 126787 */ /*GILLT_v32s16*//*Label 2812*/ GIMT_Encode4(130052), |
| 45157 | /* 126791 */ // Label 2799: @126791 |
| 45158 | /* 126791 */ GIM_Try, /*On fail goto*//*Label 2814*/ GIMT_Encode4(127001), |
| 45159 | /* 126796 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s8, |
| 45160 | /* 126799 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 45161 | /* 126802 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45162 | /* 126806 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR8RegClassID), |
| 45163 | /* 126810 */ GIM_Try, /*On fail goto*//*Label 2815*/ GIMT_Encode4(126834), // Rule ID 17586 // |
| 45164 | /* 126815 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45165 | /* 126818 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 45166 | /* 126822 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, 7:{ *:[i8] }) => (ROR8r1:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 45167 | /* 126822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8r1), |
| 45168 | /* 126825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45169 | /* 126827 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45170 | /* 126829 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45171 | /* 126832 */ GIR_RootConstrainSelectedInstOperands, |
| 45172 | /* 126833 */ // GIR_Coverage, 17586, |
| 45173 | /* 126833 */ GIR_EraseRootFromParent_Done, |
| 45174 | /* 126834 */ // Label 2815: @126834 |
| 45175 | /* 126834 */ GIM_Try, /*On fail goto*//*Label 2816*/ GIMT_Encode4(126858), // Rule ID 17594 // |
| 45176 | /* 126839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45177 | /* 126842 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 7, |
| 45178 | /* 126846 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, 7:{ *:[i8] }) => (ROR8r1_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 45179 | /* 126846 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR8r1_ND), |
| 45180 | /* 126849 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45181 | /* 126851 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45182 | /* 126853 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45183 | /* 126856 */ GIR_RootConstrainSelectedInstOperands, |
| 45184 | /* 126857 */ // GIR_Coverage, 17594, |
| 45185 | /* 126857 */ GIR_EraseRootFromParent_Done, |
| 45186 | /* 126858 */ // Label 2816: @126858 |
| 45187 | /* 126858 */ GIM_Try, /*On fail goto*//*Label 2817*/ GIMT_Encode4(126891), // Rule ID 757 // |
| 45188 | /* 126863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45189 | /* 126866 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45190 | /* 126870 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45191 | /* 126874 */ // MIs[1] Operand 1 |
| 45192 | /* 126874 */ // No operand predicates |
| 45193 | /* 126874 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45194 | /* 126876 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL8ri:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45195 | /* 126876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8ri), |
| 45196 | /* 126879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45197 | /* 126881 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45198 | /* 126883 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45199 | /* 126886 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45200 | /* 126889 */ GIR_RootConstrainSelectedInstOperands, |
| 45201 | /* 126890 */ // GIR_Coverage, 757, |
| 45202 | /* 126890 */ GIR_EraseRootFromParent_Done, |
| 45203 | /* 126891 */ // Label 2817: @126891 |
| 45204 | /* 126891 */ GIM_Try, /*On fail goto*//*Label 2818*/ GIMT_Encode4(126924), // Rule ID 761 // |
| 45205 | /* 126896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45206 | /* 126899 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45207 | /* 126903 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45208 | /* 126907 */ // MIs[1] Operand 1 |
| 45209 | /* 126907 */ // No operand predicates |
| 45210 | /* 126907 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45211 | /* 126909 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL8ri_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45212 | /* 126909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8ri_ND), |
| 45213 | /* 126912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45214 | /* 126914 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45215 | /* 126916 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45216 | /* 126919 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45217 | /* 126922 */ GIR_RootConstrainSelectedInstOperands, |
| 45218 | /* 126923 */ // GIR_Coverage, 761, |
| 45219 | /* 126923 */ GIR_EraseRootFromParent_Done, |
| 45220 | /* 126924 */ // Label 2818: @126924 |
| 45221 | /* 126924 */ GIM_Try, /*On fail goto*//*Label 2819*/ GIMT_Encode4(126962), // Rule ID 773 // |
| 45222 | /* 126929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45223 | /* 126932 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45224 | /* 126936 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (ROL8rCL:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 45225 | /* 126936 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45226 | /* 126940 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45227 | /* 126946 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45228 | /* 126950 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8rCL), |
| 45229 | /* 126953 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45230 | /* 126955 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45231 | /* 126957 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45232 | /* 126960 */ GIR_RootConstrainSelectedInstOperands, |
| 45233 | /* 126961 */ // GIR_Coverage, 773, |
| 45234 | /* 126961 */ GIR_EraseRootFromParent_Done, |
| 45235 | /* 126962 */ // Label 2819: @126962 |
| 45236 | /* 126962 */ GIM_Try, /*On fail goto*//*Label 2820*/ GIMT_Encode4(127000), // Rule ID 777 // |
| 45237 | /* 126967 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45238 | /* 126970 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45239 | /* 126974 */ // (rotl:{ *:[i8] } GR8:{ *:[i8] }:$src1, CL:{ *:[i8] }) => (ROL8rCL_ND:{ *:[i8] }:{ *:[i32] } GR8:{ *:[i8] }:$src1) |
| 45240 | /* 126974 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45241 | /* 126978 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45242 | /* 126984 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45243 | /* 126988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL8rCL_ND), |
| 45244 | /* 126991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45245 | /* 126993 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45246 | /* 126995 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45247 | /* 126998 */ GIR_RootConstrainSelectedInstOperands, |
| 45248 | /* 126999 */ // GIR_Coverage, 777, |
| 45249 | /* 126999 */ GIR_EraseRootFromParent_Done, |
| 45250 | /* 127000 */ // Label 2820: @127000 |
| 45251 | /* 127000 */ GIM_Reject, |
| 45252 | /* 127001 */ // Label 2814: @127001 |
| 45253 | /* 127001 */ GIM_Reject, |
| 45254 | /* 127002 */ // Label 2800: @127002 |
| 45255 | /* 127002 */ GIM_Try, /*On fail goto*//*Label 2821*/ GIMT_Encode4(127212), |
| 45256 | /* 127007 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 45257 | /* 127010 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 45258 | /* 127013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45259 | /* 127017 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 45260 | /* 127021 */ GIM_Try, /*On fail goto*//*Label 2822*/ GIMT_Encode4(127045), // Rule ID 17587 // |
| 45261 | /* 127026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45262 | /* 127029 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 45263 | /* 127033 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, 15:{ *:[i8] }) => (ROR16r1:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 45264 | /* 127033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16r1), |
| 45265 | /* 127036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45266 | /* 127038 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45267 | /* 127040 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45268 | /* 127043 */ GIR_RootConstrainSelectedInstOperands, |
| 45269 | /* 127044 */ // GIR_Coverage, 17587, |
| 45270 | /* 127044 */ GIR_EraseRootFromParent_Done, |
| 45271 | /* 127045 */ // Label 2822: @127045 |
| 45272 | /* 127045 */ GIM_Try, /*On fail goto*//*Label 2823*/ GIMT_Encode4(127069), // Rule ID 17595 // |
| 45273 | /* 127050 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45274 | /* 127053 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 15, |
| 45275 | /* 127057 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, 15:{ *:[i8] }) => (ROR16r1_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 45276 | /* 127057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR16r1_ND), |
| 45277 | /* 127060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45278 | /* 127062 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45279 | /* 127064 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45280 | /* 127067 */ GIR_RootConstrainSelectedInstOperands, |
| 45281 | /* 127068 */ // GIR_Coverage, 17595, |
| 45282 | /* 127068 */ GIR_EraseRootFromParent_Done, |
| 45283 | /* 127069 */ // Label 2823: @127069 |
| 45284 | /* 127069 */ GIM_Try, /*On fail goto*//*Label 2824*/ GIMT_Encode4(127102), // Rule ID 758 // |
| 45285 | /* 127074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45286 | /* 127077 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45287 | /* 127081 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45288 | /* 127085 */ // MIs[1] Operand 1 |
| 45289 | /* 127085 */ // No operand predicates |
| 45290 | /* 127085 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45291 | /* 127087 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45292 | /* 127087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16ri), |
| 45293 | /* 127090 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45294 | /* 127092 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45295 | /* 127094 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45296 | /* 127097 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45297 | /* 127100 */ GIR_RootConstrainSelectedInstOperands, |
| 45298 | /* 127101 */ // GIR_Coverage, 758, |
| 45299 | /* 127101 */ GIR_EraseRootFromParent_Done, |
| 45300 | /* 127102 */ // Label 2824: @127102 |
| 45301 | /* 127102 */ GIM_Try, /*On fail goto*//*Label 2825*/ GIMT_Encode4(127135), // Rule ID 762 // |
| 45302 | /* 127107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45303 | /* 127110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45304 | /* 127114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45305 | /* 127118 */ // MIs[1] Operand 1 |
| 45306 | /* 127118 */ // No operand predicates |
| 45307 | /* 127118 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45308 | /* 127120 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL16ri_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45309 | /* 127120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16ri_ND), |
| 45310 | /* 127123 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45311 | /* 127125 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45312 | /* 127127 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45313 | /* 127130 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45314 | /* 127133 */ GIR_RootConstrainSelectedInstOperands, |
| 45315 | /* 127134 */ // GIR_Coverage, 762, |
| 45316 | /* 127134 */ GIR_EraseRootFromParent_Done, |
| 45317 | /* 127135 */ // Label 2825: @127135 |
| 45318 | /* 127135 */ GIM_Try, /*On fail goto*//*Label 2826*/ GIMT_Encode4(127173), // Rule ID 774 // |
| 45319 | /* 127140 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45320 | /* 127143 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45321 | /* 127147 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (ROL16rCL:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 45322 | /* 127147 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45323 | /* 127151 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45324 | /* 127157 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45325 | /* 127161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16rCL), |
| 45326 | /* 127164 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45327 | /* 127166 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45328 | /* 127168 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45329 | /* 127171 */ GIR_RootConstrainSelectedInstOperands, |
| 45330 | /* 127172 */ // GIR_Coverage, 774, |
| 45331 | /* 127172 */ GIR_EraseRootFromParent_Done, |
| 45332 | /* 127173 */ // Label 2826: @127173 |
| 45333 | /* 127173 */ GIM_Try, /*On fail goto*//*Label 2827*/ GIMT_Encode4(127211), // Rule ID 778 // |
| 45334 | /* 127178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45335 | /* 127181 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45336 | /* 127185 */ // (rotl:{ *:[i16] } GR16:{ *:[i16] }:$src1, CL:{ *:[i8] }) => (ROL16rCL_ND:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 45337 | /* 127185 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45338 | /* 127189 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45339 | /* 127195 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45340 | /* 127199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16rCL_ND), |
| 45341 | /* 127202 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45342 | /* 127204 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45343 | /* 127206 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45344 | /* 127209 */ GIR_RootConstrainSelectedInstOperands, |
| 45345 | /* 127210 */ // GIR_Coverage, 778, |
| 45346 | /* 127210 */ GIR_EraseRootFromParent_Done, |
| 45347 | /* 127211 */ // Label 2827: @127211 |
| 45348 | /* 127211 */ GIM_Reject, |
| 45349 | /* 127212 */ // Label 2821: @127212 |
| 45350 | /* 127212 */ GIM_Reject, |
| 45351 | /* 127213 */ // Label 2801: @127213 |
| 45352 | /* 127213 */ GIM_Try, /*On fail goto*//*Label 2828*/ GIMT_Encode4(127456), |
| 45353 | /* 127218 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 45354 | /* 127221 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 45355 | /* 127224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 45356 | /* 127228 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 45357 | /* 127232 */ GIM_Try, /*On fail goto*//*Label 2829*/ GIMT_Encode4(127265), // Rule ID 869 // |
| 45358 | /* 127237 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFastSHLDRotate), |
| 45359 | /* 127240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45360 | /* 127244 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45361 | /* 127248 */ // MIs[1] Operand 1 |
| 45362 | /* 127248 */ // No operand predicates |
| 45363 | /* 127248 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45364 | /* 127250 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$shamt) => (SHLDROT32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$shamt) |
| 45365 | /* 127250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLDROT32ri), |
| 45366 | /* 127253 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45367 | /* 127255 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45368 | /* 127257 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 45369 | /* 127260 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45370 | /* 127263 */ GIR_RootConstrainSelectedInstOperands, |
| 45371 | /* 127264 */ // GIR_Coverage, 869, |
| 45372 | /* 127264 */ GIR_EraseRootFromParent_Done, |
| 45373 | /* 127265 */ // Label 2829: @127265 |
| 45374 | /* 127265 */ GIM_Try, /*On fail goto*//*Label 2830*/ GIMT_Encode4(127289), // Rule ID 17588 // |
| 45375 | /* 127270 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45376 | /* 127273 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 45377 | /* 127277 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, 31:{ *:[i8] }) => (ROR32r1:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 45378 | /* 127277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32r1), |
| 45379 | /* 127280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45380 | /* 127282 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45381 | /* 127284 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45382 | /* 127287 */ GIR_RootConstrainSelectedInstOperands, |
| 45383 | /* 127288 */ // GIR_Coverage, 17588, |
| 45384 | /* 127288 */ GIR_EraseRootFromParent_Done, |
| 45385 | /* 127289 */ // Label 2830: @127289 |
| 45386 | /* 127289 */ GIM_Try, /*On fail goto*//*Label 2831*/ GIMT_Encode4(127313), // Rule ID 17596 // |
| 45387 | /* 127294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45388 | /* 127297 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 31, |
| 45389 | /* 127301 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, 31:{ *:[i8] }) => (ROR32r1_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 45390 | /* 127301 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR32r1_ND), |
| 45391 | /* 127304 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45392 | /* 127306 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45393 | /* 127308 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45394 | /* 127311 */ GIR_RootConstrainSelectedInstOperands, |
| 45395 | /* 127312 */ // GIR_Coverage, 17596, |
| 45396 | /* 127312 */ GIR_EraseRootFromParent_Done, |
| 45397 | /* 127313 */ // Label 2831: @127313 |
| 45398 | /* 127313 */ GIM_Try, /*On fail goto*//*Label 2832*/ GIMT_Encode4(127346), // Rule ID 759 // |
| 45399 | /* 127318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45400 | /* 127321 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45401 | /* 127325 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45402 | /* 127329 */ // MIs[1] Operand 1 |
| 45403 | /* 127329 */ // No operand predicates |
| 45404 | /* 127329 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45405 | /* 127331 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL32ri:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45406 | /* 127331 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32ri), |
| 45407 | /* 127334 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45408 | /* 127336 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45409 | /* 127338 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45410 | /* 127341 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45411 | /* 127344 */ GIR_RootConstrainSelectedInstOperands, |
| 45412 | /* 127345 */ // GIR_Coverage, 759, |
| 45413 | /* 127345 */ GIR_EraseRootFromParent_Done, |
| 45414 | /* 127346 */ // Label 2832: @127346 |
| 45415 | /* 127346 */ GIM_Try, /*On fail goto*//*Label 2833*/ GIMT_Encode4(127379), // Rule ID 763 // |
| 45416 | /* 127351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45417 | /* 127354 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45418 | /* 127358 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45419 | /* 127362 */ // MIs[1] Operand 1 |
| 45420 | /* 127362 */ // No operand predicates |
| 45421 | /* 127362 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45422 | /* 127364 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL32ri_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45423 | /* 127364 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32ri_ND), |
| 45424 | /* 127367 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45425 | /* 127369 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45426 | /* 127371 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45427 | /* 127374 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45428 | /* 127377 */ GIR_RootConstrainSelectedInstOperands, |
| 45429 | /* 127378 */ // GIR_Coverage, 763, |
| 45430 | /* 127378 */ GIR_EraseRootFromParent_Done, |
| 45431 | /* 127379 */ // Label 2833: @127379 |
| 45432 | /* 127379 */ GIM_Try, /*On fail goto*//*Label 2834*/ GIMT_Encode4(127417), // Rule ID 775 // |
| 45433 | /* 127384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45434 | /* 127387 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45435 | /* 127391 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (ROL32rCL:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 45436 | /* 127391 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45437 | /* 127395 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45438 | /* 127401 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45439 | /* 127405 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32rCL), |
| 45440 | /* 127408 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45441 | /* 127410 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45442 | /* 127412 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45443 | /* 127415 */ GIR_RootConstrainSelectedInstOperands, |
| 45444 | /* 127416 */ // GIR_Coverage, 775, |
| 45445 | /* 127416 */ GIR_EraseRootFromParent_Done, |
| 45446 | /* 127417 */ // Label 2834: @127417 |
| 45447 | /* 127417 */ GIM_Try, /*On fail goto*//*Label 2835*/ GIMT_Encode4(127455), // Rule ID 779 // |
| 45448 | /* 127422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45449 | /* 127425 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45450 | /* 127429 */ // (rotl:{ *:[i32] } GR32:{ *:[i32] }:$src1, CL:{ *:[i8] }) => (ROL32rCL_ND:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 45451 | /* 127429 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45452 | /* 127433 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45453 | /* 127439 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45454 | /* 127443 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL32rCL_ND), |
| 45455 | /* 127446 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45456 | /* 127448 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45457 | /* 127450 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45458 | /* 127453 */ GIR_RootConstrainSelectedInstOperands, |
| 45459 | /* 127454 */ // GIR_Coverage, 779, |
| 45460 | /* 127454 */ GIR_EraseRootFromParent_Done, |
| 45461 | /* 127455 */ // Label 2835: @127455 |
| 45462 | /* 127455 */ GIM_Reject, |
| 45463 | /* 127456 */ // Label 2828: @127456 |
| 45464 | /* 127456 */ GIM_Reject, |
| 45465 | /* 127457 */ // Label 2802: @127457 |
| 45466 | /* 127457 */ GIM_Try, /*On fail goto*//*Label 2836*/ GIMT_Encode4(127700), |
| 45467 | /* 127462 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 45468 | /* 127465 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s8, |
| 45469 | /* 127468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 45470 | /* 127472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 45471 | /* 127476 */ GIM_Try, /*On fail goto*//*Label 2837*/ GIMT_Encode4(127509), // Rule ID 870 // |
| 45472 | /* 127481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFastSHLDRotate), |
| 45473 | /* 127484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45474 | /* 127488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45475 | /* 127492 */ // MIs[1] Operand 1 |
| 45476 | /* 127492 */ // No operand predicates |
| 45477 | /* 127492 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45478 | /* 127494 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$shamt) => (SHLDROT64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$shamt) |
| 45479 | /* 127494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SHLDROT64ri), |
| 45480 | /* 127497 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45481 | /* 127499 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45482 | /* 127501 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 45483 | /* 127504 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45484 | /* 127507 */ GIR_RootConstrainSelectedInstOperands, |
| 45485 | /* 127508 */ // GIR_Coverage, 870, |
| 45486 | /* 127508 */ GIR_EraseRootFromParent_Done, |
| 45487 | /* 127509 */ // Label 2837: @127509 |
| 45488 | /* 127509 */ GIM_Try, /*On fail goto*//*Label 2838*/ GIMT_Encode4(127533), // Rule ID 17589 // |
| 45489 | /* 127514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45490 | /* 127517 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 45491 | /* 127521 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, 63:{ *:[i8] }) => (ROR64r1:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 45492 | /* 127521 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64r1), |
| 45493 | /* 127524 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45494 | /* 127526 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45495 | /* 127528 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45496 | /* 127531 */ GIR_RootConstrainSelectedInstOperands, |
| 45497 | /* 127532 */ // GIR_Coverage, 17589, |
| 45498 | /* 127532 */ GIR_EraseRootFromParent_Done, |
| 45499 | /* 127533 */ // Label 2838: @127533 |
| 45500 | /* 127533 */ GIM_Try, /*On fail goto*//*Label 2839*/ GIMT_Encode4(127557), // Rule ID 17597 // |
| 45501 | /* 127538 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD), |
| 45502 | /* 127541 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 63, |
| 45503 | /* 127545 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, 63:{ *:[i8] }) => (ROR64r1_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 45504 | /* 127545 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROR64r1_ND), |
| 45505 | /* 127548 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45506 | /* 127550 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45507 | /* 127552 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45508 | /* 127555 */ GIR_RootConstrainSelectedInstOperands, |
| 45509 | /* 127556 */ // GIR_Coverage, 17597, |
| 45510 | /* 127556 */ GIR_EraseRootFromParent_Done, |
| 45511 | /* 127557 */ // Label 2839: @127557 |
| 45512 | /* 127557 */ GIM_Try, /*On fail goto*//*Label 2840*/ GIMT_Encode4(127590), // Rule ID 760 // |
| 45513 | /* 127562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45514 | /* 127565 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45515 | /* 127569 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45516 | /* 127573 */ // MIs[1] Operand 1 |
| 45517 | /* 127573 */ // No operand predicates |
| 45518 | /* 127573 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45519 | /* 127575 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL64ri:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45520 | /* 127575 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64ri), |
| 45521 | /* 127578 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45522 | /* 127580 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45523 | /* 127582 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45524 | /* 127585 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45525 | /* 127588 */ GIR_RootConstrainSelectedInstOperands, |
| 45526 | /* 127589 */ // GIR_Coverage, 760, |
| 45527 | /* 127589 */ GIR_EraseRootFromParent_Done, |
| 45528 | /* 127590 */ // Label 2840: @127590 |
| 45529 | /* 127590 */ GIM_Try, /*On fail goto*//*Label 2841*/ GIMT_Encode4(127623), // Rule ID 764 // |
| 45530 | /* 127595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45531 | /* 127598 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45532 | /* 127602 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 45533 | /* 127606 */ // MIs[1] Operand 1 |
| 45534 | /* 127606 */ // No operand predicates |
| 45535 | /* 127606 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45536 | /* 127608 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) => (ROL64ri_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1, (imm:{ *:[i8] }):$src2) |
| 45537 | /* 127608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64ri_ND), |
| 45538 | /* 127611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45539 | /* 127613 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45540 | /* 127615 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // src2 |
| 45541 | /* 127618 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45542 | /* 127621 */ GIR_RootConstrainSelectedInstOperands, |
| 45543 | /* 127622 */ // GIR_Coverage, 764, |
| 45544 | /* 127622 */ GIR_EraseRootFromParent_Done, |
| 45545 | /* 127623 */ // Label 2841: @127623 |
| 45546 | /* 127623 */ GIM_Try, /*On fail goto*//*Label 2842*/ GIMT_Encode4(127661), // Rule ID 776 // |
| 45547 | /* 127628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD), |
| 45548 | /* 127631 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45549 | /* 127635 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (ROL64rCL:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 45550 | /* 127635 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45551 | /* 127639 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45552 | /* 127645 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45553 | /* 127649 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64rCL), |
| 45554 | /* 127652 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45555 | /* 127654 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45556 | /* 127656 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45557 | /* 127659 */ GIR_RootConstrainSelectedInstOperands, |
| 45558 | /* 127660 */ // GIR_Coverage, 776, |
| 45559 | /* 127660 */ GIR_EraseRootFromParent_Done, |
| 45560 | /* 127661 */ // Label 2842: @127661 |
| 45561 | /* 127661 */ GIM_Try, /*On fail goto*//*Label 2843*/ GIMT_Encode4(127699), // Rule ID 780 // |
| 45562 | /* 127666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasNDD_In64BitMode), |
| 45563 | /* 127669 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::GR8_ABCD_LRegClassID), |
| 45564 | /* 127673 */ // (rotl:{ *:[i64] } GR64:{ *:[i64] }:$src1, CL:{ *:[i8] }) => (ROL64rCL_ND:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 45565 | /* 127673 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45566 | /* 127677 */ GIR_AddRegister, /*InsnID*/1, GIMT_Encode2(X86::CL), /*AddRegisterRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45567 | /* 127683 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // CL |
| 45568 | /* 127687 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL64rCL_ND), |
| 45569 | /* 127690 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45570 | /* 127692 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45571 | /* 127694 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 45572 | /* 127697 */ GIR_RootConstrainSelectedInstOperands, |
| 45573 | /* 127698 */ // GIR_Coverage, 780, |
| 45574 | /* 127698 */ GIR_EraseRootFromParent_Done, |
| 45575 | /* 127699 */ // Label 2843: @127699 |
| 45576 | /* 127699 */ GIM_Reject, |
| 45577 | /* 127700 */ // Label 2836: @127700 |
| 45578 | /* 127700 */ GIM_Reject, |
| 45579 | /* 127701 */ // Label 2803: @127701 |
| 45580 | /* 127701 */ GIM_Try, /*On fail goto*//*Label 2844*/ GIMT_Encode4(128118), |
| 45581 | /* 127706 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 45582 | /* 127709 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 45583 | /* 127712 */ GIM_Try, /*On fail goto*//*Label 2845*/ GIMT_Encode4(127774), // Rule ID 1583 // |
| 45584 | /* 127717 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45585 | /* 127720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45586 | /* 127724 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45587 | /* 127728 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45588 | /* 127732 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45589 | /* 127735 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45590 | /* 127739 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45591 | /* 127743 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45592 | /* 127747 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45593 | /* 127749 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45594 | /* 127756 */ // (rotl:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2i64] }:$src2) => (VPROTQmr:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 45595 | /* 127756 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTQmr), |
| 45596 | /* 127759 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45597 | /* 127761 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45598 | /* 127765 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 45599 | /* 127767 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45600 | /* 127772 */ GIR_RootConstrainSelectedInstOperands, |
| 45601 | /* 127773 */ // GIR_Coverage, 1583, |
| 45602 | /* 127773 */ GIR_EraseRootFromParent_Done, |
| 45603 | /* 127774 */ // Label 2845: @127774 |
| 45604 | /* 127774 */ GIM_Try, /*On fail goto*//*Label 2846*/ GIMT_Encode4(127836), // Rule ID 1582 // |
| 45605 | /* 127779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45606 | /* 127782 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45607 | /* 127786 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45608 | /* 127790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45609 | /* 127794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45610 | /* 127798 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45611 | /* 127801 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45612 | /* 127805 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45613 | /* 127809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45614 | /* 127811 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45615 | /* 127818 */ // (rotl:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROTQrm:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45616 | /* 127818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTQrm), |
| 45617 | /* 127821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45618 | /* 127823 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45619 | /* 127825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45620 | /* 127829 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45621 | /* 127834 */ GIR_RootConstrainSelectedInstOperands, |
| 45622 | /* 127835 */ // GIR_Coverage, 1582, |
| 45623 | /* 127835 */ GIR_EraseRootFromParent_Done, |
| 45624 | /* 127836 */ // Label 2846: @127836 |
| 45625 | /* 127836 */ GIM_Try, /*On fail goto*//*Label 2847*/ GIMT_Encode4(127898), // Rule ID 8063 // |
| 45626 | /* 127841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45627 | /* 127844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45628 | /* 127848 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45629 | /* 127852 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45630 | /* 127856 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45631 | /* 127860 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45632 | /* 127863 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45633 | /* 127867 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45634 | /* 127871 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45635 | /* 127873 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45636 | /* 127880 */ // (rotl:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45637 | /* 127880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVQZ128rm), |
| 45638 | /* 127883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45639 | /* 127885 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45640 | /* 127887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45641 | /* 127891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45642 | /* 127896 */ GIR_RootConstrainSelectedInstOperands, |
| 45643 | /* 127897 */ // GIR_Coverage, 8063, |
| 45644 | /* 127897 */ GIR_EraseRootFromParent_Done, |
| 45645 | /* 127898 */ // Label 2847: @127898 |
| 45646 | /* 127898 */ GIM_Try, /*On fail goto*//*Label 2848*/ GIMT_Encode4(127925), // Rule ID 1581 // |
| 45647 | /* 127903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45648 | /* 127906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45649 | /* 127910 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45650 | /* 127914 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45651 | /* 127918 */ // (rotl:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) => (VPROTQrr:{ *:[v2i64] } VR128:{ *:[v2i64] }:$src1, VR128:{ *:[v2i64] }:$src2) |
| 45652 | /* 127918 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROTQrr), |
| 45653 | /* 127923 */ GIR_RootConstrainSelectedInstOperands, |
| 45654 | /* 127924 */ // GIR_Coverage, 1581, |
| 45655 | /* 127924 */ GIR_Done, |
| 45656 | /* 127925 */ // Label 2848: @127925 |
| 45657 | /* 127925 */ GIM_Try, /*On fail goto*//*Label 2849*/ GIMT_Encode4(127952), // Rule ID 8060 // |
| 45658 | /* 127930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45659 | /* 127933 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45660 | /* 127937 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45661 | /* 127941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45662 | /* 127945 */ // (rotl:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPROLVQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 45663 | /* 127945 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVQZ128rr), |
| 45664 | /* 127950 */ GIR_RootConstrainSelectedInstOperands, |
| 45665 | /* 127951 */ // GIR_Coverage, 8060, |
| 45666 | /* 127951 */ GIR_Done, |
| 45667 | /* 127952 */ // Label 2849: @127952 |
| 45668 | /* 127952 */ GIM_Try, /*On fail goto*//*Label 2850*/ GIMT_Encode4(128117), // Rule ID 20812 // |
| 45669 | /* 127957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 45670 | /* 127960 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 45671 | /* 127964 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45672 | /* 127968 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45673 | /* 127972 */ // (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] }) |
| 45674 | /* 127972 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 45675 | /* 127975 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45676 | /* 127979 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45677 | /* 127984 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 45678 | /* 127986 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 45679 | /* 127989 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45680 | /* 127993 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45681 | /* 127998 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 45682 | /* 128001 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 45683 | /* 128005 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 45684 | /* 128008 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45685 | /* 128013 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45686 | /* 128018 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 45687 | /* 128023 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 45688 | /* 128026 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45689 | /* 128030 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45690 | /* 128035 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 45691 | /* 128037 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 45692 | /* 128040 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45693 | /* 128044 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45694 | /* 128049 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 45695 | /* 128052 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45696 | /* 128056 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 45697 | /* 128059 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45698 | /* 128064 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45699 | /* 128069 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 45700 | /* 128074 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 45701 | /* 128077 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPROLVQZrr), |
| 45702 | /* 128081 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45703 | /* 128086 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 45704 | /* 128089 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 45705 | /* 128092 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 45706 | /* 128094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45707 | /* 128097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45708 | /* 128099 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 45709 | /* 128106 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 45710 | /* 128111 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45711 | /* 128116 */ // GIR_Coverage, 20812, |
| 45712 | /* 128116 */ GIR_EraseRootFromParent_Done, |
| 45713 | /* 128117 */ // Label 2850: @128117 |
| 45714 | /* 128117 */ GIM_Reject, |
| 45715 | /* 128118 */ // Label 2844: @128118 |
| 45716 | /* 128118 */ GIM_Reject, |
| 45717 | /* 128119 */ // Label 2804: @128119 |
| 45718 | /* 128119 */ GIM_Try, /*On fail goto*//*Label 2851*/ GIMT_Encode4(128536), |
| 45719 | /* 128124 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 45720 | /* 128127 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 45721 | /* 128130 */ GIM_Try, /*On fail goto*//*Label 2852*/ GIMT_Encode4(128192), // Rule ID 1580 // |
| 45722 | /* 128135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45723 | /* 128138 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45724 | /* 128142 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45725 | /* 128146 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45726 | /* 128150 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45727 | /* 128153 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45728 | /* 128157 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45729 | /* 128161 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45730 | /* 128165 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45731 | /* 128167 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45732 | /* 128174 */ // (rotl:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src2) => (VPROTDmr:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 45733 | /* 128174 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTDmr), |
| 45734 | /* 128177 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45735 | /* 128179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45736 | /* 128183 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 45737 | /* 128185 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45738 | /* 128190 */ GIR_RootConstrainSelectedInstOperands, |
| 45739 | /* 128191 */ // GIR_Coverage, 1580, |
| 45740 | /* 128191 */ GIR_EraseRootFromParent_Done, |
| 45741 | /* 128192 */ // Label 2852: @128192 |
| 45742 | /* 128192 */ GIM_Try, /*On fail goto*//*Label 2853*/ GIMT_Encode4(128254), // Rule ID 1579 // |
| 45743 | /* 128197 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45744 | /* 128200 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45745 | /* 128204 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45746 | /* 128208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45747 | /* 128212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45748 | /* 128216 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45749 | /* 128219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45750 | /* 128223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45751 | /* 128227 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45752 | /* 128229 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45753 | /* 128236 */ // (rotl:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROTDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45754 | /* 128236 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTDrm), |
| 45755 | /* 128239 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45756 | /* 128241 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45757 | /* 128243 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45758 | /* 128247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45759 | /* 128252 */ GIR_RootConstrainSelectedInstOperands, |
| 45760 | /* 128253 */ // GIR_Coverage, 1579, |
| 45761 | /* 128253 */ GIR_EraseRootFromParent_Done, |
| 45762 | /* 128254 */ // Label 2853: @128254 |
| 45763 | /* 128254 */ GIM_Try, /*On fail goto*//*Label 2854*/ GIMT_Encode4(128316), // Rule ID 8036 // |
| 45764 | /* 128259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45765 | /* 128262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45766 | /* 128266 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45767 | /* 128270 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45768 | /* 128274 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45769 | /* 128278 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45770 | /* 128281 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45771 | /* 128285 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45772 | /* 128289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45773 | /* 128291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45774 | /* 128298 */ // (rotl:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45775 | /* 128298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVDZ128rm), |
| 45776 | /* 128301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45777 | /* 128303 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45778 | /* 128305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45779 | /* 128309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45780 | /* 128314 */ GIR_RootConstrainSelectedInstOperands, |
| 45781 | /* 128315 */ // GIR_Coverage, 8036, |
| 45782 | /* 128315 */ GIR_EraseRootFromParent_Done, |
| 45783 | /* 128316 */ // Label 2854: @128316 |
| 45784 | /* 128316 */ GIM_Try, /*On fail goto*//*Label 2855*/ GIMT_Encode4(128343), // Rule ID 1578 // |
| 45785 | /* 128321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45786 | /* 128324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45787 | /* 128328 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45788 | /* 128332 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45789 | /* 128336 */ // (rotl:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPROTDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 45790 | /* 128336 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROTDrr), |
| 45791 | /* 128341 */ GIR_RootConstrainSelectedInstOperands, |
| 45792 | /* 128342 */ // GIR_Coverage, 1578, |
| 45793 | /* 128342 */ GIR_Done, |
| 45794 | /* 128343 */ // Label 2855: @128343 |
| 45795 | /* 128343 */ GIM_Try, /*On fail goto*//*Label 2856*/ GIMT_Encode4(128370), // Rule ID 8033 // |
| 45796 | /* 128348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45797 | /* 128351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45798 | /* 128355 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45799 | /* 128359 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45800 | /* 128363 */ // (rotl:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPROLVDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 45801 | /* 128363 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVDZ128rr), |
| 45802 | /* 128368 */ GIR_RootConstrainSelectedInstOperands, |
| 45803 | /* 128369 */ // GIR_Coverage, 8033, |
| 45804 | /* 128369 */ GIR_Done, |
| 45805 | /* 128370 */ // Label 2856: @128370 |
| 45806 | /* 128370 */ GIM_Try, /*On fail goto*//*Label 2857*/ GIMT_Encode4(128535), // Rule ID 20820 // |
| 45807 | /* 128375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 45808 | /* 128378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 45809 | /* 128382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45810 | /* 128386 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45811 | /* 128390 */ // (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] }) |
| 45812 | /* 128390 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 45813 | /* 128393 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45814 | /* 128397 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45815 | /* 128402 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 45816 | /* 128404 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 45817 | /* 128407 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45818 | /* 128411 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45819 | /* 128416 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 45820 | /* 128419 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 45821 | /* 128423 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 45822 | /* 128426 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45823 | /* 128431 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45824 | /* 128436 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 45825 | /* 128441 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 45826 | /* 128444 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45827 | /* 128448 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45828 | /* 128453 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 45829 | /* 128455 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 45830 | /* 128458 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45831 | /* 128462 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45832 | /* 128467 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 45833 | /* 128470 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45834 | /* 128474 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 45835 | /* 128477 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45836 | /* 128482 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45837 | /* 128487 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 45838 | /* 128492 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 45839 | /* 128495 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPROLVDZrr), |
| 45840 | /* 128499 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45841 | /* 128504 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 45842 | /* 128507 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 45843 | /* 128510 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 45844 | /* 128512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45845 | /* 128515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45846 | /* 128517 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 45847 | /* 128524 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 45848 | /* 128529 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45849 | /* 128534 */ // GIR_Coverage, 20820, |
| 45850 | /* 128534 */ GIR_EraseRootFromParent_Done, |
| 45851 | /* 128535 */ // Label 2857: @128535 |
| 45852 | /* 128535 */ GIM_Reject, |
| 45853 | /* 128536 */ // Label 2851: @128536 |
| 45854 | /* 128536 */ GIM_Reject, |
| 45855 | /* 128537 */ // Label 2805: @128537 |
| 45856 | /* 128537 */ GIM_Try, /*On fail goto*//*Label 2858*/ GIMT_Encode4(128787), |
| 45857 | /* 128542 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 45858 | /* 128545 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 45859 | /* 128548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45860 | /* 128552 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45861 | /* 128556 */ GIM_Try, /*On fail goto*//*Label 2859*/ GIMT_Encode4(128610), // Rule ID 8054 // |
| 45862 | /* 128561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45863 | /* 128564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45864 | /* 128568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45865 | /* 128572 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45866 | /* 128575 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45867 | /* 128579 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45868 | /* 128583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45869 | /* 128585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45870 | /* 128592 */ // (rotl:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45871 | /* 128592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVQZ256rm), |
| 45872 | /* 128595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45873 | /* 128597 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45874 | /* 128599 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45875 | /* 128603 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45876 | /* 128608 */ GIR_RootConstrainSelectedInstOperands, |
| 45877 | /* 128609 */ // GIR_Coverage, 8054, |
| 45878 | /* 128609 */ GIR_EraseRootFromParent_Done, |
| 45879 | /* 128610 */ // Label 2859: @128610 |
| 45880 | /* 128610 */ GIM_Try, /*On fail goto*//*Label 2860*/ GIMT_Encode4(128629), // Rule ID 8051 // |
| 45881 | /* 128615 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 45882 | /* 128618 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45883 | /* 128622 */ // (rotl:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPROLVQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 45884 | /* 128622 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVQZ256rr), |
| 45885 | /* 128627 */ GIR_RootConstrainSelectedInstOperands, |
| 45886 | /* 128628 */ // GIR_Coverage, 8051, |
| 45887 | /* 128628 */ GIR_Done, |
| 45888 | /* 128629 */ // Label 2860: @128629 |
| 45889 | /* 128629 */ GIM_Try, /*On fail goto*//*Label 2861*/ GIMT_Encode4(128786), // Rule ID 20808 // |
| 45890 | /* 128634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 45891 | /* 128637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 45892 | /* 128641 */ // (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] }) |
| 45893 | /* 128641 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 45894 | /* 128644 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45895 | /* 128648 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45896 | /* 128653 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 45897 | /* 128655 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 45898 | /* 128658 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45899 | /* 128662 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45900 | /* 128667 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 45901 | /* 128670 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 45902 | /* 128674 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 45903 | /* 128677 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45904 | /* 128682 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45905 | /* 128687 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45906 | /* 128692 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 45907 | /* 128695 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 45908 | /* 128699 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45909 | /* 128704 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 45910 | /* 128706 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 45911 | /* 128709 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 45912 | /* 128713 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45913 | /* 128718 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 45914 | /* 128721 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 45915 | /* 128725 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 45916 | /* 128728 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 45917 | /* 128733 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45918 | /* 128738 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 45919 | /* 128743 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 45920 | /* 128746 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPROLVQZrr), |
| 45921 | /* 128750 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 45922 | /* 128755 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 45923 | /* 128758 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 45924 | /* 128761 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 45925 | /* 128763 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 45926 | /* 128766 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45927 | /* 128768 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 45928 | /* 128775 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 45929 | /* 128780 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 45930 | /* 128785 */ // GIR_Coverage, 20808, |
| 45931 | /* 128785 */ GIR_EraseRootFromParent_Done, |
| 45932 | /* 128786 */ // Label 2861: @128786 |
| 45933 | /* 128786 */ GIM_Reject, |
| 45934 | /* 128787 */ // Label 2858: @128787 |
| 45935 | /* 128787 */ GIM_Reject, |
| 45936 | /* 128788 */ // Label 2806: @128788 |
| 45937 | /* 128788 */ GIM_Try, /*On fail goto*//*Label 2862*/ GIMT_Encode4(129203), |
| 45938 | /* 128793 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 45939 | /* 128796 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 45940 | /* 128799 */ GIM_Try, /*On fail goto*//*Label 2863*/ GIMT_Encode4(128861), // Rule ID 1586 // |
| 45941 | /* 128804 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45942 | /* 128807 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45943 | /* 128811 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 45944 | /* 128815 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45945 | /* 128819 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45946 | /* 128822 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45947 | /* 128826 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45948 | /* 128830 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45949 | /* 128834 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45950 | /* 128836 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45951 | /* 128843 */ // (rotl:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src2) => (VPROTWmr:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 45952 | /* 128843 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTWmr), |
| 45953 | /* 128846 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45954 | /* 128848 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 45955 | /* 128852 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 45956 | /* 128854 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45957 | /* 128859 */ GIR_RootConstrainSelectedInstOperands, |
| 45958 | /* 128860 */ // GIR_Coverage, 1586, |
| 45959 | /* 128860 */ GIR_EraseRootFromParent_Done, |
| 45960 | /* 128861 */ // Label 2863: @128861 |
| 45961 | /* 128861 */ GIM_Try, /*On fail goto*//*Label 2864*/ GIMT_Encode4(128923), // Rule ID 1585 // |
| 45962 | /* 128866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45963 | /* 128869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45964 | /* 128873 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45965 | /* 128877 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 45966 | /* 128881 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 45967 | /* 128885 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 45968 | /* 128888 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 45969 | /* 128892 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 45970 | /* 128896 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 45971 | /* 128898 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 45972 | /* 128905 */ // (rotl:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROTWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 45973 | /* 128905 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTWrm), |
| 45974 | /* 128908 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 45975 | /* 128910 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 45976 | /* 128912 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 45977 | /* 128916 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 45978 | /* 128921 */ GIR_RootConstrainSelectedInstOperands, |
| 45979 | /* 128922 */ // GIR_Coverage, 1585, |
| 45980 | /* 128922 */ GIR_EraseRootFromParent_Done, |
| 45981 | /* 128923 */ // Label 2864: @128923 |
| 45982 | /* 128923 */ GIM_Try, /*On fail goto*//*Label 2865*/ GIMT_Encode4(128950), // Rule ID 1584 // |
| 45983 | /* 128928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 45984 | /* 128931 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45985 | /* 128935 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45986 | /* 128939 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 45987 | /* 128943 */ // (rotl:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPROTWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 45988 | /* 128943 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROTWrr), |
| 45989 | /* 128948 */ GIR_RootConstrainSelectedInstOperands, |
| 45990 | /* 128949 */ // GIR_Coverage, 1584, |
| 45991 | /* 128949 */ GIR_Done, |
| 45992 | /* 128950 */ // Label 2865: @128950 |
| 45993 | /* 128950 */ GIM_Try, /*On fail goto*//*Label 2866*/ GIMT_Encode4(128983), // Rule ID 22180 // |
| 45994 | /* 128955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 45995 | /* 128958 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45996 | /* 128962 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45997 | /* 128966 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 45998 | /* 128970 */ // (rotl:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPSHLDVWZ128r:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 45999 | /* 128970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZ128r), |
| 46000 | /* 128973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46001 | /* 128975 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46002 | /* 128977 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46003 | /* 128979 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 46004 | /* 128981 */ GIR_RootConstrainSelectedInstOperands, |
| 46005 | /* 128982 */ // GIR_Coverage, 22180, |
| 46006 | /* 128982 */ GIR_EraseRootFromParent_Done, |
| 46007 | /* 128983 */ // Label 2866: @128983 |
| 46008 | /* 128983 */ GIM_Try, /*On fail goto*//*Label 2867*/ GIMT_Encode4(129202), // Rule ID 22188 // |
| 46009 | /* 128988 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 46010 | /* 128991 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 46011 | /* 128995 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46012 | /* 128999 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46013 | /* 129003 */ // (rotl:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (EXTRACT_SUBREG:{ *:[v8i16] } (VPSHLDVWZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src1, sub_xmm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR128X:{ *:[v8i16] }:$src2, sub_xmm:{ *:[i32] })), sub_xmm:{ *:[i32] }) |
| 46014 | /* 129003 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v32s16, |
| 46015 | /* 129006 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46016 | /* 129010 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46017 | /* 129015 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 46018 | /* 129017 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 46019 | /* 129020 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46020 | /* 129024 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46021 | /* 129029 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 46022 | /* 129032 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 46023 | /* 129036 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/9, |
| 46024 | /* 129039 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46025 | /* 129044 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46026 | /* 129049 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46027 | /* 129054 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 46028 | /* 129057 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46029 | /* 129061 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46030 | /* 129066 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 46031 | /* 129068 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 46032 | /* 129071 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46033 | /* 129075 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46034 | /* 129080 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 46035 | /* 129083 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46036 | /* 129087 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 46037 | /* 129090 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46038 | /* 129095 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46039 | /* 129100 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46040 | /* 129105 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 46041 | /* 129108 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46042 | /* 129112 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46043 | /* 129117 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46044 | /* 129119 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 46045 | /* 129122 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46046 | /* 129126 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46047 | /* 129131 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46048 | /* 129134 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46049 | /* 129138 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 46050 | /* 129141 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46051 | /* 129146 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46052 | /* 129151 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46053 | /* 129156 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 46054 | /* 129159 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZr), |
| 46055 | /* 129163 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46056 | /* 129168 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46057 | /* 129171 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 46058 | /* 129174 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 46059 | /* 129177 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46060 | /* 129179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46061 | /* 129182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46062 | /* 129184 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 46063 | /* 129191 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 46064 | /* 129196 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46065 | /* 129201 */ // GIR_Coverage, 22188, |
| 46066 | /* 129201 */ GIR_EraseRootFromParent_Done, |
| 46067 | /* 129202 */ // Label 2867: @129202 |
| 46068 | /* 129202 */ GIM_Reject, |
| 46069 | /* 129203 */ // Label 2862: @129203 |
| 46070 | /* 129203 */ GIM_Reject, |
| 46071 | /* 129204 */ // Label 2807: @129204 |
| 46072 | /* 129204 */ GIM_Try, /*On fail goto*//*Label 2868*/ GIMT_Encode4(129454), |
| 46073 | /* 129209 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 46074 | /* 129212 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 46075 | /* 129215 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46076 | /* 129219 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46077 | /* 129223 */ GIM_Try, /*On fail goto*//*Label 2869*/ GIMT_Encode4(129277), // Rule ID 8027 // |
| 46078 | /* 129228 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46079 | /* 129231 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46080 | /* 129235 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46081 | /* 129239 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46082 | /* 129242 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46083 | /* 129246 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46084 | /* 129250 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46085 | /* 129252 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46086 | /* 129259 */ // (rotl:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46087 | /* 129259 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVDZ256rm), |
| 46088 | /* 129262 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46089 | /* 129264 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46090 | /* 129266 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46091 | /* 129270 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46092 | /* 129275 */ GIR_RootConstrainSelectedInstOperands, |
| 46093 | /* 129276 */ // GIR_Coverage, 8027, |
| 46094 | /* 129276 */ GIR_EraseRootFromParent_Done, |
| 46095 | /* 129277 */ // Label 2869: @129277 |
| 46096 | /* 129277 */ GIM_Try, /*On fail goto*//*Label 2870*/ GIMT_Encode4(129296), // Rule ID 8024 // |
| 46097 | /* 129282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46098 | /* 129285 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46099 | /* 129289 */ // (rotl:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPROLVDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 46100 | /* 129289 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVDZ256rr), |
| 46101 | /* 129294 */ GIR_RootConstrainSelectedInstOperands, |
| 46102 | /* 129295 */ // GIR_Coverage, 8024, |
| 46103 | /* 129295 */ GIR_Done, |
| 46104 | /* 129296 */ // Label 2870: @129296 |
| 46105 | /* 129296 */ GIM_Try, /*On fail goto*//*Label 2871*/ GIMT_Encode4(129453), // Rule ID 20816 // |
| 46106 | /* 129301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 46107 | /* 129304 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46108 | /* 129308 */ // (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] }) |
| 46109 | /* 129308 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 46110 | /* 129311 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46111 | /* 129315 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46112 | /* 129320 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 46113 | /* 129322 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 46114 | /* 129325 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46115 | /* 129329 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46116 | /* 129334 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 46117 | /* 129337 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 46118 | /* 129341 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 46119 | /* 129344 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46120 | /* 129349 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46121 | /* 129354 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46122 | /* 129359 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 46123 | /* 129362 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46124 | /* 129366 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46125 | /* 129371 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46126 | /* 129373 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 46127 | /* 129376 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46128 | /* 129380 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46129 | /* 129385 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46130 | /* 129388 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46131 | /* 129392 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 46132 | /* 129395 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46133 | /* 129400 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46134 | /* 129405 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46135 | /* 129410 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 46136 | /* 129413 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPROLVDZrr), |
| 46137 | /* 129417 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46138 | /* 129422 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46139 | /* 129425 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 46140 | /* 129428 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46141 | /* 129430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46142 | /* 129433 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46143 | /* 129435 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 46144 | /* 129442 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 46145 | /* 129447 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46146 | /* 129452 */ // GIR_Coverage, 20816, |
| 46147 | /* 129452 */ GIR_EraseRootFromParent_Done, |
| 46148 | /* 129453 */ // Label 2871: @129453 |
| 46149 | /* 129453 */ GIM_Reject, |
| 46150 | /* 129454 */ // Label 2868: @129454 |
| 46151 | /* 129454 */ GIM_Reject, |
| 46152 | /* 129455 */ // Label 2808: @129455 |
| 46153 | /* 129455 */ GIM_Try, /*On fail goto*//*Label 2872*/ GIMT_Encode4(129548), |
| 46154 | /* 129460 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 46155 | /* 129463 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 46156 | /* 129466 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46157 | /* 129470 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46158 | /* 129474 */ GIM_Try, /*On fail goto*//*Label 2873*/ GIMT_Encode4(129528), // Rule ID 8045 // |
| 46159 | /* 129479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 46160 | /* 129482 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46161 | /* 129486 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46162 | /* 129490 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46163 | /* 129493 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46164 | /* 129497 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46165 | /* 129501 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46166 | /* 129503 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46167 | /* 129510 */ // (rotl:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46168 | /* 129510 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVQZrm), |
| 46169 | /* 129513 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46170 | /* 129515 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46171 | /* 129517 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46172 | /* 129521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46173 | /* 129526 */ GIR_RootConstrainSelectedInstOperands, |
| 46174 | /* 129527 */ // GIR_Coverage, 8045, |
| 46175 | /* 129527 */ GIR_EraseRootFromParent_Done, |
| 46176 | /* 129528 */ // Label 2873: @129528 |
| 46177 | /* 129528 */ GIM_Try, /*On fail goto*//*Label 2874*/ GIMT_Encode4(129547), // Rule ID 8042 // |
| 46178 | /* 129533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 46179 | /* 129536 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46180 | /* 129540 */ // (rotl:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPROLVQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 46181 | /* 129540 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVQZrr), |
| 46182 | /* 129545 */ GIR_RootConstrainSelectedInstOperands, |
| 46183 | /* 129546 */ // GIR_Coverage, 8042, |
| 46184 | /* 129546 */ GIR_Done, |
| 46185 | /* 129547 */ // Label 2874: @129547 |
| 46186 | /* 129547 */ GIM_Reject, |
| 46187 | /* 129548 */ // Label 2872: @129548 |
| 46188 | /* 129548 */ GIM_Reject, |
| 46189 | /* 129549 */ // Label 2809: @129549 |
| 46190 | /* 129549 */ GIM_Try, /*On fail goto*//*Label 2875*/ GIMT_Encode4(129704), |
| 46191 | /* 129554 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 46192 | /* 129557 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 46193 | /* 129560 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46194 | /* 129564 */ GIM_Try, /*On fail goto*//*Label 2876*/ GIMT_Encode4(129622), // Rule ID 1577 // |
| 46195 | /* 129569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46196 | /* 129572 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 46197 | /* 129576 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46198 | /* 129580 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46199 | /* 129583 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46200 | /* 129587 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46201 | /* 129591 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46202 | /* 129595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46203 | /* 129597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46204 | /* 129604 */ // (rotl:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src2) => (VPROTBmr:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 46205 | /* 129604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTBmr), |
| 46206 | /* 129607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46207 | /* 129609 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 46208 | /* 129613 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 46209 | /* 129615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46210 | /* 129620 */ GIR_RootConstrainSelectedInstOperands, |
| 46211 | /* 129621 */ // GIR_Coverage, 1577, |
| 46212 | /* 129621 */ GIR_EraseRootFromParent_Done, |
| 46213 | /* 129622 */ // Label 2876: @129622 |
| 46214 | /* 129622 */ GIM_Try, /*On fail goto*//*Label 2877*/ GIMT_Encode4(129680), // Rule ID 1576 // |
| 46215 | /* 129627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46216 | /* 129630 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46217 | /* 129634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46218 | /* 129638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46219 | /* 129642 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46220 | /* 129645 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46221 | /* 129649 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46222 | /* 129653 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46223 | /* 129655 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46224 | /* 129662 */ // (rotl:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROTBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46225 | /* 129662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROTBrm), |
| 46226 | /* 129665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46227 | /* 129667 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46228 | /* 129669 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46229 | /* 129673 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46230 | /* 129678 */ GIR_RootConstrainSelectedInstOperands, |
| 46231 | /* 129679 */ // GIR_Coverage, 1576, |
| 46232 | /* 129679 */ GIR_EraseRootFromParent_Done, |
| 46233 | /* 129680 */ // Label 2877: @129680 |
| 46234 | /* 129680 */ GIM_Try, /*On fail goto*//*Label 2878*/ GIMT_Encode4(129703), // Rule ID 1575 // |
| 46235 | /* 129685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasXOP), |
| 46236 | /* 129688 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46237 | /* 129692 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 46238 | /* 129696 */ // (rotl:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPROTBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 46239 | /* 129696 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROTBrr), |
| 46240 | /* 129701 */ GIR_RootConstrainSelectedInstOperands, |
| 46241 | /* 129702 */ // GIR_Coverage, 1575, |
| 46242 | /* 129702 */ GIR_Done, |
| 46243 | /* 129703 */ // Label 2878: @129703 |
| 46244 | /* 129703 */ GIM_Reject, |
| 46245 | /* 129704 */ // Label 2875: @129704 |
| 46246 | /* 129704 */ GIM_Reject, |
| 46247 | /* 129705 */ // Label 2810: @129705 |
| 46248 | /* 129705 */ GIM_Try, /*On fail goto*//*Label 2879*/ GIMT_Encode4(129957), |
| 46249 | /* 129710 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 46250 | /* 129713 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 46251 | /* 129716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46252 | /* 129720 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46253 | /* 129724 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46254 | /* 129728 */ GIM_Try, /*On fail goto*//*Label 2880*/ GIMT_Encode4(129749), // Rule ID 22176 // |
| 46255 | /* 129733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 46256 | /* 129736 */ // (rotl:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPSHLDVWZ256r:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 46257 | /* 129736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZ256r), |
| 46258 | /* 129739 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46259 | /* 129741 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46260 | /* 129743 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46261 | /* 129745 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 46262 | /* 129747 */ GIR_RootConstrainSelectedInstOperands, |
| 46263 | /* 129748 */ // GIR_Coverage, 22176, |
| 46264 | /* 129748 */ GIR_EraseRootFromParent_Done, |
| 46265 | /* 129749 */ // Label 2880: @129749 |
| 46266 | /* 129749 */ GIM_Try, /*On fail goto*//*Label 2881*/ GIMT_Encode4(129956), // Rule ID 22184 // |
| 46267 | /* 129754 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_NoVLX), |
| 46268 | /* 129757 */ // (rotl:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (EXTRACT_SUBREG:{ *:[v16i16] } (VPSHLDVWZr:{ *:[v64i8] } (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src1, sub_ymm:{ *:[i32] }), (INSERT_SUBREG:{ *:[v32i16] } (IMPLICIT_DEF:{ *:[v32i16] }), VR256X:{ *:[v16i16] }:$src2, sub_ymm:{ *:[i32] })), sub_ymm:{ *:[i32] }) |
| 46269 | /* 129757 */ GIR_MakeTempReg, /*TempRegID*/6, /*TypeID*/GILLT_v32s16, |
| 46270 | /* 129760 */ GIR_BuildMI, /*InsnID*/7, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46271 | /* 129764 */ GIR_AddTempRegister, /*InsnID*/7, /*TempRegID*/6, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46272 | /* 129769 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/7, |
| 46273 | /* 129771 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 46274 | /* 129774 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46275 | /* 129778 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46276 | /* 129783 */ GIR_AddSimpleTempRegister, /*InsnID*/6, /*TempRegID*/6, |
| 46277 | /* 129786 */ GIR_Copy, /*NewInsnID*/6, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 46278 | /* 129790 */ GIR_AddImm8, /*InsnID*/6, /*Imm*/10, |
| 46279 | /* 129793 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46280 | /* 129798 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46281 | /* 129803 */ GIR_ConstrainOperandRC, /*InsnID*/6, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46282 | /* 129808 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 46283 | /* 129811 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46284 | /* 129815 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46285 | /* 129820 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 46286 | /* 129822 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 46287 | /* 129825 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46288 | /* 129829 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46289 | /* 129834 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 46290 | /* 129837 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46291 | /* 129841 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 46292 | /* 129844 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46293 | /* 129849 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46294 | /* 129854 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46295 | /* 129859 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 46296 | /* 129862 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46297 | /* 129866 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46298 | /* 129871 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46299 | /* 129873 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 46300 | /* 129876 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46301 | /* 129880 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46302 | /* 129885 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46303 | /* 129888 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 46304 | /* 129892 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 46305 | /* 129895 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46306 | /* 129900 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46307 | /* 129905 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46308 | /* 129910 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 46309 | /* 129913 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZr), |
| 46310 | /* 129917 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46311 | /* 129922 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46312 | /* 129925 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 46313 | /* 129928 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/5, |
| 46314 | /* 129931 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46315 | /* 129933 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46316 | /* 129936 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46317 | /* 129938 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 46318 | /* 129945 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 46319 | /* 129950 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46320 | /* 129955 */ // GIR_Coverage, 22184, |
| 46321 | /* 129955 */ GIR_EraseRootFromParent_Done, |
| 46322 | /* 129956 */ // Label 2881: @129956 |
| 46323 | /* 129956 */ GIM_Reject, |
| 46324 | /* 129957 */ // Label 2879: @129957 |
| 46325 | /* 129957 */ GIM_Reject, |
| 46326 | /* 129958 */ // Label 2811: @129958 |
| 46327 | /* 129958 */ GIM_Try, /*On fail goto*//*Label 2882*/ GIMT_Encode4(130051), |
| 46328 | /* 129963 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 46329 | /* 129966 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 46330 | /* 129969 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46331 | /* 129973 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46332 | /* 129977 */ GIM_Try, /*On fail goto*//*Label 2883*/ GIMT_Encode4(130031), // Rule ID 8018 // |
| 46333 | /* 129982 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 46334 | /* 129985 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46335 | /* 129989 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 46336 | /* 129993 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 46337 | /* 129996 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 46338 | /* 130000 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 46339 | /* 130004 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46340 | /* 130006 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 46341 | /* 130013 */ // (rotl:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPROLVDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 46342 | /* 130013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPROLVDZrm), |
| 46343 | /* 130016 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46344 | /* 130018 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46345 | /* 130020 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 46346 | /* 130024 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 46347 | /* 130029 */ GIR_RootConstrainSelectedInstOperands, |
| 46348 | /* 130030 */ // GIR_Coverage, 8018, |
| 46349 | /* 130030 */ GIR_EraseRootFromParent_Done, |
| 46350 | /* 130031 */ // Label 2883: @130031 |
| 46351 | /* 130031 */ GIM_Try, /*On fail goto*//*Label 2884*/ GIMT_Encode4(130050), // Rule ID 8015 // |
| 46352 | /* 130036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 46353 | /* 130039 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46354 | /* 130043 */ // (rotl:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPROLVDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 46355 | /* 130043 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPROLVDZrr), |
| 46356 | /* 130048 */ GIR_RootConstrainSelectedInstOperands, |
| 46357 | /* 130049 */ // GIR_Coverage, 8015, |
| 46358 | /* 130049 */ GIR_Done, |
| 46359 | /* 130050 */ // Label 2884: @130050 |
| 46360 | /* 130050 */ GIM_Reject, |
| 46361 | /* 130051 */ // Label 2882: @130051 |
| 46362 | /* 130051 */ GIM_Reject, |
| 46363 | /* 130052 */ // Label 2812: @130052 |
| 46364 | /* 130052 */ GIM_Try, /*On fail goto*//*Label 2885*/ GIMT_Encode4(130091), // Rule ID 22172 // |
| 46365 | /* 130057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 46366 | /* 130060 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 46367 | /* 130063 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 46368 | /* 130066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46369 | /* 130070 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46370 | /* 130074 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46371 | /* 130078 */ // (rotl:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPSHLDVWZr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 46372 | /* 130078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSHLDVWZr), |
| 46373 | /* 130081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46374 | /* 130083 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46375 | /* 130085 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 46376 | /* 130087 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 46377 | /* 130089 */ GIR_RootConstrainSelectedInstOperands, |
| 46378 | /* 130090 */ // GIR_Coverage, 22172, |
| 46379 | /* 130090 */ GIR_EraseRootFromParent_Done, |
| 46380 | /* 130091 */ // Label 2885: @130091 |
| 46381 | /* 130091 */ GIM_Reject, |
| 46382 | /* 130092 */ // Label 2813: @130092 |
| 46383 | /* 130092 */ GIM_Reject, |
| 46384 | /* 130093 */ // Label 34: @130093 |
| 46385 | /* 130093 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(7), GIMT_Encode2(24), /*)*//*default:*//*Label 2892*/ GIMT_Encode4(131749), |
| 46386 | /* 130104 */ /*GILLT_v2s1*//*Label 2886*/ GIMT_Encode4(130172), GIMT_Encode4(0), |
| 46387 | /* 130112 */ /*GILLT_v4s1*//*Label 2887*/ GIMT_Encode4(130333), GIMT_Encode4(0), GIMT_Encode4(0), |
| 46388 | /* 130124 */ /*GILLT_v8s1*//*Label 2888*/ GIMT_Encode4(130680), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 46389 | /* 130140 */ /*GILLT_v16s1*//*Label 2889*/ GIMT_Encode4(131077), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 46390 | /* 130156 */ /*GILLT_v32s1*//*Label 2890*/ GIMT_Encode4(131474), GIMT_Encode4(0), GIMT_Encode4(0), |
| 46391 | /* 130168 */ /*GILLT_v64s1*//*Label 2891*/ GIMT_Encode4(131698), |
| 46392 | /* 130172 */ // Label 2886: @130172 |
| 46393 | /* 130172 */ GIM_Try, /*On fail goto*//*Label 2893*/ GIMT_Encode4(130332), |
| 46394 | /* 130177 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 46395 | /* 130180 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 46396 | /* 130183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 46397 | /* 130187 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46398 | /* 130192 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46399 | /* 130196 */ GIM_Try, /*On fail goto*//*Label 2894*/ GIMT_Encode4(130227), // Rule ID 12610 // |
| 46400 | /* 130201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 46401 | /* 130204 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46402 | /* 130208 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46403 | /* 130214 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46404 | /* 130216 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46405 | /* 130218 */ // (setcc:{ *:[v2i1] } immAllZerosV:{ *:[v2i64] }, VR128X:{ *:[v2i64] }:$src, SETGT:{ *:[Other] }) => (VPMOVQ2MZ128kr:{ *:[v2i1] } VR128X:{ *:[v2i64] }:$src) |
| 46406 | /* 130218 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZ128kr), |
| 46407 | /* 130221 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46408 | /* 130223 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46409 | /* 130225 */ GIR_RootConstrainSelectedInstOperands, |
| 46410 | /* 130226 */ // GIR_Coverage, 12610, |
| 46411 | /* 130226 */ GIR_EraseRootFromParent_Done, |
| 46412 | /* 130227 */ // Label 2894: @130227 |
| 46413 | /* 130227 */ GIM_Try, /*On fail goto*//*Label 2895*/ GIMT_Encode4(130331), // Rule ID 21669 // |
| 46414 | /* 130232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoVLX), |
| 46415 | /* 130235 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46416 | /* 130239 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46417 | /* 130245 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46418 | /* 130247 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46419 | /* 130249 */ // (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] }) |
| 46420 | /* 130249 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 46421 | /* 130252 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46422 | /* 130256 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46423 | /* 130261 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46424 | /* 130263 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 46425 | /* 130266 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46426 | /* 130270 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46427 | /* 130275 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46428 | /* 130278 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46429 | /* 130282 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 46430 | /* 130285 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46431 | /* 130290 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46432 | /* 130295 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46433 | /* 130300 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 46434 | /* 130303 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZkr), |
| 46435 | /* 130307 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46436 | /* 130312 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46437 | /* 130315 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46438 | /* 130317 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46439 | /* 130320 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46440 | /* 130322 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46441 | /* 130325 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 46442 | /* 130330 */ // GIR_Coverage, 21669, |
| 46443 | /* 130330 */ GIR_EraseRootFromParent_Done, |
| 46444 | /* 130331 */ // Label 2895: @130331 |
| 46445 | /* 130331 */ GIM_Reject, |
| 46446 | /* 130332 */ // Label 2893: @130332 |
| 46447 | /* 130332 */ GIM_Reject, |
| 46448 | /* 130333 */ // Label 2887: @130333 |
| 46449 | /* 130333 */ GIM_Try, /*On fail goto*//*Label 2896*/ GIMT_Encode4(130383), // Rule ID 12607 // |
| 46450 | /* 130338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 46451 | /* 130341 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 46452 | /* 130344 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 46453 | /* 130347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 46454 | /* 130351 */ // MIs[0] Operand 1 |
| 46455 | /* 130351 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46456 | /* 130356 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46457 | /* 130360 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46458 | /* 130366 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46459 | /* 130368 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46460 | /* 130372 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46461 | /* 130374 */ // (setcc:{ *:[v4i1] } immAllZerosV:{ *:[v4i32] }, VR128X:{ *:[v4i32] }:$src, SETGT:{ *:[Other] }) => (VPMOVD2MZ128kr:{ *:[v4i1] } VR128X:{ *:[v4i32] }:$src) |
| 46462 | /* 130374 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZ128kr), |
| 46463 | /* 130377 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46464 | /* 130379 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46465 | /* 130381 */ GIR_RootConstrainSelectedInstOperands, |
| 46466 | /* 130382 */ // GIR_Coverage, 12607, |
| 46467 | /* 130382 */ GIR_EraseRootFromParent_Done, |
| 46468 | /* 130383 */ // Label 2896: @130383 |
| 46469 | /* 130383 */ GIM_Try, /*On fail goto*//*Label 2897*/ GIMT_Encode4(130433), // Rule ID 12609 // |
| 46470 | /* 130388 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 46471 | /* 130391 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 46472 | /* 130394 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 46473 | /* 130397 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 46474 | /* 130401 */ // MIs[0] Operand 1 |
| 46475 | /* 130401 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46476 | /* 130406 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46477 | /* 130410 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46478 | /* 130416 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46479 | /* 130418 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46480 | /* 130422 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46481 | /* 130424 */ // (setcc:{ *:[v4i1] } immAllZerosV:{ *:[v4i64] }, VR256X:{ *:[v4i64] }:$src, SETGT:{ *:[Other] }) => (VPMOVQ2MZ256kr:{ *:[v4i1] } VR256X:{ *:[v4i64] }:$src) |
| 46482 | /* 130424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZ256kr), |
| 46483 | /* 130427 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46484 | /* 130429 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46485 | /* 130431 */ GIR_RootConstrainSelectedInstOperands, |
| 46486 | /* 130432 */ // GIR_Coverage, 12609, |
| 46487 | /* 130432 */ GIR_EraseRootFromParent_Done, |
| 46488 | /* 130433 */ // Label 2897: @130433 |
| 46489 | /* 130433 */ GIM_Try, /*On fail goto*//*Label 2898*/ GIMT_Encode4(130556), // Rule ID 21667 // |
| 46490 | /* 130438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoVLX), |
| 46491 | /* 130441 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 46492 | /* 130444 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 46493 | /* 130447 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 46494 | /* 130451 */ // MIs[0] Operand 1 |
| 46495 | /* 130451 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46496 | /* 130456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46497 | /* 130460 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46498 | /* 130466 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46499 | /* 130468 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46500 | /* 130472 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46501 | /* 130474 */ // (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] }) |
| 46502 | /* 130474 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 46503 | /* 130477 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46504 | /* 130481 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46505 | /* 130486 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46506 | /* 130488 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 46507 | /* 130491 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46508 | /* 130495 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46509 | /* 130500 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46510 | /* 130503 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46511 | /* 130507 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 46512 | /* 130510 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46513 | /* 130515 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46514 | /* 130520 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46515 | /* 130525 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 46516 | /* 130528 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZkr), |
| 46517 | /* 130532 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46518 | /* 130537 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46519 | /* 130540 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46520 | /* 130542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46521 | /* 130545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46522 | /* 130547 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46523 | /* 130550 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 46524 | /* 130555 */ // GIR_Coverage, 21667, |
| 46525 | /* 130555 */ GIR_EraseRootFromParent_Done, |
| 46526 | /* 130556 */ // Label 2898: @130556 |
| 46527 | /* 130556 */ GIM_Try, /*On fail goto*//*Label 2899*/ GIMT_Encode4(130679), // Rule ID 21668 // |
| 46528 | /* 130561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoVLX), |
| 46529 | /* 130564 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 46530 | /* 130567 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 46531 | /* 130570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 46532 | /* 130574 */ // MIs[0] Operand 1 |
| 46533 | /* 130574 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46534 | /* 130579 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46535 | /* 130583 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46536 | /* 130589 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46537 | /* 130591 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46538 | /* 130595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46539 | /* 130597 */ // (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] }) |
| 46540 | /* 130597 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 46541 | /* 130600 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46542 | /* 130604 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46543 | /* 130609 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46544 | /* 130611 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 46545 | /* 130614 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46546 | /* 130618 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46547 | /* 130623 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46548 | /* 130626 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46549 | /* 130630 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 46550 | /* 130633 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46551 | /* 130638 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46552 | /* 130643 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46553 | /* 130648 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 46554 | /* 130651 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZkr), |
| 46555 | /* 130655 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46556 | /* 130660 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46557 | /* 130663 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46558 | /* 130665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46559 | /* 130668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46560 | /* 130670 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46561 | /* 130673 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 46562 | /* 130678 */ // GIR_Coverage, 21668, |
| 46563 | /* 130678 */ GIR_EraseRootFromParent_Done, |
| 46564 | /* 130679 */ // Label 2899: @130679 |
| 46565 | /* 130679 */ GIM_Reject, |
| 46566 | /* 130680 */ // Label 2888: @130680 |
| 46567 | /* 130680 */ GIM_Try, /*On fail goto*//*Label 2900*/ GIMT_Encode4(130730), // Rule ID 12604 // |
| 46568 | /* 130685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 46569 | /* 130688 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 46570 | /* 130691 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 46571 | /* 130694 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 46572 | /* 130698 */ // MIs[0] Operand 1 |
| 46573 | /* 130698 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46574 | /* 130703 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46575 | /* 130707 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46576 | /* 130713 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46577 | /* 130715 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46578 | /* 130719 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46579 | /* 130721 */ // (setcc:{ *:[v8i1] } immAllZerosV:{ *:[v8i16] }, VR128X:{ *:[v8i16] }:$src, SETGT:{ *:[Other] }) => (VPMOVW2MZ128kr:{ *:[v8i1] } VR128X:{ *:[v8i16] }:$src) |
| 46580 | /* 130721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZ128kr), |
| 46581 | /* 130724 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46582 | /* 130726 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46583 | /* 130728 */ GIR_RootConstrainSelectedInstOperands, |
| 46584 | /* 130729 */ // GIR_Coverage, 12604, |
| 46585 | /* 130729 */ GIR_EraseRootFromParent_Done, |
| 46586 | /* 130730 */ // Label 2900: @130730 |
| 46587 | /* 130730 */ GIM_Try, /*On fail goto*//*Label 2901*/ GIMT_Encode4(130780), // Rule ID 12606 // |
| 46588 | /* 130735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 46589 | /* 130738 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 46590 | /* 130741 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 46591 | /* 130744 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 46592 | /* 130748 */ // MIs[0] Operand 1 |
| 46593 | /* 130748 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46594 | /* 130753 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46595 | /* 130757 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46596 | /* 130763 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46597 | /* 130765 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46598 | /* 130769 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46599 | /* 130771 */ // (setcc:{ *:[v8i1] } immAllZerosV:{ *:[v8i32] }, VR256X:{ *:[v8i32] }:$src, SETGT:{ *:[Other] }) => (VPMOVD2MZ256kr:{ *:[v8i1] } VR256X:{ *:[v8i32] }:$src) |
| 46600 | /* 130771 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZ256kr), |
| 46601 | /* 130774 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46602 | /* 130776 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46603 | /* 130778 */ GIR_RootConstrainSelectedInstOperands, |
| 46604 | /* 130779 */ // GIR_Coverage, 12606, |
| 46605 | /* 130779 */ GIR_EraseRootFromParent_Done, |
| 46606 | /* 130780 */ // Label 2901: @130780 |
| 46607 | /* 130780 */ GIM_Try, /*On fail goto*//*Label 2902*/ GIMT_Encode4(130830), // Rule ID 12608 // |
| 46608 | /* 130785 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 46609 | /* 130788 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 46610 | /* 130791 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 46611 | /* 130794 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 46612 | /* 130798 */ // MIs[0] Operand 1 |
| 46613 | /* 130798 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46614 | /* 130803 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46615 | /* 130807 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46616 | /* 130813 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46617 | /* 130815 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46618 | /* 130819 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46619 | /* 130821 */ // (setcc:{ *:[v8i1] } immAllZerosV:{ *:[v8i64] }, VR512:{ *:[v8i64] }:$src, SETGT:{ *:[Other] }) => (VPMOVQ2MZkr:{ *:[v8i1] } VR512:{ *:[v8i64] }:$src) |
| 46620 | /* 130821 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVQ2MZkr), |
| 46621 | /* 130824 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46622 | /* 130826 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46623 | /* 130828 */ GIR_RootConstrainSelectedInstOperands, |
| 46624 | /* 130829 */ // GIR_Coverage, 12608, |
| 46625 | /* 130829 */ GIR_EraseRootFromParent_Done, |
| 46626 | /* 130830 */ // Label 2902: @130830 |
| 46627 | /* 130830 */ GIM_Try, /*On fail goto*//*Label 2903*/ GIMT_Encode4(130953), // Rule ID 21665 // |
| 46628 | /* 130835 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 46629 | /* 130838 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 46630 | /* 130841 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 46631 | /* 130844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 46632 | /* 130848 */ // MIs[0] Operand 1 |
| 46633 | /* 130848 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46634 | /* 130853 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46635 | /* 130857 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46636 | /* 130863 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46637 | /* 130865 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46638 | /* 130869 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46639 | /* 130871 */ // (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] }) |
| 46640 | /* 130871 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 46641 | /* 130874 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46642 | /* 130878 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46643 | /* 130883 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46644 | /* 130885 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 46645 | /* 130888 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46646 | /* 130892 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46647 | /* 130897 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46648 | /* 130900 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46649 | /* 130904 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 46650 | /* 130907 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46651 | /* 130912 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46652 | /* 130917 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46653 | /* 130922 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s1, |
| 46654 | /* 130925 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZkr), |
| 46655 | /* 130929 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46656 | /* 130934 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46657 | /* 130937 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46658 | /* 130939 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46659 | /* 130942 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46660 | /* 130944 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46661 | /* 130947 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 46662 | /* 130952 */ // GIR_Coverage, 21665, |
| 46663 | /* 130952 */ GIR_EraseRootFromParent_Done, |
| 46664 | /* 130953 */ // Label 2903: @130953 |
| 46665 | /* 130953 */ GIM_Try, /*On fail goto*//*Label 2904*/ GIMT_Encode4(131076), // Rule ID 21666 // |
| 46666 | /* 130958 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_NoVLX), |
| 46667 | /* 130961 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 46668 | /* 130964 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 46669 | /* 130967 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 46670 | /* 130971 */ // MIs[0] Operand 1 |
| 46671 | /* 130971 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46672 | /* 130976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46673 | /* 130980 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46674 | /* 130986 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46675 | /* 130988 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46676 | /* 130992 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46677 | /* 130994 */ // (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] }) |
| 46678 | /* 130994 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 46679 | /* 130997 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46680 | /* 131001 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46681 | /* 131006 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46682 | /* 131008 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 46683 | /* 131011 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46684 | /* 131015 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46685 | /* 131020 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46686 | /* 131023 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46687 | /* 131027 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 46688 | /* 131030 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46689 | /* 131035 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46690 | /* 131040 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46691 | /* 131045 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 46692 | /* 131048 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZkr), |
| 46693 | /* 131052 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46694 | /* 131057 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46695 | /* 131060 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46696 | /* 131062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46697 | /* 131065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46698 | /* 131067 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46699 | /* 131070 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 46700 | /* 131075 */ // GIR_Coverage, 21666, |
| 46701 | /* 131075 */ GIR_EraseRootFromParent_Done, |
| 46702 | /* 131076 */ // Label 2904: @131076 |
| 46703 | /* 131076 */ GIM_Reject, |
| 46704 | /* 131077 */ // Label 2889: @131077 |
| 46705 | /* 131077 */ GIM_Try, /*On fail goto*//*Label 2905*/ GIMT_Encode4(131127), // Rule ID 12601 // |
| 46706 | /* 131082 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 46707 | /* 131085 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 46708 | /* 131088 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 46709 | /* 131091 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 46710 | /* 131095 */ // MIs[0] Operand 1 |
| 46711 | /* 131095 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46712 | /* 131100 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46713 | /* 131104 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46714 | /* 131110 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46715 | /* 131112 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46716 | /* 131116 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46717 | /* 131118 */ // (setcc:{ *:[v16i1] } immAllZerosV:{ *:[v16i8] }, VR128X:{ *:[v16i8] }:$src, SETGT:{ *:[Other] }) => (VPMOVB2MZ128kr:{ *:[v16i1] } VR128X:{ *:[v16i8] }:$src) |
| 46718 | /* 131118 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZ128kr), |
| 46719 | /* 131121 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46720 | /* 131123 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46721 | /* 131125 */ GIR_RootConstrainSelectedInstOperands, |
| 46722 | /* 131126 */ // GIR_Coverage, 12601, |
| 46723 | /* 131126 */ GIR_EraseRootFromParent_Done, |
| 46724 | /* 131127 */ // Label 2905: @131127 |
| 46725 | /* 131127 */ GIM_Try, /*On fail goto*//*Label 2906*/ GIMT_Encode4(131177), // Rule ID 12603 // |
| 46726 | /* 131132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 46727 | /* 131135 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 46728 | /* 131138 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 46729 | /* 131141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 46730 | /* 131145 */ // MIs[0] Operand 1 |
| 46731 | /* 131145 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46732 | /* 131150 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46733 | /* 131154 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46734 | /* 131160 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46735 | /* 131162 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46736 | /* 131166 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46737 | /* 131168 */ // (setcc:{ *:[v16i1] } immAllZerosV:{ *:[v16i16] }, VR256X:{ *:[v16i16] }:$src, SETGT:{ *:[Other] }) => (VPMOVW2MZ256kr:{ *:[v16i1] } VR256X:{ *:[v16i16] }:$src) |
| 46738 | /* 131168 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZ256kr), |
| 46739 | /* 131171 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46740 | /* 131173 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46741 | /* 131175 */ GIR_RootConstrainSelectedInstOperands, |
| 46742 | /* 131176 */ // GIR_Coverage, 12603, |
| 46743 | /* 131176 */ GIR_EraseRootFromParent_Done, |
| 46744 | /* 131177 */ // Label 2906: @131177 |
| 46745 | /* 131177 */ GIM_Try, /*On fail goto*//*Label 2907*/ GIMT_Encode4(131227), // Rule ID 12605 // |
| 46746 | /* 131182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 46747 | /* 131185 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 46748 | /* 131188 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 46749 | /* 131191 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 46750 | /* 131195 */ // MIs[0] Operand 1 |
| 46751 | /* 131195 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46752 | /* 131200 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46753 | /* 131204 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46754 | /* 131210 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46755 | /* 131212 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46756 | /* 131216 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46757 | /* 131218 */ // (setcc:{ *:[v16i1] } immAllZerosV:{ *:[v16i32] }, VR512:{ *:[v16i32] }:$src, SETGT:{ *:[Other] }) => (VPMOVD2MZkr:{ *:[v16i1] } VR512:{ *:[v16i32] }:$src) |
| 46758 | /* 131218 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVD2MZkr), |
| 46759 | /* 131221 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46760 | /* 131223 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46761 | /* 131225 */ GIR_RootConstrainSelectedInstOperands, |
| 46762 | /* 131226 */ // GIR_Coverage, 12605, |
| 46763 | /* 131226 */ GIR_EraseRootFromParent_Done, |
| 46764 | /* 131227 */ // Label 2907: @131227 |
| 46765 | /* 131227 */ GIM_Try, /*On fail goto*//*Label 2908*/ GIMT_Encode4(131350), // Rule ID 21663 // |
| 46766 | /* 131232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 46767 | /* 131235 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 46768 | /* 131238 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 46769 | /* 131241 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 46770 | /* 131245 */ // MIs[0] Operand 1 |
| 46771 | /* 131245 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46772 | /* 131250 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46773 | /* 131254 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46774 | /* 131260 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46775 | /* 131262 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46776 | /* 131266 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46777 | /* 131268 */ // (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] }) |
| 46778 | /* 131268 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 46779 | /* 131271 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46780 | /* 131275 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46781 | /* 131280 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46782 | /* 131282 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 46783 | /* 131285 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46784 | /* 131289 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46785 | /* 131294 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46786 | /* 131297 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46787 | /* 131301 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 46788 | /* 131304 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46789 | /* 131309 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46790 | /* 131314 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 46791 | /* 131319 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s1, |
| 46792 | /* 131322 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZkr), |
| 46793 | /* 131326 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46794 | /* 131331 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46795 | /* 131334 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46796 | /* 131336 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46797 | /* 131339 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46798 | /* 131341 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46799 | /* 131344 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 46800 | /* 131349 */ // GIR_Coverage, 21663, |
| 46801 | /* 131349 */ GIR_EraseRootFromParent_Done, |
| 46802 | /* 131350 */ // Label 2908: @131350 |
| 46803 | /* 131350 */ GIM_Try, /*On fail goto*//*Label 2909*/ GIMT_Encode4(131473), // Rule ID 21664 // |
| 46804 | /* 131355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 46805 | /* 131358 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 46806 | /* 131361 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 46807 | /* 131364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 46808 | /* 131368 */ // MIs[0] Operand 1 |
| 46809 | /* 131368 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46810 | /* 131373 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46811 | /* 131377 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46812 | /* 131383 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46813 | /* 131385 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46814 | /* 131389 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46815 | /* 131391 */ // (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] }) |
| 46816 | /* 131391 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 46817 | /* 131394 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46818 | /* 131398 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46819 | /* 131403 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46820 | /* 131405 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 46821 | /* 131408 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46822 | /* 131412 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46823 | /* 131417 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46824 | /* 131420 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46825 | /* 131424 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 46826 | /* 131427 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46827 | /* 131432 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46828 | /* 131437 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46829 | /* 131442 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s1, |
| 46830 | /* 131445 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZkr), |
| 46831 | /* 131449 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46832 | /* 131454 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46833 | /* 131457 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46834 | /* 131459 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46835 | /* 131462 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46836 | /* 131464 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46837 | /* 131467 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 46838 | /* 131472 */ // GIR_Coverage, 21664, |
| 46839 | /* 131472 */ GIR_EraseRootFromParent_Done, |
| 46840 | /* 131473 */ // Label 2909: @131473 |
| 46841 | /* 131473 */ GIM_Reject, |
| 46842 | /* 131474 */ // Label 2890: @131474 |
| 46843 | /* 131474 */ GIM_Try, /*On fail goto*//*Label 2910*/ GIMT_Encode4(131524), // Rule ID 12600 // |
| 46844 | /* 131479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 46845 | /* 131482 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 46846 | /* 131485 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 46847 | /* 131488 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 46848 | /* 131492 */ // MIs[0] Operand 1 |
| 46849 | /* 131492 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46850 | /* 131497 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46851 | /* 131501 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46852 | /* 131507 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46853 | /* 131509 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46854 | /* 131513 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46855 | /* 131515 */ // (setcc:{ *:[v32i1] } immAllZerosV:{ *:[v32i8] }, VR256X:{ *:[v32i8] }:$src, SETGT:{ *:[Other] }) => (VPMOVB2MZ256kr:{ *:[v32i1] } VR256X:{ *:[v32i8] }:$src) |
| 46856 | /* 131515 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZ256kr), |
| 46857 | /* 131518 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46858 | /* 131520 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46859 | /* 131522 */ GIR_RootConstrainSelectedInstOperands, |
| 46860 | /* 131523 */ // GIR_Coverage, 12600, |
| 46861 | /* 131523 */ GIR_EraseRootFromParent_Done, |
| 46862 | /* 131524 */ // Label 2910: @131524 |
| 46863 | /* 131524 */ GIM_Try, /*On fail goto*//*Label 2911*/ GIMT_Encode4(131574), // Rule ID 12602 // |
| 46864 | /* 131529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 46865 | /* 131532 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 46866 | /* 131535 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 46867 | /* 131538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 46868 | /* 131542 */ // MIs[0] Operand 1 |
| 46869 | /* 131542 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46870 | /* 131547 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46871 | /* 131551 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46872 | /* 131557 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46873 | /* 131559 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46874 | /* 131563 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46875 | /* 131565 */ // (setcc:{ *:[v32i1] } immAllZerosV:{ *:[v32i16] }, VR512:{ *:[v32i16] }:$src, SETGT:{ *:[Other] }) => (VPMOVW2MZkr:{ *:[v32i1] } VR512:{ *:[v32i16] }:$src) |
| 46876 | /* 131565 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVW2MZkr), |
| 46877 | /* 131568 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46878 | /* 131570 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46879 | /* 131572 */ GIR_RootConstrainSelectedInstOperands, |
| 46880 | /* 131573 */ // GIR_Coverage, 12602, |
| 46881 | /* 131573 */ GIR_EraseRootFromParent_Done, |
| 46882 | /* 131574 */ // Label 2911: @131574 |
| 46883 | /* 131574 */ GIM_Try, /*On fail goto*//*Label 2912*/ GIMT_Encode4(131697), // Rule ID 21662 // |
| 46884 | /* 131579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 46885 | /* 131582 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 46886 | /* 131585 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 46887 | /* 131588 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 46888 | /* 131592 */ // MIs[0] Operand 1 |
| 46889 | /* 131592 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46890 | /* 131597 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46891 | /* 131601 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46892 | /* 131607 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46893 | /* 131609 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 46894 | /* 131613 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46895 | /* 131615 */ // (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] }) |
| 46896 | /* 131615 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 46897 | /* 131618 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 46898 | /* 131622 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46899 | /* 131627 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 46900 | /* 131629 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 46901 | /* 131632 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 46902 | /* 131636 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46903 | /* 131641 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 46904 | /* 131644 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src |
| 46905 | /* 131648 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 46906 | /* 131651 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 46907 | /* 131656 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 46908 | /* 131661 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 46909 | /* 131666 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s1, |
| 46910 | /* 131669 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZkr), |
| 46911 | /* 131673 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 46912 | /* 131678 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 46913 | /* 131681 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 46914 | /* 131683 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 46915 | /* 131686 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46916 | /* 131688 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 46917 | /* 131691 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK32RegClassID), |
| 46918 | /* 131696 */ // GIR_Coverage, 21662, |
| 46919 | /* 131696 */ GIR_EraseRootFromParent_Done, |
| 46920 | /* 131697 */ // Label 2912: @131697 |
| 46921 | /* 131697 */ GIM_Reject, |
| 46922 | /* 131698 */ // Label 2891: @131698 |
| 46923 | /* 131698 */ GIM_Try, /*On fail goto*//*Label 2913*/ GIMT_Encode4(131748), // Rule ID 12599 // |
| 46924 | /* 131703 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 46925 | /* 131706 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 46926 | /* 131709 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v64s8, |
| 46927 | /* 131712 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 46928 | /* 131716 */ // MIs[0] Operand 1 |
| 46929 | /* 131716 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 46930 | /* 131721 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 46931 | /* 131725 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46932 | /* 131731 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46933 | /* 131733 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 46934 | /* 131737 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46935 | /* 131739 */ // (setcc:{ *:[v64i1] } immAllZerosV:{ *:[v64i8] }, VR512:{ *:[v64i8] }:$src, SETGT:{ *:[Other] }) => (VPMOVB2MZkr:{ *:[v64i1] } VR512:{ *:[v64i8] }:$src) |
| 46936 | /* 131739 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMOVB2MZkr), |
| 46937 | /* 131742 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46938 | /* 131744 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 46939 | /* 131746 */ GIR_RootConstrainSelectedInstOperands, |
| 46940 | /* 131747 */ // GIR_Coverage, 12599, |
| 46941 | /* 131747 */ GIR_EraseRootFromParent_Done, |
| 46942 | /* 131748 */ // Label 2913: @131748 |
| 46943 | /* 131748 */ GIM_Reject, |
| 46944 | /* 131749 */ // Label 2892: @131749 |
| 46945 | /* 131749 */ GIM_Reject, |
| 46946 | /* 131750 */ // Label 35: @131750 |
| 46947 | /* 131750 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 2926*/ GIMT_Encode4(139415), |
| 46948 | /* 131761 */ /*GILLT_v2s64*//*Label 2914*/ GIMT_Encode4(131829), GIMT_Encode4(0), |
| 46949 | /* 131769 */ /*GILLT_v4s32*//*Label 2915*/ GIMT_Encode4(132693), |
| 46950 | /* 131773 */ /*GILLT_v4s64*//*Label 2916*/ GIMT_Encode4(133557), GIMT_Encode4(0), |
| 46951 | /* 131781 */ /*GILLT_v8s16*//*Label 2917*/ GIMT_Encode4(134337), |
| 46952 | /* 131785 */ /*GILLT_v8s32*//*Label 2918*/ GIMT_Encode4(135495), |
| 46953 | /* 131789 */ /*GILLT_v8s64*//*Label 2919*/ GIMT_Encode4(136275), GIMT_Encode4(0), |
| 46954 | /* 131797 */ /*GILLT_v16s8*//*Label 2920*/ GIMT_Encode4(136656), |
| 46955 | /* 131801 */ /*GILLT_v16s16*//*Label 2921*/ GIMT_Encode4(137096), |
| 46956 | /* 131805 */ /*GILLT_v16s32*//*Label 2922*/ GIMT_Encode4(138166), GIMT_Encode4(0), |
| 46957 | /* 131813 */ /*GILLT_v32s8*//*Label 2923*/ GIMT_Encode4(138507), |
| 46958 | /* 131817 */ /*GILLT_v32s16*//*Label 2924*/ GIMT_Encode4(138911), GIMT_Encode4(0), |
| 46959 | /* 131825 */ /*GILLT_v64s8*//*Label 2925*/ GIMT_Encode4(139329), |
| 46960 | /* 131829 */ // Label 2914: @131829 |
| 46961 | /* 131829 */ GIM_Try, /*On fail goto*//*Label 2927*/ GIMT_Encode4(132692), |
| 46962 | /* 131834 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 46963 | /* 131837 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 46964 | /* 131840 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 46965 | /* 131843 */ GIM_Try, /*On fail goto*//*Label 2928*/ GIMT_Encode4(131888), // Rule ID 4493 // |
| 46966 | /* 131848 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46967 | /* 131851 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46968 | /* 131855 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 46969 | /* 131859 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46970 | /* 131863 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 46971 | /* 131867 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46972 | /* 131873 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46973 | /* 131875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46974 | /* 131877 */ // (vselect:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src, immAllZerosV:{ *:[v2f64] }) => (VMOVAPDZ128rrkz:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src) |
| 46975 | /* 131877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ128rrkz), |
| 46976 | /* 131880 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46977 | /* 131882 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 46978 | /* 131884 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 46979 | /* 131886 */ GIR_RootConstrainSelectedInstOperands, |
| 46980 | /* 131887 */ // GIR_Coverage, 4493, |
| 46981 | /* 131887 */ GIR_EraseRootFromParent_Done, |
| 46982 | /* 131888 */ // Label 2928: @131888 |
| 46983 | /* 131888 */ GIM_Try, /*On fail goto*//*Label 2929*/ GIMT_Encode4(131933), // Rule ID 4547 // |
| 46984 | /* 131893 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 46985 | /* 131896 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46986 | /* 131900 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 46987 | /* 131904 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 46988 | /* 131908 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 46989 | /* 131912 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 46990 | /* 131918 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 46991 | /* 131920 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 46992 | /* 131922 */ // (vselect:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src, immAllZerosV:{ *:[v2i64] }) => (VMOVDQA64Z128rrkz:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src) |
| 46993 | /* 131922 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rrkz), |
| 46994 | /* 131925 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 46995 | /* 131927 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 46996 | /* 131929 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 46997 | /* 131931 */ GIR_RootConstrainSelectedInstOperands, |
| 46998 | /* 131932 */ // GIR_Coverage, 4547, |
| 46999 | /* 131932 */ GIR_EraseRootFromParent_Done, |
| 47000 | /* 131933 */ // Label 2929: @131933 |
| 47001 | /* 131933 */ GIM_Try, /*On fail goto*//*Label 2930*/ GIMT_Encode4(132082), // Rule ID 19786 // |
| 47002 | /* 131938 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47003 | /* 131941 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47004 | /* 131945 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47005 | /* 131949 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47006 | /* 131953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47007 | /* 131957 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47008 | /* 131963 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47009 | /* 131965 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47010 | /* 131967 */ // (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] }) |
| 47011 | /* 131967 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 47012 | /* 131970 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47013 | /* 131974 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47014 | /* 131979 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47015 | /* 131981 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47016 | /* 131984 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47017 | /* 131988 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47018 | /* 131993 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47019 | /* 131996 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47020 | /* 132000 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/9, |
| 47021 | /* 132003 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47022 | /* 132008 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47023 | /* 132013 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47024 | /* 132018 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s1, |
| 47025 | /* 132021 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47026 | /* 132025 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47027 | /* 132030 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47028 | /* 132034 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47029 | /* 132039 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47030 | /* 132042 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrkz), |
| 47031 | /* 132046 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47032 | /* 132051 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47033 | /* 132054 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47034 | /* 132057 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47035 | /* 132059 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47036 | /* 132062 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47037 | /* 132064 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47038 | /* 132071 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47039 | /* 132076 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47040 | /* 132081 */ // GIR_Coverage, 19786, |
| 47041 | /* 132081 */ GIR_EraseRootFromParent_Done, |
| 47042 | /* 132082 */ // Label 2930: @132082 |
| 47043 | /* 132082 */ GIM_Try, /*On fail goto*//*Label 2931*/ GIMT_Encode4(132231), // Rule ID 19788 // |
| 47044 | /* 132087 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47045 | /* 132090 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47046 | /* 132094 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47047 | /* 132098 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47048 | /* 132102 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47049 | /* 132106 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47050 | /* 132112 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47051 | /* 132114 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47052 | /* 132116 */ // (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] }) |
| 47053 | /* 132116 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 47054 | /* 132119 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47055 | /* 132123 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47056 | /* 132128 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47057 | /* 132130 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47058 | /* 132133 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47059 | /* 132137 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47060 | /* 132142 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47061 | /* 132145 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47062 | /* 132149 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/9, |
| 47063 | /* 132152 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47064 | /* 132157 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47065 | /* 132162 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47066 | /* 132167 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s1, |
| 47067 | /* 132170 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47068 | /* 132174 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47069 | /* 132179 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47070 | /* 132183 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47071 | /* 132188 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47072 | /* 132191 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 47073 | /* 132195 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47074 | /* 132200 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47075 | /* 132203 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47076 | /* 132206 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47077 | /* 132208 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47078 | /* 132211 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47079 | /* 132213 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47080 | /* 132220 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47081 | /* 132225 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47082 | /* 132230 */ // GIR_Coverage, 19788, |
| 47083 | /* 132230 */ GIR_EraseRootFromParent_Done, |
| 47084 | /* 132231 */ // Label 2931: @132231 |
| 47085 | /* 132231 */ GIM_Try, /*On fail goto*//*Label 2932*/ GIMT_Encode4(132268), // Rule ID 4495 // |
| 47086 | /* 132236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47087 | /* 132239 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47088 | /* 132243 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47089 | /* 132247 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47090 | /* 132251 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47091 | /* 132255 */ // (vselect:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src0) => (VMOVAPDZ128rrk:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src0, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src1) |
| 47092 | /* 132255 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ128rrk), |
| 47093 | /* 132258 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47094 | /* 132260 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47095 | /* 132262 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47096 | /* 132264 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47097 | /* 132266 */ GIR_RootConstrainSelectedInstOperands, |
| 47098 | /* 132267 */ // GIR_Coverage, 4495, |
| 47099 | /* 132267 */ GIR_EraseRootFromParent_Done, |
| 47100 | /* 132268 */ // Label 2932: @132268 |
| 47101 | /* 132268 */ GIM_Try, /*On fail goto*//*Label 2933*/ GIMT_Encode4(132305), // Rule ID 4549 // |
| 47102 | /* 132273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47103 | /* 132276 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47104 | /* 132280 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47105 | /* 132284 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47106 | /* 132288 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47107 | /* 132292 */ // (vselect:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src0) => (VMOVDQA64Z128rrk:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src0, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src1) |
| 47108 | /* 132292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z128rrk), |
| 47109 | /* 132295 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47110 | /* 132297 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47111 | /* 132299 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47112 | /* 132301 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47113 | /* 132303 */ GIR_RootConstrainSelectedInstOperands, |
| 47114 | /* 132304 */ // GIR_Coverage, 4549, |
| 47115 | /* 132304 */ GIR_EraseRootFromParent_Done, |
| 47116 | /* 132305 */ // Label 2933: @132305 |
| 47117 | /* 132305 */ GIM_Try, /*On fail goto*//*Label 2934*/ GIMT_Encode4(132498), // Rule ID 19785 // |
| 47118 | /* 132310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47119 | /* 132313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47120 | /* 132317 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47121 | /* 132321 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47122 | /* 132325 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47123 | /* 132329 */ // (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] }) |
| 47124 | /* 132329 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 47125 | /* 132332 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47126 | /* 132336 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47127 | /* 132341 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47128 | /* 132343 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 47129 | /* 132346 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47130 | /* 132350 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47131 | /* 132355 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47132 | /* 132358 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47133 | /* 132362 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/9, |
| 47134 | /* 132365 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47135 | /* 132370 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47136 | /* 132375 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47137 | /* 132380 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s1, |
| 47138 | /* 132383 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47139 | /* 132387 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47140 | /* 132392 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47141 | /* 132396 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47142 | /* 132401 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47143 | /* 132404 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47144 | /* 132408 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47145 | /* 132413 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47146 | /* 132415 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 47147 | /* 132418 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47148 | /* 132422 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47149 | /* 132427 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47150 | /* 132430 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47151 | /* 132434 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 47152 | /* 132437 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47153 | /* 132442 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47154 | /* 132447 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47155 | /* 132452 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47156 | /* 132455 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrk), |
| 47157 | /* 132459 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47158 | /* 132464 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47159 | /* 132467 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47160 | /* 132470 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47161 | /* 132473 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47162 | /* 132475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47163 | /* 132478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47164 | /* 132480 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47165 | /* 132487 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47166 | /* 132492 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47167 | /* 132497 */ // GIR_Coverage, 19785, |
| 47168 | /* 132497 */ GIR_EraseRootFromParent_Done, |
| 47169 | /* 132498 */ // Label 2934: @132498 |
| 47170 | /* 132498 */ GIM_Try, /*On fail goto*//*Label 2935*/ GIMT_Encode4(132691), // Rule ID 19787 // |
| 47171 | /* 132503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47172 | /* 132506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47173 | /* 132510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 47174 | /* 132514 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47175 | /* 132518 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47176 | /* 132522 */ // (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] }) |
| 47177 | /* 132522 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 47178 | /* 132525 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47179 | /* 132529 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47180 | /* 132534 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47181 | /* 132536 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 47182 | /* 132539 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47183 | /* 132543 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47184 | /* 132548 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47185 | /* 132551 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47186 | /* 132555 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/9, |
| 47187 | /* 132558 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47188 | /* 132563 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47189 | /* 132568 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47190 | /* 132573 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s1, |
| 47191 | /* 132576 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47192 | /* 132580 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47193 | /* 132585 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47194 | /* 132589 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47195 | /* 132594 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47196 | /* 132597 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47197 | /* 132601 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47198 | /* 132606 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47199 | /* 132608 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 47200 | /* 132611 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47201 | /* 132615 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47202 | /* 132620 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47203 | /* 132623 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47204 | /* 132627 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 47205 | /* 132630 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47206 | /* 132635 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47207 | /* 132640 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47208 | /* 132645 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47209 | /* 132648 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrk), |
| 47210 | /* 132652 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47211 | /* 132657 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47212 | /* 132660 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47213 | /* 132663 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47214 | /* 132666 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47215 | /* 132668 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47216 | /* 132671 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47217 | /* 132673 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47218 | /* 132680 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47219 | /* 132685 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47220 | /* 132690 */ // GIR_Coverage, 19787, |
| 47221 | /* 132690 */ GIR_EraseRootFromParent_Done, |
| 47222 | /* 132691 */ // Label 2935: @132691 |
| 47223 | /* 132691 */ GIM_Reject, |
| 47224 | /* 132692 */ // Label 2927: @132692 |
| 47225 | /* 132692 */ GIM_Reject, |
| 47226 | /* 132693 */ // Label 2915: @132693 |
| 47227 | /* 132693 */ GIM_Try, /*On fail goto*//*Label 2936*/ GIMT_Encode4(133556), |
| 47228 | /* 132698 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 47229 | /* 132701 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 47230 | /* 132704 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 47231 | /* 132707 */ GIM_Try, /*On fail goto*//*Label 2937*/ GIMT_Encode4(132752), // Rule ID 4475 // |
| 47232 | /* 132712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47233 | /* 132715 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47234 | /* 132719 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47235 | /* 132723 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47236 | /* 132727 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47237 | /* 132731 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47238 | /* 132737 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47239 | /* 132739 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47240 | /* 132741 */ // (vselect:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src, immAllZerosV:{ *:[v4f32] }) => (VMOVAPSZ128rrkz:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src) |
| 47241 | /* 132741 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128rrkz), |
| 47242 | /* 132744 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47243 | /* 132746 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47244 | /* 132748 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47245 | /* 132750 */ GIR_RootConstrainSelectedInstOperands, |
| 47246 | /* 132751 */ // GIR_Coverage, 4475, |
| 47247 | /* 132751 */ GIR_EraseRootFromParent_Done, |
| 47248 | /* 132752 */ // Label 2937: @132752 |
| 47249 | /* 132752 */ GIM_Try, /*On fail goto*//*Label 2938*/ GIMT_Encode4(132797), // Rule ID 4533 // |
| 47250 | /* 132757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47251 | /* 132760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47252 | /* 132764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47253 | /* 132768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47254 | /* 132772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47255 | /* 132776 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47256 | /* 132782 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47257 | /* 132784 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47258 | /* 132786 */ // (vselect:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src, immAllZerosV:{ *:[v4i32] }) => (VMOVDQA32Z128rrkz:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src) |
| 47259 | /* 132786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Z128rrkz), |
| 47260 | /* 132789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47261 | /* 132791 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47262 | /* 132793 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47263 | /* 132795 */ GIR_RootConstrainSelectedInstOperands, |
| 47264 | /* 132796 */ // GIR_Coverage, 4533, |
| 47265 | /* 132796 */ GIR_EraseRootFromParent_Done, |
| 47266 | /* 132797 */ // Label 2938: @132797 |
| 47267 | /* 132797 */ GIM_Try, /*On fail goto*//*Label 2939*/ GIMT_Encode4(132946), // Rule ID 19778 // |
| 47268 | /* 132802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47269 | /* 132805 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47270 | /* 132809 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47271 | /* 132813 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47272 | /* 132817 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47273 | /* 132821 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47274 | /* 132827 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47275 | /* 132829 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47276 | /* 132831 */ // (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] }) |
| 47277 | /* 132831 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 47278 | /* 132834 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47279 | /* 132838 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47280 | /* 132843 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47281 | /* 132845 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47282 | /* 132848 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47283 | /* 132852 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47284 | /* 132857 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47285 | /* 132860 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47286 | /* 132864 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/9, |
| 47287 | /* 132867 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47288 | /* 132872 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47289 | /* 132877 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47290 | /* 132882 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 47291 | /* 132885 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47292 | /* 132889 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47293 | /* 132894 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47294 | /* 132898 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 47295 | /* 132903 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 47296 | /* 132906 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrkz), |
| 47297 | /* 132910 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47298 | /* 132915 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47299 | /* 132918 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47300 | /* 132921 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47301 | /* 132923 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47302 | /* 132926 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47303 | /* 132928 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47304 | /* 132935 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47305 | /* 132940 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47306 | /* 132945 */ // GIR_Coverage, 19778, |
| 47307 | /* 132945 */ GIR_EraseRootFromParent_Done, |
| 47308 | /* 132946 */ // Label 2939: @132946 |
| 47309 | /* 132946 */ GIM_Try, /*On fail goto*//*Label 2940*/ GIMT_Encode4(133095), // Rule ID 19780 // |
| 47310 | /* 132951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47311 | /* 132954 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47312 | /* 132958 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47313 | /* 132962 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47314 | /* 132966 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47315 | /* 132970 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47316 | /* 132976 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47317 | /* 132978 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47318 | /* 132980 */ // (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] }) |
| 47319 | /* 132980 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 47320 | /* 132983 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47321 | /* 132987 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47322 | /* 132992 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47323 | /* 132994 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47324 | /* 132997 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47325 | /* 133001 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47326 | /* 133006 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47327 | /* 133009 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47328 | /* 133013 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/9, |
| 47329 | /* 133016 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47330 | /* 133021 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47331 | /* 133026 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47332 | /* 133031 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 47333 | /* 133034 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47334 | /* 133038 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47335 | /* 133043 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47336 | /* 133047 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 47337 | /* 133052 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 47338 | /* 133055 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 47339 | /* 133059 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47340 | /* 133064 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47341 | /* 133067 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47342 | /* 133070 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47343 | /* 133072 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47344 | /* 133075 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47345 | /* 133077 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47346 | /* 133084 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47347 | /* 133089 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47348 | /* 133094 */ // GIR_Coverage, 19780, |
| 47349 | /* 133094 */ GIR_EraseRootFromParent_Done, |
| 47350 | /* 133095 */ // Label 2940: @133095 |
| 47351 | /* 133095 */ GIM_Try, /*On fail goto*//*Label 2941*/ GIMT_Encode4(133132), // Rule ID 4477 // |
| 47352 | /* 133100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47353 | /* 133103 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47354 | /* 133107 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47355 | /* 133111 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47356 | /* 133115 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47357 | /* 133119 */ // (vselect:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src0) => (VMOVAPSZ128rrk:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src0, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src1) |
| 47358 | /* 133119 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ128rrk), |
| 47359 | /* 133122 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47360 | /* 133124 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47361 | /* 133126 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47362 | /* 133128 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47363 | /* 133130 */ GIR_RootConstrainSelectedInstOperands, |
| 47364 | /* 133131 */ // GIR_Coverage, 4477, |
| 47365 | /* 133131 */ GIR_EraseRootFromParent_Done, |
| 47366 | /* 133132 */ // Label 2941: @133132 |
| 47367 | /* 133132 */ GIM_Try, /*On fail goto*//*Label 2942*/ GIMT_Encode4(133169), // Rule ID 4534 // |
| 47368 | /* 133137 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47369 | /* 133140 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47370 | /* 133144 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47371 | /* 133148 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47372 | /* 133152 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47373 | /* 133156 */ // (vselect:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src0) => (VMOVDQA32Z128rrk:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src0, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src1) |
| 47374 | /* 133156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Z128rrk), |
| 47375 | /* 133159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47376 | /* 133161 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47377 | /* 133163 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47378 | /* 133165 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47379 | /* 133167 */ GIR_RootConstrainSelectedInstOperands, |
| 47380 | /* 133168 */ // GIR_Coverage, 4534, |
| 47381 | /* 133168 */ GIR_EraseRootFromParent_Done, |
| 47382 | /* 133169 */ // Label 2942: @133169 |
| 47383 | /* 133169 */ GIM_Try, /*On fail goto*//*Label 2943*/ GIMT_Encode4(133362), // Rule ID 19777 // |
| 47384 | /* 133174 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47385 | /* 133177 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47386 | /* 133181 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47387 | /* 133185 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47388 | /* 133189 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47389 | /* 133193 */ // (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] }) |
| 47390 | /* 133193 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 47391 | /* 133196 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47392 | /* 133200 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47393 | /* 133205 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47394 | /* 133207 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 47395 | /* 133210 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47396 | /* 133214 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47397 | /* 133219 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47398 | /* 133222 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47399 | /* 133226 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/9, |
| 47400 | /* 133229 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47401 | /* 133234 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47402 | /* 133239 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47403 | /* 133244 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s1, |
| 47404 | /* 133247 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47405 | /* 133251 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47406 | /* 133256 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47407 | /* 133260 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 47408 | /* 133265 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47409 | /* 133268 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47410 | /* 133272 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47411 | /* 133277 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47412 | /* 133279 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 47413 | /* 133282 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47414 | /* 133286 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47415 | /* 133291 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47416 | /* 133294 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47417 | /* 133298 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 47418 | /* 133301 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47419 | /* 133306 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47420 | /* 133311 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47421 | /* 133316 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 47422 | /* 133319 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrk), |
| 47423 | /* 133323 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47424 | /* 133328 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47425 | /* 133331 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47426 | /* 133334 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47427 | /* 133337 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47428 | /* 133339 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47429 | /* 133342 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47430 | /* 133344 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47431 | /* 133351 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47432 | /* 133356 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47433 | /* 133361 */ // GIR_Coverage, 19777, |
| 47434 | /* 133361 */ GIR_EraseRootFromParent_Done, |
| 47435 | /* 133362 */ // Label 2943: @133362 |
| 47436 | /* 133362 */ GIM_Try, /*On fail goto*//*Label 2944*/ GIMT_Encode4(133555), // Rule ID 19779 // |
| 47437 | /* 133367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47438 | /* 133370 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47439 | /* 133374 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47440 | /* 133378 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47441 | /* 133382 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47442 | /* 133386 */ // (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] }) |
| 47443 | /* 133386 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 47444 | /* 133389 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47445 | /* 133393 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47446 | /* 133398 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47447 | /* 133400 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 47448 | /* 133403 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47449 | /* 133407 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47450 | /* 133412 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47451 | /* 133415 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47452 | /* 133419 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/9, |
| 47453 | /* 133422 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47454 | /* 133427 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47455 | /* 133432 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47456 | /* 133437 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s1, |
| 47457 | /* 133440 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47458 | /* 133444 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47459 | /* 133449 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47460 | /* 133453 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 47461 | /* 133458 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 47462 | /* 133461 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47463 | /* 133465 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47464 | /* 133470 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47465 | /* 133472 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 47466 | /* 133475 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47467 | /* 133479 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47468 | /* 133484 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47469 | /* 133487 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47470 | /* 133491 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 47471 | /* 133494 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47472 | /* 133499 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47473 | /* 133504 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47474 | /* 133509 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 47475 | /* 133512 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrk), |
| 47476 | /* 133516 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47477 | /* 133521 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47478 | /* 133524 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47479 | /* 133527 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47480 | /* 133530 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47481 | /* 133532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47482 | /* 133535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47483 | /* 133537 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47484 | /* 133544 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47485 | /* 133549 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47486 | /* 133554 */ // GIR_Coverage, 19779, |
| 47487 | /* 133554 */ GIR_EraseRootFromParent_Done, |
| 47488 | /* 133555 */ // Label 2944: @133555 |
| 47489 | /* 133555 */ GIM_Reject, |
| 47490 | /* 133556 */ // Label 2936: @133556 |
| 47491 | /* 133556 */ GIM_Reject, |
| 47492 | /* 133557 */ // Label 2916: @133557 |
| 47493 | /* 133557 */ GIM_Try, /*On fail goto*//*Label 2945*/ GIMT_Encode4(134336), |
| 47494 | /* 133562 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 47495 | /* 133565 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 47496 | /* 133568 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 47497 | /* 133571 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47498 | /* 133575 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 47499 | /* 133579 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47500 | /* 133583 */ GIM_Try, /*On fail goto*//*Label 2946*/ GIMT_Encode4(133616), // Rule ID 4488 // |
| 47501 | /* 133588 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47502 | /* 133591 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47503 | /* 133595 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47504 | /* 133601 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47505 | /* 133603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47506 | /* 133605 */ // (vselect:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src, immAllZerosV:{ *:[v4f64] }) => (VMOVAPDZ256rrkz:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src) |
| 47507 | /* 133605 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ256rrkz), |
| 47508 | /* 133608 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47509 | /* 133610 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47510 | /* 133612 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47511 | /* 133614 */ GIR_RootConstrainSelectedInstOperands, |
| 47512 | /* 133615 */ // GIR_Coverage, 4488, |
| 47513 | /* 133615 */ GIR_EraseRootFromParent_Done, |
| 47514 | /* 133616 */ // Label 2946: @133616 |
| 47515 | /* 133616 */ GIM_Try, /*On fail goto*//*Label 2947*/ GIMT_Encode4(133649), // Rule ID 4542 // |
| 47516 | /* 133621 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47517 | /* 133624 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47518 | /* 133628 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47519 | /* 133634 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47520 | /* 133636 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47521 | /* 133638 */ // (vselect:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src, immAllZerosV:{ *:[v4i64] }) => (VMOVDQA64Z256rrkz:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src) |
| 47522 | /* 133638 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rrkz), |
| 47523 | /* 133641 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47524 | /* 133643 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47525 | /* 133645 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47526 | /* 133647 */ GIR_RootConstrainSelectedInstOperands, |
| 47527 | /* 133648 */ // GIR_Coverage, 4542, |
| 47528 | /* 133648 */ GIR_EraseRootFromParent_Done, |
| 47529 | /* 133649 */ // Label 2947: @133649 |
| 47530 | /* 133649 */ GIM_Try, /*On fail goto*//*Label 2948*/ GIMT_Encode4(133786), // Rule ID 19790 // |
| 47531 | /* 133654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47532 | /* 133657 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47533 | /* 133661 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47534 | /* 133667 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47535 | /* 133669 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47536 | /* 133671 */ // (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] }) |
| 47537 | /* 133671 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 47538 | /* 133674 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47539 | /* 133678 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47540 | /* 133683 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47541 | /* 133685 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47542 | /* 133688 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47543 | /* 133692 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47544 | /* 133697 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47545 | /* 133700 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47546 | /* 133704 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/10, |
| 47547 | /* 133707 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47548 | /* 133712 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47549 | /* 133717 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47550 | /* 133722 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s1, |
| 47551 | /* 133725 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47552 | /* 133729 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47553 | /* 133734 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47554 | /* 133738 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47555 | /* 133743 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47556 | /* 133746 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrkz), |
| 47557 | /* 133750 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47558 | /* 133755 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47559 | /* 133758 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47560 | /* 133761 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47561 | /* 133763 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47562 | /* 133766 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47563 | /* 133768 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 47564 | /* 133775 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 47565 | /* 133780 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47566 | /* 133785 */ // GIR_Coverage, 19790, |
| 47567 | /* 133785 */ GIR_EraseRootFromParent_Done, |
| 47568 | /* 133786 */ // Label 2948: @133786 |
| 47569 | /* 133786 */ GIM_Try, /*On fail goto*//*Label 2949*/ GIMT_Encode4(133923), // Rule ID 19792 // |
| 47570 | /* 133791 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47571 | /* 133794 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47572 | /* 133798 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47573 | /* 133804 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47574 | /* 133806 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47575 | /* 133808 */ // (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] }) |
| 47576 | /* 133808 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 47577 | /* 133811 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47578 | /* 133815 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47579 | /* 133820 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47580 | /* 133822 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47581 | /* 133825 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47582 | /* 133829 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47583 | /* 133834 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47584 | /* 133837 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47585 | /* 133841 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/10, |
| 47586 | /* 133844 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47587 | /* 133849 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47588 | /* 133854 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47589 | /* 133859 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s1, |
| 47590 | /* 133862 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47591 | /* 133866 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47592 | /* 133871 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47593 | /* 133875 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47594 | /* 133880 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47595 | /* 133883 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 47596 | /* 133887 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47597 | /* 133892 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47598 | /* 133895 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47599 | /* 133898 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47600 | /* 133900 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47601 | /* 133903 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47602 | /* 133905 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 47603 | /* 133912 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 47604 | /* 133917 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47605 | /* 133922 */ // GIR_Coverage, 19792, |
| 47606 | /* 133922 */ GIR_EraseRootFromParent_Done, |
| 47607 | /* 133923 */ // Label 2949: @133923 |
| 47608 | /* 133923 */ GIM_Try, /*On fail goto*//*Label 2950*/ GIMT_Encode4(133948), // Rule ID 4490 // |
| 47609 | /* 133928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47610 | /* 133931 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47611 | /* 133935 */ // (vselect:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src0) => (VMOVAPDZ256rrk:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src0, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src1) |
| 47612 | /* 133935 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZ256rrk), |
| 47613 | /* 133938 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47614 | /* 133940 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47615 | /* 133942 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47616 | /* 133944 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47617 | /* 133946 */ GIR_RootConstrainSelectedInstOperands, |
| 47618 | /* 133947 */ // GIR_Coverage, 4490, |
| 47619 | /* 133947 */ GIR_EraseRootFromParent_Done, |
| 47620 | /* 133948 */ // Label 2950: @133948 |
| 47621 | /* 133948 */ GIM_Try, /*On fail goto*//*Label 2951*/ GIMT_Encode4(133973), // Rule ID 4544 // |
| 47622 | /* 133953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 47623 | /* 133956 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47624 | /* 133960 */ // (vselect:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src0) => (VMOVDQA64Z256rrk:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src0, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src1) |
| 47625 | /* 133960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Z256rrk), |
| 47626 | /* 133963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47627 | /* 133965 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47628 | /* 133967 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47629 | /* 133969 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47630 | /* 133971 */ GIR_RootConstrainSelectedInstOperands, |
| 47631 | /* 133972 */ // GIR_Coverage, 4544, |
| 47632 | /* 133972 */ GIR_EraseRootFromParent_Done, |
| 47633 | /* 133973 */ // Label 2951: @133973 |
| 47634 | /* 133973 */ GIM_Try, /*On fail goto*//*Label 2952*/ GIMT_Encode4(134154), // Rule ID 19789 // |
| 47635 | /* 133978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47636 | /* 133981 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47637 | /* 133985 */ // (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] }) |
| 47638 | /* 133985 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 47639 | /* 133988 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47640 | /* 133992 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47641 | /* 133997 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47642 | /* 133999 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 47643 | /* 134002 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47644 | /* 134006 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47645 | /* 134011 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47646 | /* 134014 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47647 | /* 134018 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/10, |
| 47648 | /* 134021 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47649 | /* 134026 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47650 | /* 134031 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47651 | /* 134036 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s1, |
| 47652 | /* 134039 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47653 | /* 134043 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47654 | /* 134048 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47655 | /* 134052 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47656 | /* 134057 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47657 | /* 134060 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47658 | /* 134064 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47659 | /* 134069 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47660 | /* 134071 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 47661 | /* 134074 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47662 | /* 134078 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47663 | /* 134083 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47664 | /* 134086 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47665 | /* 134090 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 47666 | /* 134093 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47667 | /* 134098 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47668 | /* 134103 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47669 | /* 134108 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47670 | /* 134111 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrk), |
| 47671 | /* 134115 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47672 | /* 134120 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47673 | /* 134123 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47674 | /* 134126 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47675 | /* 134129 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47676 | /* 134131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47677 | /* 134134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47678 | /* 134136 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 47679 | /* 134143 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 47680 | /* 134148 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47681 | /* 134153 */ // GIR_Coverage, 19789, |
| 47682 | /* 134153 */ GIR_EraseRootFromParent_Done, |
| 47683 | /* 134154 */ // Label 2952: @134154 |
| 47684 | /* 134154 */ GIM_Try, /*On fail goto*//*Label 2953*/ GIMT_Encode4(134335), // Rule ID 19791 // |
| 47685 | /* 134159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 47686 | /* 134162 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 47687 | /* 134166 */ // (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] }) |
| 47688 | /* 134166 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v8s64, |
| 47689 | /* 134169 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47690 | /* 134173 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47691 | /* 134178 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47692 | /* 134180 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 47693 | /* 134183 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47694 | /* 134187 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47695 | /* 134192 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47696 | /* 134195 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47697 | /* 134199 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/10, |
| 47698 | /* 134202 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47699 | /* 134207 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47700 | /* 134212 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47701 | /* 134217 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s1, |
| 47702 | /* 134220 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47703 | /* 134224 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47704 | /* 134229 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47705 | /* 134233 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK8WMRegClassID), |
| 47706 | /* 134238 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 47707 | /* 134241 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47708 | /* 134245 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47709 | /* 134250 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 47710 | /* 134252 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 47711 | /* 134255 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47712 | /* 134259 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47713 | /* 134264 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 47714 | /* 134267 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 47715 | /* 134271 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 47716 | /* 134274 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47717 | /* 134279 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47718 | /* 134284 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 47719 | /* 134289 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s64, |
| 47720 | /* 134292 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrk), |
| 47721 | /* 134296 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47722 | /* 134301 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47723 | /* 134304 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 47724 | /* 134307 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 47725 | /* 134310 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47726 | /* 134312 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47727 | /* 134315 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47728 | /* 134317 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 47729 | /* 134324 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 47730 | /* 134329 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47731 | /* 134334 */ // GIR_Coverage, 19791, |
| 47732 | /* 134334 */ GIR_EraseRootFromParent_Done, |
| 47733 | /* 134335 */ // Label 2953: @134335 |
| 47734 | /* 134335 */ GIM_Reject, |
| 47735 | /* 134336 */ // Label 2945: @134336 |
| 47736 | /* 134336 */ GIM_Reject, |
| 47737 | /* 134337 */ // Label 2917: @134337 |
| 47738 | /* 134337 */ GIM_Try, /*On fail goto*//*Label 2954*/ GIMT_Encode4(135494), |
| 47739 | /* 134342 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 47740 | /* 134345 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 47741 | /* 134348 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 47742 | /* 134351 */ GIM_Try, /*On fail goto*//*Label 2955*/ GIMT_Encode4(134430), // Rule ID 19876 // |
| 47743 | /* 134356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47744 | /* 134359 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47745 | /* 134363 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47746 | /* 134367 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47747 | /* 134371 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 47748 | /* 134375 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 47749 | /* 134378 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 47750 | /* 134382 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 47751 | /* 134386 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 47752 | /* 134390 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 47753 | /* 134394 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47754 | /* 134400 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 47755 | /* 134402 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 47756 | /* 134404 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 47757 | /* 134411 */ // (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) |
| 47758 | /* 134411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rmkz), |
| 47759 | /* 134414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47760 | /* 134416 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47761 | /* 134418 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 47762 | /* 134422 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 47763 | /* 134428 */ GIR_RootConstrainSelectedInstOperands, |
| 47764 | /* 134429 */ // GIR_Coverage, 19876, |
| 47765 | /* 134429 */ GIR_EraseRootFromParent_Done, |
| 47766 | /* 134430 */ // Label 2955: @134430 |
| 47767 | /* 134430 */ GIM_Try, /*On fail goto*//*Label 2956*/ GIMT_Encode4(134505), // Rule ID 19878 // |
| 47768 | /* 134435 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47769 | /* 134438 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47770 | /* 134442 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47771 | /* 134446 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47772 | /* 134450 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 47773 | /* 134454 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 47774 | /* 134457 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 47775 | /* 134461 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 47776 | /* 134465 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 47777 | /* 134469 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47778 | /* 134475 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 47779 | /* 134477 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 47780 | /* 134479 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 47781 | /* 134486 */ // (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) |
| 47782 | /* 134486 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rmkz), |
| 47783 | /* 134489 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47784 | /* 134491 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47785 | /* 134493 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 47786 | /* 134497 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 47787 | /* 134503 */ GIR_RootConstrainSelectedInstOperands, |
| 47788 | /* 134504 */ // GIR_Coverage, 19878, |
| 47789 | /* 134504 */ GIR_EraseRootFromParent_Done, |
| 47790 | /* 134505 */ // Label 2956: @134505 |
| 47791 | /* 134505 */ GIM_Try, /*On fail goto*//*Label 2957*/ GIMT_Encode4(134577), // Rule ID 19875 // |
| 47792 | /* 134510 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47793 | /* 134513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47794 | /* 134517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47795 | /* 134521 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47796 | /* 134525 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 47797 | /* 134529 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 47798 | /* 134532 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 47799 | /* 134536 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 47800 | /* 134540 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 47801 | /* 134544 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47802 | /* 134548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47803 | /* 134550 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 47804 | /* 134557 */ // (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) |
| 47805 | /* 134557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rmk), |
| 47806 | /* 134560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47807 | /* 134562 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47808 | /* 134564 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47809 | /* 134566 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 47810 | /* 134570 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 47811 | /* 134575 */ GIR_RootConstrainSelectedInstOperands, |
| 47812 | /* 134576 */ // GIR_Coverage, 19875, |
| 47813 | /* 134576 */ GIR_EraseRootFromParent_Done, |
| 47814 | /* 134577 */ // Label 2957: @134577 |
| 47815 | /* 134577 */ GIM_Try, /*On fail goto*//*Label 2958*/ GIMT_Encode4(134645), // Rule ID 19877 // |
| 47816 | /* 134582 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47817 | /* 134585 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47818 | /* 134589 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47819 | /* 134593 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 47820 | /* 134597 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 47821 | /* 134601 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 47822 | /* 134604 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 47823 | /* 134608 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 47824 | /* 134612 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47825 | /* 134616 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47826 | /* 134618 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 47827 | /* 134625 */ // (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) |
| 47828 | /* 134625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rmk), |
| 47829 | /* 134628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47830 | /* 134630 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47831 | /* 134632 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47832 | /* 134634 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 47833 | /* 134638 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 47834 | /* 134643 */ GIR_RootConstrainSelectedInstOperands, |
| 47835 | /* 134644 */ // GIR_Coverage, 19877, |
| 47836 | /* 134644 */ GIR_EraseRootFromParent_Done, |
| 47837 | /* 134645 */ // Label 2958: @134645 |
| 47838 | /* 134645 */ GIM_Try, /*On fail goto*//*Label 2959*/ GIMT_Encode4(134690), // Rule ID 4575 // |
| 47839 | /* 134650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47840 | /* 134653 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47841 | /* 134657 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47842 | /* 134661 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47843 | /* 134665 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47844 | /* 134669 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47845 | /* 134675 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47846 | /* 134677 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47847 | /* 134679 */ // (vselect:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src, immAllZerosV:{ *:[v8i16] }) => (VMOVDQU16Z128rrkz:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src) |
| 47848 | /* 134679 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rrkz), |
| 47849 | /* 134682 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47850 | /* 134684 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47851 | /* 134686 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 47852 | /* 134688 */ GIR_RootConstrainSelectedInstOperands, |
| 47853 | /* 134689 */ // GIR_Coverage, 4575, |
| 47854 | /* 134689 */ GIR_EraseRootFromParent_Done, |
| 47855 | /* 134690 */ // Label 2959: @134690 |
| 47856 | /* 134690 */ GIM_Try, /*On fail goto*//*Label 2960*/ GIMT_Encode4(134839), // Rule ID 19798 // |
| 47857 | /* 134695 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 47858 | /* 134698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47859 | /* 134702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47860 | /* 134706 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47861 | /* 134710 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47862 | /* 134714 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47863 | /* 134720 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47864 | /* 134722 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47865 | /* 134724 */ // (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] }) |
| 47866 | /* 134724 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 47867 | /* 134727 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47868 | /* 134731 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47869 | /* 134736 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47870 | /* 134738 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 47871 | /* 134741 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47872 | /* 134745 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47873 | /* 134750 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47874 | /* 134753 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47875 | /* 134757 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/9, |
| 47876 | /* 134760 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47877 | /* 134765 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47878 | /* 134770 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47879 | /* 134775 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s1, |
| 47880 | /* 134778 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47881 | /* 134782 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47882 | /* 134787 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47883 | /* 134791 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 47884 | /* 134796 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 47885 | /* 134799 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 47886 | /* 134803 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47887 | /* 134808 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47888 | /* 134811 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47889 | /* 134814 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47890 | /* 134816 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47891 | /* 134819 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47892 | /* 134821 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47893 | /* 134828 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47894 | /* 134833 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47895 | /* 134838 */ // GIR_Coverage, 19798, |
| 47896 | /* 134838 */ GIR_EraseRootFromParent_Done, |
| 47897 | /* 134839 */ // Label 2960: @134839 |
| 47898 | /* 134839 */ GIM_Try, /*On fail goto*//*Label 2961*/ GIMT_Encode4(134988), // Rule ID 19802 // |
| 47899 | /* 134844 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 47900 | /* 134847 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47901 | /* 134851 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47902 | /* 134855 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47903 | /* 134859 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47904 | /* 134863 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47905 | /* 134869 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47906 | /* 134871 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47907 | /* 134873 */ // (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] }) |
| 47908 | /* 134873 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 47909 | /* 134876 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47910 | /* 134880 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47911 | /* 134885 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 47912 | /* 134887 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 47913 | /* 134890 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47914 | /* 134894 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47915 | /* 134899 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 47916 | /* 134902 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47917 | /* 134906 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/9, |
| 47918 | /* 134909 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47919 | /* 134914 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47920 | /* 134919 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47921 | /* 134924 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s1, |
| 47922 | /* 134927 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47923 | /* 134931 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47924 | /* 134936 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47925 | /* 134940 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 47926 | /* 134945 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 47927 | /* 134948 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 47928 | /* 134952 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47929 | /* 134957 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 47930 | /* 134960 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 47931 | /* 134963 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 47932 | /* 134965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47933 | /* 134968 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47934 | /* 134970 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 47935 | /* 134977 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 47936 | /* 134982 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47937 | /* 134987 */ // GIR_Coverage, 19802, |
| 47938 | /* 134987 */ GIR_EraseRootFromParent_Done, |
| 47939 | /* 134988 */ // Label 2961: @134988 |
| 47940 | /* 134988 */ GIM_Try, /*On fail goto*//*Label 2962*/ GIMT_Encode4(135033), // Rule ID 19874 // |
| 47941 | /* 134993 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47942 | /* 134996 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47943 | /* 135000 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47944 | /* 135004 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47945 | /* 135008 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 47946 | /* 135012 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 47947 | /* 135018 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 47948 | /* 135020 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 47949 | /* 135022 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1, immAllZerosV:{ *:[v8f16] }) => (VMOVDQU16Z128rrkz:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1) |
| 47950 | /* 135022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rrkz), |
| 47951 | /* 135025 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47952 | /* 135027 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47953 | /* 135029 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47954 | /* 135031 */ GIR_RootConstrainSelectedInstOperands, |
| 47955 | /* 135032 */ // GIR_Coverage, 19874, |
| 47956 | /* 135032 */ GIR_EraseRootFromParent_Done, |
| 47957 | /* 135033 */ // Label 2962: @135033 |
| 47958 | /* 135033 */ GIM_Try, /*On fail goto*//*Label 2963*/ GIMT_Encode4(135070), // Rule ID 4576 // |
| 47959 | /* 135038 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 47960 | /* 135041 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47961 | /* 135045 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47962 | /* 135049 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47963 | /* 135053 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47964 | /* 135057 */ // (vselect:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src0) => (VMOVDQU16Z128rrk:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src1) |
| 47965 | /* 135057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rrk), |
| 47966 | /* 135060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 47967 | /* 135062 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 47968 | /* 135064 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 47969 | /* 135066 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 47970 | /* 135068 */ GIR_RootConstrainSelectedInstOperands, |
| 47971 | /* 135069 */ // GIR_Coverage, 4576, |
| 47972 | /* 135069 */ GIR_EraseRootFromParent_Done, |
| 47973 | /* 135070 */ // Label 2963: @135070 |
| 47974 | /* 135070 */ GIM_Try, /*On fail goto*//*Label 2964*/ GIMT_Encode4(135263), // Rule ID 19797 // |
| 47975 | /* 135075 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 47976 | /* 135078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 47977 | /* 135082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 47978 | /* 135086 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47979 | /* 135090 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 47980 | /* 135094 */ // (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] }) |
| 47981 | /* 135094 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 47982 | /* 135097 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 47983 | /* 135101 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47984 | /* 135106 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 47985 | /* 135108 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 47986 | /* 135111 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 47987 | /* 135115 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47988 | /* 135120 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 47989 | /* 135123 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 47990 | /* 135127 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/9, |
| 47991 | /* 135130 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 47992 | /* 135135 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 47993 | /* 135140 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 47994 | /* 135145 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s1, |
| 47995 | /* 135148 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 47996 | /* 135152 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 47997 | /* 135157 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 47998 | /* 135161 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 47999 | /* 135166 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48000 | /* 135169 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48001 | /* 135173 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48002 | /* 135178 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48003 | /* 135180 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 48004 | /* 135183 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48005 | /* 135187 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48006 | /* 135192 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48007 | /* 135195 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48008 | /* 135199 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 48009 | /* 135202 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48010 | /* 135207 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48011 | /* 135212 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48012 | /* 135217 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48013 | /* 135220 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 48014 | /* 135224 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48015 | /* 135229 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48016 | /* 135232 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48017 | /* 135235 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48018 | /* 135238 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48019 | /* 135240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48020 | /* 135243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48021 | /* 135245 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 48022 | /* 135252 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 48023 | /* 135257 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48024 | /* 135262 */ // GIR_Coverage, 19797, |
| 48025 | /* 135262 */ GIR_EraseRootFromParent_Done, |
| 48026 | /* 135263 */ // Label 2964: @135263 |
| 48027 | /* 135263 */ GIM_Try, /*On fail goto*//*Label 2965*/ GIMT_Encode4(135456), // Rule ID 19801 // |
| 48028 | /* 135268 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 48029 | /* 135271 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 48030 | /* 135275 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48031 | /* 135279 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48032 | /* 135283 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48033 | /* 135287 */ // (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] }) |
| 48034 | /* 135287 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 48035 | /* 135290 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48036 | /* 135294 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48037 | /* 135299 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48038 | /* 135301 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 48039 | /* 135304 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48040 | /* 135308 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48041 | /* 135313 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48042 | /* 135316 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48043 | /* 135320 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/9, |
| 48044 | /* 135323 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48045 | /* 135328 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48046 | /* 135333 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48047 | /* 135338 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s1, |
| 48048 | /* 135341 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48049 | /* 135345 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48050 | /* 135350 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48051 | /* 135354 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48052 | /* 135359 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48053 | /* 135362 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48054 | /* 135366 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48055 | /* 135371 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48056 | /* 135373 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 48057 | /* 135376 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48058 | /* 135380 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48059 | /* 135385 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48060 | /* 135388 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48061 | /* 135392 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 48062 | /* 135395 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48063 | /* 135400 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48064 | /* 135405 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48065 | /* 135410 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48066 | /* 135413 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 48067 | /* 135417 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48068 | /* 135422 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48069 | /* 135425 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48070 | /* 135428 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48071 | /* 135431 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48072 | /* 135433 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48073 | /* 135436 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48074 | /* 135438 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 48075 | /* 135445 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 48076 | /* 135450 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48077 | /* 135455 */ // GIR_Coverage, 19801, |
| 48078 | /* 135455 */ GIR_EraseRootFromParent_Done, |
| 48079 | /* 135456 */ // Label 2965: @135456 |
| 48080 | /* 135456 */ GIM_Try, /*On fail goto*//*Label 2966*/ GIMT_Encode4(135493), // Rule ID 19873 // |
| 48081 | /* 135461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48082 | /* 135464 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48083 | /* 135468 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48084 | /* 135472 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48085 | /* 135476 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48086 | /* 135480 */ // (vselect:{ *:[v8f16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src0) => (VMOVDQU16Z128rrk:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8f16] }:$src1) |
| 48087 | /* 135480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z128rrk), |
| 48088 | /* 135483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48089 | /* 135485 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48090 | /* 135487 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48091 | /* 135489 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48092 | /* 135491 */ GIR_RootConstrainSelectedInstOperands, |
| 48093 | /* 135492 */ // GIR_Coverage, 19873, |
| 48094 | /* 135492 */ GIR_EraseRootFromParent_Done, |
| 48095 | /* 135493 */ // Label 2966: @135493 |
| 48096 | /* 135493 */ GIM_Reject, |
| 48097 | /* 135494 */ // Label 2954: @135494 |
| 48098 | /* 135494 */ GIM_Reject, |
| 48099 | /* 135495 */ // Label 2918: @135495 |
| 48100 | /* 135495 */ GIM_Try, /*On fail goto*//*Label 2967*/ GIMT_Encode4(136274), |
| 48101 | /* 135500 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 48102 | /* 135503 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 48103 | /* 135506 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 48104 | /* 135509 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48105 | /* 135513 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48106 | /* 135517 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48107 | /* 135521 */ GIM_Try, /*On fail goto*//*Label 2968*/ GIMT_Encode4(135554), // Rule ID 4470 // |
| 48108 | /* 135526 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48109 | /* 135529 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48110 | /* 135533 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48111 | /* 135539 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48112 | /* 135541 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48113 | /* 135543 */ // (vselect:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src, immAllZerosV:{ *:[v8f32] }) => (VMOVAPSZ256rrkz:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src) |
| 48114 | /* 135543 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256rrkz), |
| 48115 | /* 135546 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48116 | /* 135548 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48117 | /* 135550 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48118 | /* 135552 */ GIR_RootConstrainSelectedInstOperands, |
| 48119 | /* 135553 */ // GIR_Coverage, 4470, |
| 48120 | /* 135553 */ GIR_EraseRootFromParent_Done, |
| 48121 | /* 135554 */ // Label 2968: @135554 |
| 48122 | /* 135554 */ GIM_Try, /*On fail goto*//*Label 2969*/ GIMT_Encode4(135587), // Rule ID 4529 // |
| 48123 | /* 135559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48124 | /* 135562 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48125 | /* 135566 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48126 | /* 135572 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48127 | /* 135574 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48128 | /* 135576 */ // (vselect:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src, immAllZerosV:{ *:[v8i32] }) => (VMOVDQA32Z256rrkz:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src) |
| 48129 | /* 135576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Z256rrkz), |
| 48130 | /* 135579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48131 | /* 135581 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48132 | /* 135583 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48133 | /* 135585 */ GIR_RootConstrainSelectedInstOperands, |
| 48134 | /* 135586 */ // GIR_Coverage, 4529, |
| 48135 | /* 135586 */ GIR_EraseRootFromParent_Done, |
| 48136 | /* 135587 */ // Label 2969: @135587 |
| 48137 | /* 135587 */ GIM_Try, /*On fail goto*//*Label 2970*/ GIMT_Encode4(135724), // Rule ID 19782 // |
| 48138 | /* 135592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 48139 | /* 135595 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48140 | /* 135599 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48141 | /* 135605 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48142 | /* 135607 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48143 | /* 135609 */ // (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] }) |
| 48144 | /* 135609 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 48145 | /* 135612 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48146 | /* 135616 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48147 | /* 135621 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48148 | /* 135623 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 48149 | /* 135626 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48150 | /* 135630 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48151 | /* 135635 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48152 | /* 135638 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48153 | /* 135642 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/10, |
| 48154 | /* 135645 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48155 | /* 135650 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48156 | /* 135655 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48157 | /* 135660 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 48158 | /* 135663 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48159 | /* 135667 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48160 | /* 135672 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48161 | /* 135676 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 48162 | /* 135681 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 48163 | /* 135684 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrkz), |
| 48164 | /* 135688 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48165 | /* 135693 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48166 | /* 135696 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48167 | /* 135699 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48168 | /* 135701 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48169 | /* 135704 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48170 | /* 135706 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48171 | /* 135713 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48172 | /* 135718 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48173 | /* 135723 */ // GIR_Coverage, 19782, |
| 48174 | /* 135723 */ GIR_EraseRootFromParent_Done, |
| 48175 | /* 135724 */ // Label 2970: @135724 |
| 48176 | /* 135724 */ GIM_Try, /*On fail goto*//*Label 2971*/ GIMT_Encode4(135861), // Rule ID 19784 // |
| 48177 | /* 135729 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 48178 | /* 135732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48179 | /* 135736 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48180 | /* 135742 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48181 | /* 135744 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48182 | /* 135746 */ // (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] }) |
| 48183 | /* 135746 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s32, |
| 48184 | /* 135749 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48185 | /* 135753 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48186 | /* 135758 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48187 | /* 135760 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 48188 | /* 135763 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48189 | /* 135767 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48190 | /* 135772 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48191 | /* 135775 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48192 | /* 135779 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/10, |
| 48193 | /* 135782 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48194 | /* 135787 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48195 | /* 135792 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48196 | /* 135797 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 48197 | /* 135800 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48198 | /* 135804 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48199 | /* 135809 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48200 | /* 135813 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 48201 | /* 135818 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 48202 | /* 135821 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 48203 | /* 135825 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48204 | /* 135830 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48205 | /* 135833 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48206 | /* 135836 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48207 | /* 135838 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48208 | /* 135841 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48209 | /* 135843 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48210 | /* 135850 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48211 | /* 135855 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48212 | /* 135860 */ // GIR_Coverage, 19784, |
| 48213 | /* 135860 */ GIR_EraseRootFromParent_Done, |
| 48214 | /* 135861 */ // Label 2971: @135861 |
| 48215 | /* 135861 */ GIM_Try, /*On fail goto*//*Label 2972*/ GIMT_Encode4(135886), // Rule ID 4472 // |
| 48216 | /* 135866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48217 | /* 135869 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48218 | /* 135873 */ // (vselect:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src0) => (VMOVAPSZ256rrk:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src1) |
| 48219 | /* 135873 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZ256rrk), |
| 48220 | /* 135876 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48221 | /* 135878 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48222 | /* 135880 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48223 | /* 135882 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48224 | /* 135884 */ GIR_RootConstrainSelectedInstOperands, |
| 48225 | /* 135885 */ // GIR_Coverage, 4472, |
| 48226 | /* 135885 */ GIR_EraseRootFromParent_Done, |
| 48227 | /* 135886 */ // Label 2972: @135886 |
| 48228 | /* 135886 */ GIM_Try, /*On fail goto*//*Label 2973*/ GIMT_Encode4(135911), // Rule ID 4530 // |
| 48229 | /* 135891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 48230 | /* 135894 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48231 | /* 135898 */ // (vselect:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src0) => (VMOVDQA32Z256rrk:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src1) |
| 48232 | /* 135898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Z256rrk), |
| 48233 | /* 135901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48234 | /* 135903 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48235 | /* 135905 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48236 | /* 135907 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48237 | /* 135909 */ GIR_RootConstrainSelectedInstOperands, |
| 48238 | /* 135910 */ // GIR_Coverage, 4530, |
| 48239 | /* 135910 */ GIR_EraseRootFromParent_Done, |
| 48240 | /* 135911 */ // Label 2973: @135911 |
| 48241 | /* 135911 */ GIM_Try, /*On fail goto*//*Label 2974*/ GIMT_Encode4(136092), // Rule ID 19781 // |
| 48242 | /* 135916 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 48243 | /* 135919 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48244 | /* 135923 */ // (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] }) |
| 48245 | /* 135923 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 48246 | /* 135926 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48247 | /* 135930 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48248 | /* 135935 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48249 | /* 135937 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 48250 | /* 135940 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48251 | /* 135944 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48252 | /* 135949 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48253 | /* 135952 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48254 | /* 135956 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/10, |
| 48255 | /* 135959 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48256 | /* 135964 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48257 | /* 135969 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48258 | /* 135974 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s1, |
| 48259 | /* 135977 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48260 | /* 135981 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48261 | /* 135986 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48262 | /* 135990 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 48263 | /* 135995 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 48264 | /* 135998 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48265 | /* 136002 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48266 | /* 136007 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48267 | /* 136009 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 48268 | /* 136012 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48269 | /* 136016 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48270 | /* 136021 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48271 | /* 136024 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48272 | /* 136028 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 48273 | /* 136031 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48274 | /* 136036 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48275 | /* 136041 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48276 | /* 136046 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 48277 | /* 136049 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrk), |
| 48278 | /* 136053 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48279 | /* 136058 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48280 | /* 136061 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48281 | /* 136064 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48282 | /* 136067 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48283 | /* 136069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48284 | /* 136072 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48285 | /* 136074 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48286 | /* 136081 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48287 | /* 136086 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48288 | /* 136091 */ // GIR_Coverage, 19781, |
| 48289 | /* 136091 */ GIR_EraseRootFromParent_Done, |
| 48290 | /* 136092 */ // Label 2974: @136092 |
| 48291 | /* 136092 */ GIM_Try, /*On fail goto*//*Label 2975*/ GIMT_Encode4(136273), // Rule ID 19783 // |
| 48292 | /* 136097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 48293 | /* 136100 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48294 | /* 136104 */ // (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] }) |
| 48295 | /* 136104 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v16s32, |
| 48296 | /* 136107 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48297 | /* 136111 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48298 | /* 136116 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48299 | /* 136118 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v16s32, |
| 48300 | /* 136121 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48301 | /* 136125 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48302 | /* 136130 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48303 | /* 136133 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48304 | /* 136137 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/10, |
| 48305 | /* 136140 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48306 | /* 136145 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48307 | /* 136150 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48308 | /* 136155 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s1, |
| 48309 | /* 136158 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48310 | /* 136162 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48311 | /* 136167 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48312 | /* 136171 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK16WMRegClassID), |
| 48313 | /* 136176 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 48314 | /* 136179 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48315 | /* 136183 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48316 | /* 136188 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48317 | /* 136190 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 48318 | /* 136193 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48319 | /* 136197 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48320 | /* 136202 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48321 | /* 136205 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48322 | /* 136209 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 48323 | /* 136212 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48324 | /* 136217 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48325 | /* 136222 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48326 | /* 136227 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s32, |
| 48327 | /* 136230 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrk), |
| 48328 | /* 136234 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48329 | /* 136239 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48330 | /* 136242 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48331 | /* 136245 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48332 | /* 136248 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48333 | /* 136250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48334 | /* 136253 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48335 | /* 136255 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48336 | /* 136262 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48337 | /* 136267 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48338 | /* 136272 */ // GIR_Coverage, 19783, |
| 48339 | /* 136272 */ GIR_EraseRootFromParent_Done, |
| 48340 | /* 136273 */ // Label 2975: @136273 |
| 48341 | /* 136273 */ GIM_Reject, |
| 48342 | /* 136274 */ // Label 2967: @136274 |
| 48343 | /* 136274 */ GIM_Reject, |
| 48344 | /* 136275 */ // Label 2919: @136275 |
| 48345 | /* 136275 */ GIM_Try, /*On fail goto*//*Label 2976*/ GIMT_Encode4(136655), |
| 48346 | /* 136280 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 48347 | /* 136283 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 48348 | /* 136286 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 48349 | /* 136289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48350 | /* 136293 */ GIM_Try, /*On fail goto*//*Label 2977*/ GIMT_Encode4(136362), // Rule ID 19775 // |
| 48351 | /* 136298 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 48352 | /* 136302 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 48353 | /* 136306 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s1, |
| 48354 | /* 136310 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s1, |
| 48355 | /* 136314 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 48356 | /* 136319 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 48357 | /* 136323 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48358 | /* 136329 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 48359 | /* 136331 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/0, /*OpIdx*/2, // MIs[3] |
| 48360 | /* 136335 */ GIM_CheckOpcodeIsEither, /*MI*/3, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48361 | /* 136341 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/3, |
| 48362 | /* 136343 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48363 | /* 136347 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 48364 | /* 136349 */ // (vselect:{ *:[v8i64] } (xor:{ *:[v8i1] } VK8:{ *:[v8i1] }:$mask, immAllOnesV:{ *:[v8i1] }), immAllZerosV:{ *:[v8i64] }, VR512:{ *:[v8i64] }:$src) => (VMOVDQA64Zrrkz:{ *:[v8i64] } VK8:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 48365 | /* 136349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 48366 | /* 136352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48367 | /* 136354 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // mask |
| 48368 | /* 136358 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 48369 | /* 136360 */ GIR_RootConstrainSelectedInstOperands, |
| 48370 | /* 136361 */ // GIR_Coverage, 19775, |
| 48371 | /* 136361 */ GIR_EraseRootFromParent_Done, |
| 48372 | /* 136362 */ // Label 2977: @136362 |
| 48373 | /* 136362 */ GIM_Try, /*On fail goto*//*Label 2978*/ GIMT_Encode4(136409), // Rule ID 3601 // |
| 48374 | /* 136367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48375 | /* 136370 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48376 | /* 136374 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48377 | /* 136378 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48378 | /* 136384 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 48379 | /* 136386 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 48380 | /* 136390 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48381 | /* 136396 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 48382 | /* 136398 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 48383 | /* 136400 */ // (vselect:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, immAllOnesV:{ *:[v8i64] }, immAllZerosV:{ *:[v8i64] }) => (AVX512_512_SEXT_MASK_64:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask) |
| 48384 | /* 136400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AVX512_512_SEXT_MASK_64), |
| 48385 | /* 136403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48386 | /* 136405 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48387 | /* 136407 */ GIR_RootConstrainSelectedInstOperands, |
| 48388 | /* 136408 */ // GIR_Coverage, 3601, |
| 48389 | /* 136408 */ GIR_EraseRootFromParent_Done, |
| 48390 | /* 136409 */ // Label 2978: @136409 |
| 48391 | /* 136409 */ GIM_Try, /*On fail goto*//*Label 2979*/ GIMT_Encode4(136506), // Rule ID 19773 // |
| 48392 | /* 136414 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48393 | /* 136418 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48394 | /* 136422 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48395 | /* 136428 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48396 | /* 136430 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48397 | /* 136434 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48398 | /* 136436 */ // (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) |
| 48399 | /* 136436 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s1, |
| 48400 | /* 136439 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48401 | /* 136443 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48402 | /* 136448 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48403 | /* 136452 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 48404 | /* 136457 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s1, |
| 48405 | /* 136460 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 48406 | /* 136464 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48407 | /* 136469 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48408 | /* 136472 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 48409 | /* 136474 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s1, |
| 48410 | /* 136477 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48411 | /* 136481 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48412 | /* 136486 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48413 | /* 136489 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 48414 | /* 136494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 48415 | /* 136497 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48416 | /* 136499 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 48417 | /* 136502 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 48418 | /* 136504 */ GIR_RootConstrainSelectedInstOperands, |
| 48419 | /* 136505 */ // GIR_Coverage, 19773, |
| 48420 | /* 136505 */ GIR_EraseRootFromParent_Done, |
| 48421 | /* 136506 */ // Label 2979: @136506 |
| 48422 | /* 136506 */ GIM_Try, /*On fail goto*//*Label 2980*/ GIMT_Encode4(136547), // Rule ID 4483 // |
| 48423 | /* 136511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48424 | /* 136514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48425 | /* 136518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48426 | /* 136522 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48427 | /* 136526 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48428 | /* 136532 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48429 | /* 136534 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48430 | /* 136536 */ // (vselect:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src, immAllZerosV:{ *:[v8f64] }) => (VMOVAPDZrrkz:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src) |
| 48431 | /* 136536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrkz), |
| 48432 | /* 136539 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48433 | /* 136541 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48434 | /* 136543 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48435 | /* 136545 */ GIR_RootConstrainSelectedInstOperands, |
| 48436 | /* 136546 */ // GIR_Coverage, 4483, |
| 48437 | /* 136546 */ GIR_EraseRootFromParent_Done, |
| 48438 | /* 136547 */ // Label 2980: @136547 |
| 48439 | /* 136547 */ GIM_Try, /*On fail goto*//*Label 2981*/ GIMT_Encode4(136588), // Rule ID 4537 // |
| 48440 | /* 136552 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48441 | /* 136555 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48442 | /* 136559 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48443 | /* 136563 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48444 | /* 136567 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48445 | /* 136573 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48446 | /* 136575 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48447 | /* 136577 */ // (vselect:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src, immAllZerosV:{ *:[v8i64] }) => (VMOVDQA64Zrrkz:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 48448 | /* 136577 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrkz), |
| 48449 | /* 136580 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48450 | /* 136582 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48451 | /* 136584 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48452 | /* 136586 */ GIR_RootConstrainSelectedInstOperands, |
| 48453 | /* 136587 */ // GIR_Coverage, 4537, |
| 48454 | /* 136587 */ GIR_EraseRootFromParent_Done, |
| 48455 | /* 136588 */ // Label 2981: @136588 |
| 48456 | /* 136588 */ GIM_Try, /*On fail goto*//*Label 2982*/ GIMT_Encode4(136621), // Rule ID 4485 // |
| 48457 | /* 136593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48458 | /* 136596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48459 | /* 136600 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48460 | /* 136604 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48461 | /* 136608 */ // (vselect:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src0) => (VMOVAPDZrrk:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src1) |
| 48462 | /* 136608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPDZrrk), |
| 48463 | /* 136611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48464 | /* 136613 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48465 | /* 136615 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48466 | /* 136617 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48467 | /* 136619 */ GIR_RootConstrainSelectedInstOperands, |
| 48468 | /* 136620 */ // GIR_Coverage, 4485, |
| 48469 | /* 136620 */ GIR_EraseRootFromParent_Done, |
| 48470 | /* 136621 */ // Label 2982: @136621 |
| 48471 | /* 136621 */ GIM_Try, /*On fail goto*//*Label 2983*/ GIMT_Encode4(136654), // Rule ID 4539 // |
| 48472 | /* 136626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48473 | /* 136629 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 48474 | /* 136633 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48475 | /* 136637 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48476 | /* 136641 */ // (vselect:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src0) => (VMOVDQA64Zrrk:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src0, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src1) |
| 48477 | /* 136641 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA64Zrrk), |
| 48478 | /* 136644 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48479 | /* 136646 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48480 | /* 136648 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48481 | /* 136650 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48482 | /* 136652 */ GIR_RootConstrainSelectedInstOperands, |
| 48483 | /* 136653 */ // GIR_Coverage, 4539, |
| 48484 | /* 136653 */ GIR_EraseRootFromParent_Done, |
| 48485 | /* 136654 */ // Label 2983: @136654 |
| 48486 | /* 136654 */ GIM_Reject, |
| 48487 | /* 136655 */ // Label 2976: @136655 |
| 48488 | /* 136655 */ GIM_Reject, |
| 48489 | /* 136656 */ // Label 2920: @136656 |
| 48490 | /* 136656 */ GIM_Try, /*On fail goto*//*Label 2984*/ GIMT_Encode4(137095), |
| 48491 | /* 136661 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 48492 | /* 136664 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 48493 | /* 136667 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 48494 | /* 136670 */ GIM_Try, /*On fail goto*//*Label 2985*/ GIMT_Encode4(136715), // Rule ID 4563 // |
| 48495 | /* 136675 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48496 | /* 136678 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48497 | /* 136682 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 48498 | /* 136686 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48499 | /* 136690 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48500 | /* 136694 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48501 | /* 136700 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48502 | /* 136702 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48503 | /* 136704 */ // (vselect:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src, immAllZerosV:{ *:[v16i8] }) => (VMOVDQU8Z128rrkz:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src) |
| 48504 | /* 136704 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Z128rrkz), |
| 48505 | /* 136707 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48506 | /* 136709 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48507 | /* 136711 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48508 | /* 136713 */ GIR_RootConstrainSelectedInstOperands, |
| 48509 | /* 136714 */ // GIR_Coverage, 4563, |
| 48510 | /* 136714 */ GIR_EraseRootFromParent_Done, |
| 48511 | /* 136715 */ // Label 2985: @136715 |
| 48512 | /* 136715 */ GIM_Try, /*On fail goto*//*Label 2986*/ GIMT_Encode4(136864), // Rule ID 19794 // |
| 48513 | /* 136720 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 48514 | /* 136723 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 48515 | /* 136727 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 48516 | /* 136731 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48517 | /* 136735 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48518 | /* 136739 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48519 | /* 136745 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48520 | /* 136747 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48521 | /* 136749 */ // (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] }) |
| 48522 | /* 136749 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v64s8, |
| 48523 | /* 136752 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48524 | /* 136756 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48525 | /* 136761 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48526 | /* 136763 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 48527 | /* 136766 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48528 | /* 136770 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48529 | /* 136775 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48530 | /* 136778 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48531 | /* 136782 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/9, |
| 48532 | /* 136785 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48533 | /* 136790 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48534 | /* 136795 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48535 | /* 136800 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s1, |
| 48536 | /* 136803 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48537 | /* 136807 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48538 | /* 136812 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48539 | /* 136816 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK64WMRegClassID), |
| 48540 | /* 136821 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 48541 | /* 136824 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrkz), |
| 48542 | /* 136828 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48543 | /* 136833 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48544 | /* 136836 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48545 | /* 136839 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48546 | /* 136841 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48547 | /* 136844 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48548 | /* 136846 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 48549 | /* 136853 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 48550 | /* 136858 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48551 | /* 136863 */ // GIR_Coverage, 19794, |
| 48552 | /* 136863 */ GIR_EraseRootFromParent_Done, |
| 48553 | /* 136864 */ // Label 2986: @136864 |
| 48554 | /* 136864 */ GIM_Try, /*On fail goto*//*Label 2987*/ GIMT_Encode4(136901), // Rule ID 4564 // |
| 48555 | /* 136869 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48556 | /* 136872 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48557 | /* 136876 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 48558 | /* 136880 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48559 | /* 136884 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48560 | /* 136888 */ // (vselect:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src0) => (VMOVDQU8Z128rrk:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src1) |
| 48561 | /* 136888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Z128rrk), |
| 48562 | /* 136891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48563 | /* 136893 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48564 | /* 136895 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48565 | /* 136897 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48566 | /* 136899 */ GIR_RootConstrainSelectedInstOperands, |
| 48567 | /* 136900 */ // GIR_Coverage, 4564, |
| 48568 | /* 136900 */ GIR_EraseRootFromParent_Done, |
| 48569 | /* 136901 */ // Label 2987: @136901 |
| 48570 | /* 136901 */ GIM_Try, /*On fail goto*//*Label 2988*/ GIMT_Encode4(137094), // Rule ID 19793 // |
| 48571 | /* 136906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 48572 | /* 136909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 48573 | /* 136913 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 48574 | /* 136917 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48575 | /* 136921 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 48576 | /* 136925 */ // (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] }) |
| 48577 | /* 136925 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v64s8, |
| 48578 | /* 136928 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48579 | /* 136932 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48580 | /* 136937 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48581 | /* 136939 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v64s8, |
| 48582 | /* 136942 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48583 | /* 136946 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48584 | /* 136951 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48585 | /* 136954 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48586 | /* 136958 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/9, |
| 48587 | /* 136961 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48588 | /* 136966 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48589 | /* 136971 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48590 | /* 136976 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v64s1, |
| 48591 | /* 136979 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48592 | /* 136983 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48593 | /* 136988 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48594 | /* 136992 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK64WMRegClassID), |
| 48595 | /* 136997 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 48596 | /* 137000 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48597 | /* 137004 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48598 | /* 137009 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48599 | /* 137011 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 48600 | /* 137014 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48601 | /* 137018 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48602 | /* 137023 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48603 | /* 137026 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48604 | /* 137030 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 48605 | /* 137033 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48606 | /* 137038 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48607 | /* 137043 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 48608 | /* 137048 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 48609 | /* 137051 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrk), |
| 48610 | /* 137055 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48611 | /* 137060 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48612 | /* 137063 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48613 | /* 137066 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48614 | /* 137069 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48615 | /* 137071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48616 | /* 137074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48617 | /* 137076 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 48618 | /* 137083 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 48619 | /* 137088 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48620 | /* 137093 */ // GIR_Coverage, 19793, |
| 48621 | /* 137093 */ GIR_EraseRootFromParent_Done, |
| 48622 | /* 137094 */ // Label 2988: @137094 |
| 48623 | /* 137094 */ GIM_Reject, |
| 48624 | /* 137095 */ // Label 2984: @137095 |
| 48625 | /* 137095 */ GIM_Reject, |
| 48626 | /* 137096 */ // Label 2921: @137096 |
| 48627 | /* 137096 */ GIM_Try, /*On fail goto*//*Label 2989*/ GIMT_Encode4(138165), |
| 48628 | /* 137101 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 48629 | /* 137104 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 48630 | /* 137107 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 48631 | /* 137110 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48632 | /* 137114 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 48633 | /* 137118 */ GIM_Try, /*On fail goto*//*Label 2990*/ GIMT_Encode4(137189), // Rule ID 19866 // |
| 48634 | /* 137123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48635 | /* 137126 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48636 | /* 137130 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 48637 | /* 137134 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 48638 | /* 137137 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 48639 | /* 137141 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 48640 | /* 137145 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 48641 | /* 137149 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 48642 | /* 137153 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48643 | /* 137159 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 48644 | /* 137161 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 48645 | /* 137163 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 48646 | /* 137170 */ // (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) |
| 48647 | /* 137170 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rmkz), |
| 48648 | /* 137173 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48649 | /* 137175 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48650 | /* 137177 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 48651 | /* 137181 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 48652 | /* 137187 */ GIR_RootConstrainSelectedInstOperands, |
| 48653 | /* 137188 */ // GIR_Coverage, 19866, |
| 48654 | /* 137188 */ GIR_EraseRootFromParent_Done, |
| 48655 | /* 137189 */ // Label 2990: @137189 |
| 48656 | /* 137189 */ GIM_Try, /*On fail goto*//*Label 2991*/ GIMT_Encode4(137256), // Rule ID 19868 // |
| 48657 | /* 137194 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48658 | /* 137197 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48659 | /* 137201 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 48660 | /* 137205 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 48661 | /* 137208 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 48662 | /* 137212 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 48663 | /* 137216 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 48664 | /* 137220 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48665 | /* 137226 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 48666 | /* 137228 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 48667 | /* 137230 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 48668 | /* 137237 */ // (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) |
| 48669 | /* 137237 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rmkz), |
| 48670 | /* 137240 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48671 | /* 137242 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48672 | /* 137244 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 48673 | /* 137248 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 48674 | /* 137254 */ GIR_RootConstrainSelectedInstOperands, |
| 48675 | /* 137255 */ // GIR_Coverage, 19868, |
| 48676 | /* 137255 */ GIR_EraseRootFromParent_Done, |
| 48677 | /* 137256 */ // Label 2991: @137256 |
| 48678 | /* 137256 */ GIM_Try, /*On fail goto*//*Label 2992*/ GIMT_Encode4(137320), // Rule ID 19865 // |
| 48679 | /* 137261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48680 | /* 137264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48681 | /* 137268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 48682 | /* 137272 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 48683 | /* 137275 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 48684 | /* 137279 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 48685 | /* 137283 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 48686 | /* 137287 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48687 | /* 137291 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48688 | /* 137293 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 48689 | /* 137300 */ // (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) |
| 48690 | /* 137300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rmk), |
| 48691 | /* 137303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48692 | /* 137305 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48693 | /* 137307 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48694 | /* 137309 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 48695 | /* 137313 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 48696 | /* 137318 */ GIR_RootConstrainSelectedInstOperands, |
| 48697 | /* 137319 */ // GIR_Coverage, 19865, |
| 48698 | /* 137319 */ GIR_EraseRootFromParent_Done, |
| 48699 | /* 137320 */ // Label 2992: @137320 |
| 48700 | /* 137320 */ GIM_Try, /*On fail goto*//*Label 2993*/ GIMT_Encode4(137380), // Rule ID 19867 // |
| 48701 | /* 137325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48702 | /* 137328 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48703 | /* 137332 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 48704 | /* 137336 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 48705 | /* 137339 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 48706 | /* 137343 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 48707 | /* 137347 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48708 | /* 137351 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48709 | /* 137353 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 48710 | /* 137360 */ // (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) |
| 48711 | /* 137360 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rmk), |
| 48712 | /* 137363 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48713 | /* 137365 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48714 | /* 137367 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48715 | /* 137369 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 48716 | /* 137373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 48717 | /* 137378 */ GIR_RootConstrainSelectedInstOperands, |
| 48718 | /* 137379 */ // GIR_Coverage, 19867, |
| 48719 | /* 137379 */ GIR_EraseRootFromParent_Done, |
| 48720 | /* 137380 */ // Label 2993: @137380 |
| 48721 | /* 137380 */ GIM_Try, /*On fail goto*//*Label 2994*/ GIMT_Encode4(137417), // Rule ID 4571 // |
| 48722 | /* 137385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48723 | /* 137388 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48724 | /* 137392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48725 | /* 137396 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48726 | /* 137402 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48727 | /* 137404 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48728 | /* 137406 */ // (vselect:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src, immAllZerosV:{ *:[v16i16] }) => (VMOVDQU16Z256rrkz:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src) |
| 48729 | /* 137406 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rrkz), |
| 48730 | /* 137409 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48731 | /* 137411 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48732 | /* 137413 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 48733 | /* 137415 */ GIR_RootConstrainSelectedInstOperands, |
| 48734 | /* 137416 */ // GIR_Coverage, 4571, |
| 48735 | /* 137416 */ GIR_EraseRootFromParent_Done, |
| 48736 | /* 137417 */ // Label 2994: @137417 |
| 48737 | /* 137417 */ GIM_Try, /*On fail goto*//*Label 2995*/ GIMT_Encode4(137558), // Rule ID 19800 // |
| 48738 | /* 137422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 48739 | /* 137425 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48740 | /* 137429 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48741 | /* 137433 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48742 | /* 137439 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48743 | /* 137441 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48744 | /* 137443 */ // (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] }) |
| 48745 | /* 137443 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 48746 | /* 137446 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48747 | /* 137450 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48748 | /* 137455 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48749 | /* 137457 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48750 | /* 137460 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48751 | /* 137464 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48752 | /* 137469 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48753 | /* 137472 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48754 | /* 137476 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/10, |
| 48755 | /* 137479 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48756 | /* 137484 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48757 | /* 137489 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48758 | /* 137494 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s1, |
| 48759 | /* 137497 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48760 | /* 137501 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48761 | /* 137506 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48762 | /* 137510 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48763 | /* 137515 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48764 | /* 137518 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 48765 | /* 137522 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48766 | /* 137527 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48767 | /* 137530 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48768 | /* 137533 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48769 | /* 137535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48770 | /* 137538 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48771 | /* 137540 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48772 | /* 137547 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48773 | /* 137552 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48774 | /* 137557 */ // GIR_Coverage, 19800, |
| 48775 | /* 137557 */ GIR_EraseRootFromParent_Done, |
| 48776 | /* 137558 */ // Label 2995: @137558 |
| 48777 | /* 137558 */ GIM_Try, /*On fail goto*//*Label 2996*/ GIMT_Encode4(137699), // Rule ID 19804 // |
| 48778 | /* 137563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 48779 | /* 137566 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48780 | /* 137570 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48781 | /* 137574 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48782 | /* 137580 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48783 | /* 137582 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48784 | /* 137584 */ // (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] }) |
| 48785 | /* 137584 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s16, |
| 48786 | /* 137587 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48787 | /* 137591 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48788 | /* 137596 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 48789 | /* 137598 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48790 | /* 137601 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48791 | /* 137605 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48792 | /* 137610 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 48793 | /* 137613 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48794 | /* 137617 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/10, |
| 48795 | /* 137620 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48796 | /* 137625 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48797 | /* 137630 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48798 | /* 137635 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s1, |
| 48799 | /* 137638 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48800 | /* 137642 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48801 | /* 137647 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48802 | /* 137651 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48803 | /* 137656 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48804 | /* 137659 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 48805 | /* 137663 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48806 | /* 137668 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48807 | /* 137671 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 48808 | /* 137674 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48809 | /* 137676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48810 | /* 137679 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48811 | /* 137681 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48812 | /* 137688 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48813 | /* 137693 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48814 | /* 137698 */ // GIR_Coverage, 19804, |
| 48815 | /* 137698 */ GIR_EraseRootFromParent_Done, |
| 48816 | /* 137699 */ // Label 2996: @137699 |
| 48817 | /* 137699 */ GIM_Try, /*On fail goto*//*Label 2997*/ GIMT_Encode4(137736), // Rule ID 19864 // |
| 48818 | /* 137704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48819 | /* 137707 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48820 | /* 137711 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 48821 | /* 137715 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48822 | /* 137721 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 48823 | /* 137723 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 48824 | /* 137725 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1, immAllZerosV:{ *:[v16f16] }) => (VMOVDQU16Z256rrkz:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1) |
| 48825 | /* 137725 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rrkz), |
| 48826 | /* 137728 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48827 | /* 137730 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48828 | /* 137732 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48829 | /* 137734 */ GIR_RootConstrainSelectedInstOperands, |
| 48830 | /* 137735 */ // GIR_Coverage, 19864, |
| 48831 | /* 137735 */ GIR_EraseRootFromParent_Done, |
| 48832 | /* 137736 */ // Label 2997: @137736 |
| 48833 | /* 137736 */ GIM_Try, /*On fail goto*//*Label 2998*/ GIMT_Encode4(137765), // Rule ID 4572 // |
| 48834 | /* 137741 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48835 | /* 137744 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48836 | /* 137748 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48837 | /* 137752 */ // (vselect:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src0) => (VMOVDQU16Z256rrk:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src1) |
| 48838 | /* 137752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rrk), |
| 48839 | /* 137755 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48840 | /* 137757 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48841 | /* 137759 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48842 | /* 137761 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48843 | /* 137763 */ GIR_RootConstrainSelectedInstOperands, |
| 48844 | /* 137764 */ // GIR_Coverage, 4572, |
| 48845 | /* 137764 */ GIR_EraseRootFromParent_Done, |
| 48846 | /* 137765 */ // Label 2998: @137765 |
| 48847 | /* 137765 */ GIM_Try, /*On fail goto*//*Label 2999*/ GIMT_Encode4(137950), // Rule ID 19799 // |
| 48848 | /* 137770 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 48849 | /* 137773 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48850 | /* 137777 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48851 | /* 137781 */ // (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] }) |
| 48852 | /* 137781 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 48853 | /* 137784 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48854 | /* 137788 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48855 | /* 137793 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48856 | /* 137795 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 48857 | /* 137798 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48858 | /* 137802 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48859 | /* 137807 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48860 | /* 137810 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48861 | /* 137814 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/10, |
| 48862 | /* 137817 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48863 | /* 137822 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48864 | /* 137827 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48865 | /* 137832 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s1, |
| 48866 | /* 137835 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48867 | /* 137839 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48868 | /* 137844 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48869 | /* 137848 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48870 | /* 137853 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48871 | /* 137856 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48872 | /* 137860 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48873 | /* 137865 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48874 | /* 137867 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 48875 | /* 137870 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48876 | /* 137874 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48877 | /* 137879 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48878 | /* 137882 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48879 | /* 137886 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 48880 | /* 137889 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48881 | /* 137894 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48882 | /* 137899 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48883 | /* 137904 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48884 | /* 137907 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 48885 | /* 137911 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48886 | /* 137916 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48887 | /* 137919 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48888 | /* 137922 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48889 | /* 137925 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48890 | /* 137927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48891 | /* 137930 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48892 | /* 137932 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48893 | /* 137939 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48894 | /* 137944 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48895 | /* 137949 */ // GIR_Coverage, 19799, |
| 48896 | /* 137949 */ GIR_EraseRootFromParent_Done, |
| 48897 | /* 137950 */ // Label 2999: @137950 |
| 48898 | /* 137950 */ GIM_Try, /*On fail goto*//*Label 3000*/ GIMT_Encode4(138135), // Rule ID 19803 // |
| 48899 | /* 137955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 48900 | /* 137958 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48901 | /* 137962 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48902 | /* 137966 */ // (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] }) |
| 48903 | /* 137966 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v32s16, |
| 48904 | /* 137969 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48905 | /* 137973 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48906 | /* 137978 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 48907 | /* 137980 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v32s16, |
| 48908 | /* 137983 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48909 | /* 137987 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48910 | /* 137992 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 48911 | /* 137995 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 48912 | /* 137999 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/10, |
| 48913 | /* 138002 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48914 | /* 138007 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48915 | /* 138012 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48916 | /* 138017 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v32s1, |
| 48917 | /* 138020 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48918 | /* 138024 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48919 | /* 138029 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 48920 | /* 138033 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK32WMRegClassID), |
| 48921 | /* 138038 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 48922 | /* 138041 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 48923 | /* 138045 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48924 | /* 138050 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 48925 | /* 138052 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 48926 | /* 138055 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 48927 | /* 138059 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48928 | /* 138064 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 48929 | /* 138067 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 48930 | /* 138071 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 48931 | /* 138074 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 48932 | /* 138079 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48933 | /* 138084 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 48934 | /* 138089 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s16, |
| 48935 | /* 138092 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 48936 | /* 138096 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 48937 | /* 138101 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 48938 | /* 138104 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 48939 | /* 138107 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 48940 | /* 138110 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 48941 | /* 138112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 48942 | /* 138115 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48943 | /* 138117 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 48944 | /* 138124 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 48945 | /* 138129 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 48946 | /* 138134 */ // GIR_Coverage, 19803, |
| 48947 | /* 138134 */ GIR_EraseRootFromParent_Done, |
| 48948 | /* 138135 */ // Label 3000: @138135 |
| 48949 | /* 138135 */ GIM_Try, /*On fail goto*//*Label 3001*/ GIMT_Encode4(138164), // Rule ID 19863 // |
| 48950 | /* 138140 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 48951 | /* 138143 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48952 | /* 138147 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 48953 | /* 138151 */ // (vselect:{ *:[v16f16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src0) => (VMOVDQU16Z256rrk:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16f16] }:$src1) |
| 48954 | /* 138151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Z256rrk), |
| 48955 | /* 138154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48956 | /* 138156 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 48957 | /* 138158 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 48958 | /* 138160 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 48959 | /* 138162 */ GIR_RootConstrainSelectedInstOperands, |
| 48960 | /* 138163 */ // GIR_Coverage, 19863, |
| 48961 | /* 138163 */ GIR_EraseRootFromParent_Done, |
| 48962 | /* 138164 */ // Label 3001: @138164 |
| 48963 | /* 138164 */ GIM_Reject, |
| 48964 | /* 138165 */ // Label 2989: @138165 |
| 48965 | /* 138165 */ GIM_Reject, |
| 48966 | /* 138166 */ // Label 2922: @138166 |
| 48967 | /* 138166 */ GIM_Try, /*On fail goto*//*Label 3002*/ GIMT_Encode4(138506), |
| 48968 | /* 138171 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 48969 | /* 138174 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 48970 | /* 138177 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 48971 | /* 138180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48972 | /* 138184 */ GIM_Try, /*On fail goto*//*Label 3003*/ GIMT_Encode4(138253), // Rule ID 19776 // |
| 48973 | /* 138189 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 48974 | /* 138193 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 48975 | /* 138197 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s1, |
| 48976 | /* 138201 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s1, |
| 48977 | /* 138205 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 48978 | /* 138210 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 48979 | /* 138214 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48980 | /* 138220 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/2, |
| 48981 | /* 138222 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/0, /*OpIdx*/2, // MIs[3] |
| 48982 | /* 138226 */ GIM_CheckOpcodeIsEither, /*MI*/3, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 48983 | /* 138232 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/3, |
| 48984 | /* 138234 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 48985 | /* 138238 */ GIM_CheckIsSafeToFold, /*NumInsns*/3, |
| 48986 | /* 138240 */ // (vselect:{ *:[v16i32] } (xor:{ *:[v16i1] } VK16:{ *:[v16i1] }:$mask, immAllOnesV:{ *:[v16i1] }), immAllZerosV:{ *:[v16i32] }, VR512:{ *:[v16i32] }:$src) => (VMOVDQA32Zrrkz:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 48987 | /* 138240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 48988 | /* 138243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 48989 | /* 138245 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // mask |
| 48990 | /* 138249 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 48991 | /* 138251 */ GIR_RootConstrainSelectedInstOperands, |
| 48992 | /* 138252 */ // GIR_Coverage, 19776, |
| 48993 | /* 138252 */ GIR_EraseRootFromParent_Done, |
| 48994 | /* 138253 */ // Label 3003: @138253 |
| 48995 | /* 138253 */ GIM_Try, /*On fail goto*//*Label 3004*/ GIMT_Encode4(138300), // Rule ID 3600 // |
| 48996 | /* 138258 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 48997 | /* 138261 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 48998 | /* 138265 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 48999 | /* 138269 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49000 | /* 138275 */ GIM_CheckIsBuildVectorAllOnes, /*MI*/1, |
| 49001 | /* 138277 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 49002 | /* 138281 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49003 | /* 138287 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 49004 | /* 138289 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 49005 | /* 138291 */ // (vselect:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, immAllOnesV:{ *:[v16i32] }, immAllZerosV:{ *:[v16i32] }) => (AVX512_512_SEXT_MASK_32:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask) |
| 49006 | /* 138291 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::AVX512_512_SEXT_MASK_32), |
| 49007 | /* 138294 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49008 | /* 138296 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49009 | /* 138298 */ GIR_RootConstrainSelectedInstOperands, |
| 49010 | /* 138299 */ // GIR_Coverage, 3600, |
| 49011 | /* 138299 */ GIR_EraseRootFromParent_Done, |
| 49012 | /* 138300 */ // Label 3004: @138300 |
| 49013 | /* 138300 */ GIM_Try, /*On fail goto*//*Label 3005*/ GIMT_Encode4(138357), // Rule ID 19774 // |
| 49014 | /* 138305 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49015 | /* 138309 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49016 | /* 138313 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49017 | /* 138319 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49018 | /* 138321 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49019 | /* 138325 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49020 | /* 138327 */ // (vselect:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16i32] }, VR512:{ *:[v16i32] }:$src) => (VMOVDQA32Zrrkz:{ *:[v16i32] } (KNOTWkk:{ *:[v16i1] } VK16WM:{ *:[v16i1] }:$mask), VR512:{ *:[v16i32] }:$src) |
| 49021 | /* 138327 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s1, |
| 49022 | /* 138330 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::KNOTWkk), |
| 49023 | /* 138334 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49024 | /* 138339 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49025 | /* 138343 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49026 | /* 138345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 49027 | /* 138348 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49028 | /* 138350 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 49029 | /* 138353 */ GIR_RootToRootCopy, /*OpIdx*/3, // src |
| 49030 | /* 138355 */ GIR_RootConstrainSelectedInstOperands, |
| 49031 | /* 138356 */ // GIR_Coverage, 19774, |
| 49032 | /* 138356 */ GIR_EraseRootFromParent_Done, |
| 49033 | /* 138357 */ // Label 3005: @138357 |
| 49034 | /* 138357 */ GIM_Try, /*On fail goto*//*Label 3006*/ GIMT_Encode4(138398), // Rule ID 4465 // |
| 49035 | /* 138362 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49036 | /* 138365 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49037 | /* 138369 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49038 | /* 138373 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49039 | /* 138377 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49040 | /* 138383 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49041 | /* 138385 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49042 | /* 138387 */ // (vselect:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src, immAllZerosV:{ *:[v16f32] }) => (VMOVAPSZrrkz:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src) |
| 49043 | /* 138387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrkz), |
| 49044 | /* 138390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49045 | /* 138392 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49046 | /* 138394 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49047 | /* 138396 */ GIR_RootConstrainSelectedInstOperands, |
| 49048 | /* 138397 */ // GIR_Coverage, 4465, |
| 49049 | /* 138397 */ GIR_EraseRootFromParent_Done, |
| 49050 | /* 138398 */ // Label 3006: @138398 |
| 49051 | /* 138398 */ GIM_Try, /*On fail goto*//*Label 3007*/ GIMT_Encode4(138439), // Rule ID 4525 // |
| 49052 | /* 138403 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49053 | /* 138406 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49054 | /* 138410 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49055 | /* 138414 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49056 | /* 138418 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49057 | /* 138424 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49058 | /* 138426 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49059 | /* 138428 */ // (vselect:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src, immAllZerosV:{ *:[v16i32] }) => (VMOVDQA32Zrrkz:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 49060 | /* 138428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrkz), |
| 49061 | /* 138431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49062 | /* 138433 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49063 | /* 138435 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49064 | /* 138437 */ GIR_RootConstrainSelectedInstOperands, |
| 49065 | /* 138438 */ // GIR_Coverage, 4525, |
| 49066 | /* 138438 */ GIR_EraseRootFromParent_Done, |
| 49067 | /* 138439 */ // Label 3007: @138439 |
| 49068 | /* 138439 */ GIM_Try, /*On fail goto*//*Label 3008*/ GIMT_Encode4(138472), // Rule ID 4467 // |
| 49069 | /* 138444 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49070 | /* 138447 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49071 | /* 138451 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49072 | /* 138455 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49073 | /* 138459 */ // (vselect:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src0) => (VMOVAPSZrrk:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src1) |
| 49074 | /* 138459 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVAPSZrrk), |
| 49075 | /* 138462 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49076 | /* 138464 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49077 | /* 138466 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49078 | /* 138468 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49079 | /* 138470 */ GIR_RootConstrainSelectedInstOperands, |
| 49080 | /* 138471 */ // GIR_Coverage, 4467, |
| 49081 | /* 138471 */ GIR_EraseRootFromParent_Done, |
| 49082 | /* 138472 */ // Label 3008: @138472 |
| 49083 | /* 138472 */ GIM_Try, /*On fail goto*//*Label 3009*/ GIMT_Encode4(138505), // Rule ID 4526 // |
| 49084 | /* 138477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 49085 | /* 138480 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 49086 | /* 138484 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49087 | /* 138488 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49088 | /* 138492 */ // (vselect:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src0) => (VMOVDQA32Zrrk:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src0, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src1) |
| 49089 | /* 138492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQA32Zrrk), |
| 49090 | /* 138495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49091 | /* 138497 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49092 | /* 138499 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49093 | /* 138501 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49094 | /* 138503 */ GIR_RootConstrainSelectedInstOperands, |
| 49095 | /* 138504 */ // GIR_Coverage, 4526, |
| 49096 | /* 138504 */ GIR_EraseRootFromParent_Done, |
| 49097 | /* 138505 */ // Label 3009: @138505 |
| 49098 | /* 138505 */ GIM_Reject, |
| 49099 | /* 138506 */ // Label 3002: @138506 |
| 49100 | /* 138506 */ GIM_Reject, |
| 49101 | /* 138507 */ // Label 2923: @138507 |
| 49102 | /* 138507 */ GIM_Try, /*On fail goto*//*Label 3010*/ GIMT_Encode4(138910), |
| 49103 | /* 138512 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 49104 | /* 138515 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 49105 | /* 138518 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 49106 | /* 138521 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49107 | /* 138525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32WMRegClassID), |
| 49108 | /* 138529 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49109 | /* 138533 */ GIM_Try, /*On fail goto*//*Label 3011*/ GIMT_Encode4(138566), // Rule ID 4559 // |
| 49110 | /* 138538 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49111 | /* 138541 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49112 | /* 138545 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49113 | /* 138551 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49114 | /* 138553 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49115 | /* 138555 */ // (vselect:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src, immAllZerosV:{ *:[v32i8] }) => (VMOVDQU8Z256rrkz:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src) |
| 49116 | /* 138555 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Z256rrkz), |
| 49117 | /* 138558 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49118 | /* 138560 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49119 | /* 138562 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49120 | /* 138564 */ GIR_RootConstrainSelectedInstOperands, |
| 49121 | /* 138565 */ // GIR_Coverage, 4559, |
| 49122 | /* 138565 */ GIR_EraseRootFromParent_Done, |
| 49123 | /* 138566 */ // Label 3011: @138566 |
| 49124 | /* 138566 */ GIM_Try, /*On fail goto*//*Label 3012*/ GIMT_Encode4(138703), // Rule ID 19796 // |
| 49125 | /* 138571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 49126 | /* 138574 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49127 | /* 138578 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49128 | /* 138584 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49129 | /* 138586 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49130 | /* 138588 */ // (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] }) |
| 49131 | /* 138588 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v64s8, |
| 49132 | /* 138591 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49133 | /* 138595 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49134 | /* 138600 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 49135 | /* 138602 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 49136 | /* 138605 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49137 | /* 138609 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49138 | /* 138614 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 49139 | /* 138617 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49140 | /* 138621 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/10, |
| 49141 | /* 138624 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49142 | /* 138629 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49143 | /* 138634 */ GIR_ConstrainOperandRC, /*InsnID*/3, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49144 | /* 138639 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s1, |
| 49145 | /* 138642 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49146 | /* 138646 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49147 | /* 138651 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49148 | /* 138655 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VK64WMRegClassID), |
| 49149 | /* 138660 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 49150 | /* 138663 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrkz), |
| 49151 | /* 138667 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49152 | /* 138672 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49153 | /* 138675 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/2, |
| 49154 | /* 138678 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49155 | /* 138680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49156 | /* 138683 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49157 | /* 138685 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 49158 | /* 138692 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 49159 | /* 138697 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49160 | /* 138702 */ // GIR_Coverage, 19796, |
| 49161 | /* 138702 */ GIR_EraseRootFromParent_Done, |
| 49162 | /* 138703 */ // Label 3012: @138703 |
| 49163 | /* 138703 */ GIM_Try, /*On fail goto*//*Label 3013*/ GIMT_Encode4(138728), // Rule ID 4560 // |
| 49164 | /* 138708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49165 | /* 138711 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49166 | /* 138715 */ // (vselect:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src0) => (VMOVDQU8Z256rrk:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src0, VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src1) |
| 49167 | /* 138715 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Z256rrk), |
| 49168 | /* 138718 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49169 | /* 138720 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49170 | /* 138722 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49171 | /* 138724 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49172 | /* 138726 */ GIR_RootConstrainSelectedInstOperands, |
| 49173 | /* 138727 */ // GIR_Coverage, 4560, |
| 49174 | /* 138727 */ GIR_EraseRootFromParent_Done, |
| 49175 | /* 138728 */ // Label 3013: @138728 |
| 49176 | /* 138728 */ GIM_Try, /*On fail goto*//*Label 3014*/ GIMT_Encode4(138909), // Rule ID 19795 // |
| 49177 | /* 138733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_NoVLX), |
| 49178 | /* 138736 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49179 | /* 138740 */ // (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] }) |
| 49180 | /* 138740 */ GIR_MakeTempReg, /*TempRegID*/5, /*TypeID*/GILLT_v64s8, |
| 49181 | /* 138743 */ GIR_BuildMI, /*InsnID*/6, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49182 | /* 138747 */ GIR_AddTempRegister, /*InsnID*/6, /*TempRegID*/5, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49183 | /* 138752 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/6, |
| 49184 | /* 138754 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v64s8, |
| 49185 | /* 138757 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49186 | /* 138761 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49187 | /* 138766 */ GIR_AddSimpleTempRegister, /*InsnID*/5, /*TempRegID*/5, |
| 49188 | /* 138769 */ GIR_Copy, /*NewInsnID*/5, /*OldInsnID*/0, /*OpIdx*/2, // src1 |
| 49189 | /* 138773 */ GIR_AddImm8, /*InsnID*/5, /*Imm*/10, |
| 49190 | /* 138776 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49191 | /* 138781 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49192 | /* 138786 */ GIR_ConstrainOperandRC, /*InsnID*/5, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49193 | /* 138791 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v64s1, |
| 49194 | /* 138794 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49195 | /* 138798 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49196 | /* 138803 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // mask |
| 49197 | /* 138807 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VK64WMRegClassID), |
| 49198 | /* 138812 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 49199 | /* 138815 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 49200 | /* 138819 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49201 | /* 138824 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 49202 | /* 138826 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 49203 | /* 138829 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 49204 | /* 138833 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49205 | /* 138838 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 49206 | /* 138841 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // src0 |
| 49207 | /* 138845 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 49208 | /* 138848 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 49209 | /* 138853 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49210 | /* 138858 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 49211 | /* 138863 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 49212 | /* 138866 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrk), |
| 49213 | /* 138870 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 49214 | /* 138875 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 49215 | /* 138878 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 49216 | /* 138881 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/4, |
| 49217 | /* 138884 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 49218 | /* 138886 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 49219 | /* 138889 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49220 | /* 138891 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 49221 | /* 138898 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 49222 | /* 138903 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 49223 | /* 138908 */ // GIR_Coverage, 19795, |
| 49224 | /* 138908 */ GIR_EraseRootFromParent_Done, |
| 49225 | /* 138909 */ // Label 3014: @138909 |
| 49226 | /* 138909 */ GIM_Reject, |
| 49227 | /* 138910 */ // Label 3010: @138910 |
| 49228 | /* 138910 */ GIM_Reject, |
| 49229 | /* 138911 */ // Label 2924: @138911 |
| 49230 | /* 138911 */ GIM_Try, /*On fail goto*//*Label 3015*/ GIMT_Encode4(139328), |
| 49231 | /* 138916 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 49232 | /* 138919 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 49233 | /* 138922 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 49234 | /* 138925 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49235 | /* 138929 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32WMRegClassID), |
| 49236 | /* 138933 */ GIM_Try, /*On fail goto*//*Label 3016*/ GIMT_Encode4(139004), // Rule ID 19856 // |
| 49237 | /* 138938 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49238 | /* 138941 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49239 | /* 138945 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49240 | /* 138949 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49241 | /* 138952 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49242 | /* 138956 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49243 | /* 138960 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 49244 | /* 138964 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 49245 | /* 138968 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49246 | /* 138974 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 49247 | /* 138976 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 49248 | /* 138978 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49249 | /* 138985 */ // (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) |
| 49250 | /* 138985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrmkz), |
| 49251 | /* 138988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49252 | /* 138990 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49253 | /* 138992 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49254 | /* 138996 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 49255 | /* 139002 */ GIR_RootConstrainSelectedInstOperands, |
| 49256 | /* 139003 */ // GIR_Coverage, 19856, |
| 49257 | /* 139003 */ GIR_EraseRootFromParent_Done, |
| 49258 | /* 139004 */ // Label 3016: @139004 |
| 49259 | /* 139004 */ GIM_Try, /*On fail goto*//*Label 3017*/ GIMT_Encode4(139071), // Rule ID 19858 // |
| 49260 | /* 139009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49261 | /* 139012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49262 | /* 139016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49263 | /* 139020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49264 | /* 139023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49265 | /* 139027 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49266 | /* 139031 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/0, /*OpIdx*/3, // MIs[2] |
| 49267 | /* 139035 */ GIM_CheckOpcodeIsEither, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49268 | /* 139041 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/2, |
| 49269 | /* 139043 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 49270 | /* 139045 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49271 | /* 139052 */ // (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) |
| 49272 | /* 139052 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrmkz), |
| 49273 | /* 139055 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49274 | /* 139057 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49275 | /* 139059 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49276 | /* 139063 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 49277 | /* 139069 */ GIR_RootConstrainSelectedInstOperands, |
| 49278 | /* 139070 */ // GIR_Coverage, 19858, |
| 49279 | /* 139070 */ GIR_EraseRootFromParent_Done, |
| 49280 | /* 139071 */ // Label 3017: @139071 |
| 49281 | /* 139071 */ GIM_Try, /*On fail goto*//*Label 3018*/ GIMT_Encode4(139135), // Rule ID 19855 // |
| 49282 | /* 139076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49283 | /* 139079 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49284 | /* 139083 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49285 | /* 139087 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49286 | /* 139090 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49287 | /* 139094 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49288 | /* 139098 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_alignedload), |
| 49289 | /* 139102 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49290 | /* 139106 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49291 | /* 139108 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49292 | /* 139115 */ // (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) |
| 49293 | /* 139115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrmk), |
| 49294 | /* 139118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49295 | /* 139120 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49296 | /* 139122 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49297 | /* 139124 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49298 | /* 139128 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49299 | /* 139133 */ GIR_RootConstrainSelectedInstOperands, |
| 49300 | /* 139134 */ // GIR_Coverage, 19855, |
| 49301 | /* 139134 */ GIR_EraseRootFromParent_Done, |
| 49302 | /* 139135 */ // Label 3018: @139135 |
| 49303 | /* 139135 */ GIM_Try, /*On fail goto*//*Label 3019*/ GIMT_Encode4(139195), // Rule ID 19857 // |
| 49304 | /* 139140 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49305 | /* 139143 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49306 | /* 139147 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49307 | /* 139151 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49308 | /* 139154 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49309 | /* 139158 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49310 | /* 139162 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49311 | /* 139166 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49312 | /* 139168 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49313 | /* 139175 */ // (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) |
| 49314 | /* 139175 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrmk), |
| 49315 | /* 139178 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49316 | /* 139180 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49317 | /* 139182 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49318 | /* 139184 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 49319 | /* 139188 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49320 | /* 139193 */ GIR_RootConstrainSelectedInstOperands, |
| 49321 | /* 139194 */ // GIR_Coverage, 19857, |
| 49322 | /* 139194 */ GIR_EraseRootFromParent_Done, |
| 49323 | /* 139195 */ // Label 3019: @139195 |
| 49324 | /* 139195 */ GIM_Try, /*On fail goto*//*Label 3020*/ GIMT_Encode4(139232), // Rule ID 4567 // |
| 49325 | /* 139200 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49326 | /* 139203 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49327 | /* 139207 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49328 | /* 139211 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49329 | /* 139217 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49330 | /* 139219 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49331 | /* 139221 */ // (vselect:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src, immAllZerosV:{ *:[v32i16] }) => (VMOVDQU16Zrrkz:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src) |
| 49332 | /* 139221 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 49333 | /* 139224 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49334 | /* 139226 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49335 | /* 139228 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49336 | /* 139230 */ GIR_RootConstrainSelectedInstOperands, |
| 49337 | /* 139231 */ // GIR_Coverage, 4567, |
| 49338 | /* 139231 */ GIR_EraseRootFromParent_Done, |
| 49339 | /* 139232 */ // Label 3020: @139232 |
| 49340 | /* 139232 */ GIM_Try, /*On fail goto*//*Label 3021*/ GIMT_Encode4(139269), // Rule ID 19854 // |
| 49341 | /* 139237 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49342 | /* 139240 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49343 | /* 139244 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49344 | /* 139248 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49345 | /* 139254 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49346 | /* 139256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49347 | /* 139258 */ // (vselect:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32f16] }:$src1, immAllZerosV:{ *:[v32f16] }) => (VMOVDQU16Zrrkz:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32f16] }:$src1) |
| 49348 | /* 139258 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrkz), |
| 49349 | /* 139261 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49350 | /* 139263 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49351 | /* 139265 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49352 | /* 139267 */ GIR_RootConstrainSelectedInstOperands, |
| 49353 | /* 139268 */ // GIR_Coverage, 19854, |
| 49354 | /* 139268 */ GIR_EraseRootFromParent_Done, |
| 49355 | /* 139269 */ // Label 3021: @139269 |
| 49356 | /* 139269 */ GIM_Try, /*On fail goto*//*Label 3022*/ GIMT_Encode4(139298), // Rule ID 4568 // |
| 49357 | /* 139274 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49358 | /* 139277 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49359 | /* 139281 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49360 | /* 139285 */ // (vselect:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src0) => (VMOVDQU16Zrrk:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src0, VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src1) |
| 49361 | /* 139285 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 49362 | /* 139288 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49363 | /* 139290 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49364 | /* 139292 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49365 | /* 139294 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49366 | /* 139296 */ GIR_RootConstrainSelectedInstOperands, |
| 49367 | /* 139297 */ // GIR_Coverage, 4568, |
| 49368 | /* 139297 */ GIR_EraseRootFromParent_Done, |
| 49369 | /* 139298 */ // Label 3022: @139298 |
| 49370 | /* 139298 */ GIM_Try, /*On fail goto*//*Label 3023*/ GIMT_Encode4(139327), // Rule ID 19853 // |
| 49371 | /* 139303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49372 | /* 139306 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49373 | /* 139310 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49374 | /* 139314 */ // (vselect:{ *:[v32f16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src0) => (VMOVDQU16Zrrk:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src0, VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32f16] }:$src1) |
| 49375 | /* 139314 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU16Zrrk), |
| 49376 | /* 139317 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49377 | /* 139319 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49378 | /* 139321 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49379 | /* 139323 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49380 | /* 139325 */ GIR_RootConstrainSelectedInstOperands, |
| 49381 | /* 139326 */ // GIR_Coverage, 19853, |
| 49382 | /* 139326 */ GIR_EraseRootFromParent_Done, |
| 49383 | /* 139327 */ // Label 3023: @139327 |
| 49384 | /* 139327 */ GIM_Reject, |
| 49385 | /* 139328 */ // Label 3015: @139328 |
| 49386 | /* 139328 */ GIM_Reject, |
| 49387 | /* 139329 */ // Label 2925: @139329 |
| 49388 | /* 139329 */ GIM_Try, /*On fail goto*//*Label 3024*/ GIMT_Encode4(139414), |
| 49389 | /* 139334 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 49390 | /* 139337 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 49391 | /* 139340 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v64s8, |
| 49392 | /* 139343 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49393 | /* 139347 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64WMRegClassID), |
| 49394 | /* 139351 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49395 | /* 139355 */ GIM_Try, /*On fail goto*//*Label 3025*/ GIMT_Encode4(139388), // Rule ID 4555 // |
| 49396 | /* 139360 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49397 | /* 139363 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 49398 | /* 139367 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 49399 | /* 139373 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 49400 | /* 139375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49401 | /* 139377 */ // (vselect:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src, immAllZerosV:{ *:[v64i8] }) => (VMOVDQU8Zrrkz:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src) |
| 49402 | /* 139377 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrkz), |
| 49403 | /* 139380 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49404 | /* 139382 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49405 | /* 139384 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 49406 | /* 139386 */ GIR_RootConstrainSelectedInstOperands, |
| 49407 | /* 139387 */ // GIR_Coverage, 4555, |
| 49408 | /* 139387 */ GIR_EraseRootFromParent_Done, |
| 49409 | /* 139388 */ // Label 3025: @139388 |
| 49410 | /* 139388 */ GIM_Try, /*On fail goto*//*Label 3026*/ GIMT_Encode4(139413), // Rule ID 4556 // |
| 49411 | /* 139393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49412 | /* 139396 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49413 | /* 139400 */ // (vselect:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src0) => (VMOVDQU8Zrrk:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src0, VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src1) |
| 49414 | /* 139400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMOVDQU8Zrrk), |
| 49415 | /* 139403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49416 | /* 139405 */ GIR_RootToRootCopy, /*OpIdx*/3, // src0 |
| 49417 | /* 139407 */ GIR_RootToRootCopy, /*OpIdx*/1, // mask |
| 49418 | /* 139409 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49419 | /* 139411 */ GIR_RootConstrainSelectedInstOperands, |
| 49420 | /* 139412 */ // GIR_Coverage, 4556, |
| 49421 | /* 139412 */ GIR_EraseRootFromParent_Done, |
| 49422 | /* 139413 */ // Label 3026: @139413 |
| 49423 | /* 139413 */ GIM_Reject, |
| 49424 | /* 139414 */ // Label 3024: @139414 |
| 49425 | /* 139414 */ GIM_Reject, |
| 49426 | /* 139415 */ // Label 2926: @139415 |
| 49427 | /* 139415 */ GIM_Reject, |
| 49428 | /* 139416 */ // Label 36: @139416 |
| 49429 | /* 139416 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(23), /*)*//*default:*//*Label 3030*/ GIMT_Encode4(140280), |
| 49430 | /* 139427 */ /*GILLT_v8s16*//*Label 3027*/ GIMT_Encode4(139467), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 49431 | /* 139447 */ /*GILLT_v16s16*//*Label 3028*/ GIMT_Encode4(139809), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 49432 | /* 139463 */ /*GILLT_v32s16*//*Label 3029*/ GIMT_Encode4(140124), |
| 49433 | /* 139467 */ // Label 3027: @139467 |
| 49434 | /* 139467 */ GIM_Try, /*On fail goto*//*Label 3031*/ GIMT_Encode4(139808), |
| 49435 | /* 139472 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 49436 | /* 139475 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 49437 | /* 139478 */ GIM_Try, /*On fail goto*//*Label 3032*/ GIMT_Encode4(139540), // Rule ID 23538 // |
| 49438 | /* 139483 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49439 | /* 139486 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49440 | /* 139490 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49441 | /* 139494 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49442 | /* 139498 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49443 | /* 139501 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49444 | /* 139505 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49445 | /* 139509 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49446 | /* 139513 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49447 | /* 139515 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49448 | /* 139522 */ // (mulhu:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMULHUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49449 | /* 139522 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWrm), |
| 49450 | /* 139525 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49451 | /* 139527 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49452 | /* 139529 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49453 | /* 139533 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49454 | /* 139538 */ GIR_RootConstrainSelectedInstOperands, |
| 49455 | /* 139539 */ // GIR_Coverage, 23538, |
| 49456 | /* 139539 */ GIR_EraseRootFromParent_Done, |
| 49457 | /* 139540 */ // Label 3032: @139540 |
| 49458 | /* 139540 */ GIM_Try, /*On fail goto*//*Label 3033*/ GIMT_Encode4(139602), // Rule ID 23928 // |
| 49459 | /* 139545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49460 | /* 139548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49461 | /* 139552 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49462 | /* 139556 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49463 | /* 139560 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49464 | /* 139563 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49465 | /* 139567 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49466 | /* 139571 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49467 | /* 139575 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49468 | /* 139577 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49469 | /* 139584 */ // (mulhu:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMULHUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49470 | /* 139584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ128rm), |
| 49471 | /* 139587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49472 | /* 139589 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49473 | /* 139591 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49474 | /* 139595 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49475 | /* 139600 */ GIR_RootConstrainSelectedInstOperands, |
| 49476 | /* 139601 */ // GIR_Coverage, 23928, |
| 49477 | /* 139601 */ GIR_EraseRootFromParent_Done, |
| 49478 | /* 139602 */ // Label 3033: @139602 |
| 49479 | /* 139602 */ GIM_Try, /*On fail goto*//*Label 3034*/ GIMT_Encode4(139664), // Rule ID 2577 // |
| 49480 | /* 139607 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49481 | /* 139610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49482 | /* 139614 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49483 | /* 139618 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49484 | /* 139622 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49485 | /* 139626 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49486 | /* 139629 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49487 | /* 139633 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49488 | /* 139637 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49489 | /* 139639 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49490 | /* 139646 */ // (mulhu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49491 | /* 139646 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWrm), |
| 49492 | /* 139649 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49493 | /* 139651 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49494 | /* 139653 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49495 | /* 139657 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49496 | /* 139662 */ GIR_RootConstrainSelectedInstOperands, |
| 49497 | /* 139663 */ // GIR_Coverage, 2577, |
| 49498 | /* 139663 */ GIR_EraseRootFromParent_Done, |
| 49499 | /* 139664 */ // Label 3034: @139664 |
| 49500 | /* 139664 */ GIM_Try, /*On fail goto*//*Label 3035*/ GIMT_Encode4(139726), // Rule ID 5066 // |
| 49501 | /* 139669 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49502 | /* 139672 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49503 | /* 139676 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49504 | /* 139680 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49505 | /* 139684 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49506 | /* 139688 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49507 | /* 139691 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49508 | /* 139695 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49509 | /* 139699 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49510 | /* 139701 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49511 | /* 139708 */ // (mulhu:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49512 | /* 139708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ128rm), |
| 49513 | /* 139711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49514 | /* 139713 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49515 | /* 139715 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49516 | /* 139719 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49517 | /* 139724 */ GIR_RootConstrainSelectedInstOperands, |
| 49518 | /* 139725 */ // GIR_Coverage, 5066, |
| 49519 | /* 139725 */ GIR_EraseRootFromParent_Done, |
| 49520 | /* 139726 */ // Label 3035: @139726 |
| 49521 | /* 139726 */ GIM_Try, /*On fail goto*//*Label 3036*/ GIMT_Encode4(139753), // Rule ID 2576 // |
| 49522 | /* 139731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49523 | /* 139734 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49524 | /* 139738 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49525 | /* 139742 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49526 | /* 139746 */ // (mulhu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMULHUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 49527 | /* 139746 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWrr), |
| 49528 | /* 139751 */ GIR_RootConstrainSelectedInstOperands, |
| 49529 | /* 139752 */ // GIR_Coverage, 2576, |
| 49530 | /* 139752 */ GIR_Done, |
| 49531 | /* 139753 */ // Label 3036: @139753 |
| 49532 | /* 139753 */ GIM_Try, /*On fail goto*//*Label 3037*/ GIMT_Encode4(139780), // Rule ID 2578 // |
| 49533 | /* 139758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 49534 | /* 139761 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49535 | /* 139765 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49536 | /* 139769 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49537 | /* 139773 */ // (mulhu:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMULHUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 49538 | /* 139773 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMULHUWrr), |
| 49539 | /* 139778 */ GIR_RootConstrainSelectedInstOperands, |
| 49540 | /* 139779 */ // GIR_Coverage, 2578, |
| 49541 | /* 139779 */ GIR_Done, |
| 49542 | /* 139780 */ // Label 3037: @139780 |
| 49543 | /* 139780 */ GIM_Try, /*On fail goto*//*Label 3038*/ GIMT_Encode4(139807), // Rule ID 5063 // |
| 49544 | /* 139785 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49545 | /* 139788 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49546 | /* 139792 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49547 | /* 139796 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49548 | /* 139800 */ // (mulhu:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMULHUWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 49549 | /* 139800 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ128rr), |
| 49550 | /* 139805 */ GIR_RootConstrainSelectedInstOperands, |
| 49551 | /* 139806 */ // GIR_Coverage, 5063, |
| 49552 | /* 139806 */ GIR_Done, |
| 49553 | /* 139807 */ // Label 3038: @139807 |
| 49554 | /* 139807 */ GIM_Reject, |
| 49555 | /* 139808 */ // Label 3031: @139808 |
| 49556 | /* 139808 */ GIM_Reject, |
| 49557 | /* 139809 */ // Label 3028: @139809 |
| 49558 | /* 139809 */ GIM_Try, /*On fail goto*//*Label 3039*/ GIMT_Encode4(140123), |
| 49559 | /* 139814 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 49560 | /* 139817 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 49561 | /* 139820 */ GIM_Try, /*On fail goto*//*Label 3040*/ GIMT_Encode4(139882), // Rule ID 23540 // |
| 49562 | /* 139825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 49563 | /* 139828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49564 | /* 139832 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49565 | /* 139836 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49566 | /* 139840 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49567 | /* 139843 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49568 | /* 139847 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49569 | /* 139851 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49570 | /* 139855 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49571 | /* 139857 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49572 | /* 139864 */ // (mulhu:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMULHUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49573 | /* 139864 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWYrm), |
| 49574 | /* 139867 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49575 | /* 139869 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49576 | /* 139871 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49577 | /* 139875 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49578 | /* 139880 */ GIR_RootConstrainSelectedInstOperands, |
| 49579 | /* 139881 */ // GIR_Coverage, 23540, |
| 49580 | /* 139881 */ GIR_EraseRootFromParent_Done, |
| 49581 | /* 139882 */ // Label 3040: @139882 |
| 49582 | /* 139882 */ GIM_Try, /*On fail goto*//*Label 3041*/ GIMT_Encode4(139944), // Rule ID 23925 // |
| 49583 | /* 139887 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49584 | /* 139890 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49585 | /* 139894 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49586 | /* 139898 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49587 | /* 139902 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49588 | /* 139905 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49589 | /* 139909 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49590 | /* 139913 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49591 | /* 139917 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49592 | /* 139919 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49593 | /* 139926 */ // (mulhu:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMULHUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49594 | /* 139926 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ256rm), |
| 49595 | /* 139929 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49596 | /* 139931 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49597 | /* 139933 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49598 | /* 139937 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49599 | /* 139942 */ GIR_RootConstrainSelectedInstOperands, |
| 49600 | /* 139943 */ // GIR_Coverage, 23925, |
| 49601 | /* 139943 */ GIR_EraseRootFromParent_Done, |
| 49602 | /* 139944 */ // Label 3041: @139944 |
| 49603 | /* 139944 */ GIM_Try, /*On fail goto*//*Label 3042*/ GIMT_Encode4(140006), // Rule ID 2581 // |
| 49604 | /* 139949 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 49605 | /* 139952 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49606 | /* 139956 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49607 | /* 139960 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49608 | /* 139964 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49609 | /* 139968 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49610 | /* 139971 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49611 | /* 139975 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49612 | /* 139979 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49613 | /* 139981 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49614 | /* 139988 */ // (mulhu:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49615 | /* 139988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWYrm), |
| 49616 | /* 139991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49617 | /* 139993 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49618 | /* 139995 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49619 | /* 139999 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49620 | /* 140004 */ GIR_RootConstrainSelectedInstOperands, |
| 49621 | /* 140005 */ // GIR_Coverage, 2581, |
| 49622 | /* 140005 */ GIR_EraseRootFromParent_Done, |
| 49623 | /* 140006 */ // Label 3042: @140006 |
| 49624 | /* 140006 */ GIM_Try, /*On fail goto*//*Label 3043*/ GIMT_Encode4(140068), // Rule ID 5060 // |
| 49625 | /* 140011 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49626 | /* 140014 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49627 | /* 140018 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49628 | /* 140022 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49629 | /* 140026 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49630 | /* 140030 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49631 | /* 140033 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49632 | /* 140037 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49633 | /* 140041 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49634 | /* 140043 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49635 | /* 140050 */ // (mulhu:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49636 | /* 140050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ256rm), |
| 49637 | /* 140053 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49638 | /* 140055 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49639 | /* 140057 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49640 | /* 140061 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49641 | /* 140066 */ GIR_RootConstrainSelectedInstOperands, |
| 49642 | /* 140067 */ // GIR_Coverage, 5060, |
| 49643 | /* 140067 */ GIR_EraseRootFromParent_Done, |
| 49644 | /* 140068 */ // Label 3043: @140068 |
| 49645 | /* 140068 */ GIM_Try, /*On fail goto*//*Label 3044*/ GIMT_Encode4(140095), // Rule ID 2580 // |
| 49646 | /* 140073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 49647 | /* 140076 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49648 | /* 140080 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49649 | /* 140084 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49650 | /* 140088 */ // (mulhu:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMULHUWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 49651 | /* 140088 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWYrr), |
| 49652 | /* 140093 */ GIR_RootConstrainSelectedInstOperands, |
| 49653 | /* 140094 */ // GIR_Coverage, 2580, |
| 49654 | /* 140094 */ GIR_Done, |
| 49655 | /* 140095 */ // Label 3044: @140095 |
| 49656 | /* 140095 */ GIM_Try, /*On fail goto*//*Label 3045*/ GIMT_Encode4(140122), // Rule ID 5057 // |
| 49657 | /* 140100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49658 | /* 140103 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49659 | /* 140107 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49660 | /* 140111 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49661 | /* 140115 */ // (mulhu:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMULHUWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 49662 | /* 140115 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZ256rr), |
| 49663 | /* 140120 */ GIR_RootConstrainSelectedInstOperands, |
| 49664 | /* 140121 */ // GIR_Coverage, 5057, |
| 49665 | /* 140121 */ GIR_Done, |
| 49666 | /* 140122 */ // Label 3045: @140122 |
| 49667 | /* 140122 */ GIM_Reject, |
| 49668 | /* 140123 */ // Label 3039: @140123 |
| 49669 | /* 140123 */ GIM_Reject, |
| 49670 | /* 140124 */ // Label 3029: @140124 |
| 49671 | /* 140124 */ GIM_Try, /*On fail goto*//*Label 3046*/ GIMT_Encode4(140279), |
| 49672 | /* 140129 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 49673 | /* 140132 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 49674 | /* 140135 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49675 | /* 140139 */ GIM_Try, /*On fail goto*//*Label 3047*/ GIMT_Encode4(140197), // Rule ID 23922 // |
| 49676 | /* 140144 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49677 | /* 140147 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49678 | /* 140151 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49679 | /* 140155 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49680 | /* 140158 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49681 | /* 140162 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49682 | /* 140166 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49683 | /* 140170 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49684 | /* 140172 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49685 | /* 140179 */ // (mulhu:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMULHUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49686 | /* 140179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZrm), |
| 49687 | /* 140182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49688 | /* 140184 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49689 | /* 140186 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49690 | /* 140190 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49691 | /* 140195 */ GIR_RootConstrainSelectedInstOperands, |
| 49692 | /* 140196 */ // GIR_Coverage, 23922, |
| 49693 | /* 140196 */ GIR_EraseRootFromParent_Done, |
| 49694 | /* 140197 */ // Label 3047: @140197 |
| 49695 | /* 140197 */ GIM_Try, /*On fail goto*//*Label 3048*/ GIMT_Encode4(140255), // Rule ID 5054 // |
| 49696 | /* 140202 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49697 | /* 140205 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49698 | /* 140209 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49699 | /* 140213 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49700 | /* 140217 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49701 | /* 140220 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49702 | /* 140224 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49703 | /* 140228 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49704 | /* 140230 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49705 | /* 140237 */ // (mulhu:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49706 | /* 140237 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZrm), |
| 49707 | /* 140240 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49708 | /* 140242 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49709 | /* 140244 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49710 | /* 140248 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49711 | /* 140253 */ GIR_RootConstrainSelectedInstOperands, |
| 49712 | /* 140254 */ // GIR_Coverage, 5054, |
| 49713 | /* 140254 */ GIR_EraseRootFromParent_Done, |
| 49714 | /* 140255 */ // Label 3048: @140255 |
| 49715 | /* 140255 */ GIM_Try, /*On fail goto*//*Label 3049*/ GIMT_Encode4(140278), // Rule ID 5051 // |
| 49716 | /* 140260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49717 | /* 140263 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49718 | /* 140267 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49719 | /* 140271 */ // (mulhu:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMULHUWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 49720 | /* 140271 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHUWZrr), |
| 49721 | /* 140276 */ GIR_RootConstrainSelectedInstOperands, |
| 49722 | /* 140277 */ // GIR_Coverage, 5051, |
| 49723 | /* 140277 */ GIR_Done, |
| 49724 | /* 140278 */ // Label 3049: @140278 |
| 49725 | /* 140278 */ GIM_Reject, |
| 49726 | /* 140279 */ // Label 3046: @140279 |
| 49727 | /* 140279 */ GIM_Reject, |
| 49728 | /* 140280 */ // Label 3030: @140280 |
| 49729 | /* 140280 */ GIM_Reject, |
| 49730 | /* 140281 */ // Label 37: @140281 |
| 49731 | /* 140281 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(23), /*)*//*default:*//*Label 3053*/ GIMT_Encode4(141145), |
| 49732 | /* 140292 */ /*GILLT_v8s16*//*Label 3050*/ GIMT_Encode4(140332), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 49733 | /* 140312 */ /*GILLT_v16s16*//*Label 3051*/ GIMT_Encode4(140674), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 49734 | /* 140328 */ /*GILLT_v32s16*//*Label 3052*/ GIMT_Encode4(140989), |
| 49735 | /* 140332 */ // Label 3050: @140332 |
| 49736 | /* 140332 */ GIM_Try, /*On fail goto*//*Label 3054*/ GIMT_Encode4(140673), |
| 49737 | /* 140337 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 49738 | /* 140340 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 49739 | /* 140343 */ GIM_Try, /*On fail goto*//*Label 3055*/ GIMT_Encode4(140405), // Rule ID 23541 // |
| 49740 | /* 140348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49741 | /* 140351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49742 | /* 140355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49743 | /* 140359 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49744 | /* 140363 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49745 | /* 140366 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49746 | /* 140370 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49747 | /* 140374 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49748 | /* 140378 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49749 | /* 140380 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49750 | /* 140387 */ // (mulhs:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMULHWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49751 | /* 140387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWrm), |
| 49752 | /* 140390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49753 | /* 140392 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49754 | /* 140394 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49755 | /* 140398 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49756 | /* 140403 */ GIR_RootConstrainSelectedInstOperands, |
| 49757 | /* 140404 */ // GIR_Coverage, 23541, |
| 49758 | /* 140404 */ GIR_EraseRootFromParent_Done, |
| 49759 | /* 140405 */ // Label 3055: @140405 |
| 49760 | /* 140405 */ GIM_Try, /*On fail goto*//*Label 3056*/ GIMT_Encode4(140467), // Rule ID 23919 // |
| 49761 | /* 140410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49762 | /* 140413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49763 | /* 140417 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49764 | /* 140421 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49765 | /* 140425 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49766 | /* 140428 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49767 | /* 140432 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49768 | /* 140436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49769 | /* 140440 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49770 | /* 140442 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49771 | /* 140449 */ // (mulhs:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMULHWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49772 | /* 140449 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ128rm), |
| 49773 | /* 140452 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49774 | /* 140454 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49775 | /* 140456 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49776 | /* 140460 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49777 | /* 140465 */ GIR_RootConstrainSelectedInstOperands, |
| 49778 | /* 140466 */ // GIR_Coverage, 23919, |
| 49779 | /* 140466 */ GIR_EraseRootFromParent_Done, |
| 49780 | /* 140467 */ // Label 3056: @140467 |
| 49781 | /* 140467 */ GIM_Try, /*On fail goto*//*Label 3057*/ GIMT_Encode4(140529), // Rule ID 2583 // |
| 49782 | /* 140472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49783 | /* 140475 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49784 | /* 140479 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49785 | /* 140483 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49786 | /* 140487 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49787 | /* 140491 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49788 | /* 140494 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49789 | /* 140498 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49790 | /* 140502 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49791 | /* 140504 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49792 | /* 140511 */ // (mulhs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49793 | /* 140511 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWrm), |
| 49794 | /* 140514 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49795 | /* 140516 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49796 | /* 140518 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49797 | /* 140522 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49798 | /* 140527 */ GIR_RootConstrainSelectedInstOperands, |
| 49799 | /* 140528 */ // GIR_Coverage, 2583, |
| 49800 | /* 140528 */ GIR_EraseRootFromParent_Done, |
| 49801 | /* 140529 */ // Label 3057: @140529 |
| 49802 | /* 140529 */ GIM_Try, /*On fail goto*//*Label 3058*/ GIMT_Encode4(140591), // Rule ID 5048 // |
| 49803 | /* 140534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49804 | /* 140537 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49805 | /* 140541 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49806 | /* 140545 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49807 | /* 140549 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49808 | /* 140553 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49809 | /* 140556 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49810 | /* 140560 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49811 | /* 140564 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49812 | /* 140566 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49813 | /* 140573 */ // (mulhs:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49814 | /* 140573 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ128rm), |
| 49815 | /* 140576 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49816 | /* 140578 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49817 | /* 140580 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49818 | /* 140584 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49819 | /* 140589 */ GIR_RootConstrainSelectedInstOperands, |
| 49820 | /* 140590 */ // GIR_Coverage, 5048, |
| 49821 | /* 140590 */ GIR_EraseRootFromParent_Done, |
| 49822 | /* 140591 */ // Label 3058: @140591 |
| 49823 | /* 140591 */ GIM_Try, /*On fail goto*//*Label 3059*/ GIMT_Encode4(140618), // Rule ID 2582 // |
| 49824 | /* 140596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 49825 | /* 140599 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49826 | /* 140603 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49827 | /* 140607 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49828 | /* 140611 */ // (mulhs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMULHWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 49829 | /* 140611 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWrr), |
| 49830 | /* 140616 */ GIR_RootConstrainSelectedInstOperands, |
| 49831 | /* 140617 */ // GIR_Coverage, 2582, |
| 49832 | /* 140617 */ GIR_Done, |
| 49833 | /* 140618 */ // Label 3059: @140618 |
| 49834 | /* 140618 */ GIM_Try, /*On fail goto*//*Label 3060*/ GIMT_Encode4(140645), // Rule ID 2584 // |
| 49835 | /* 140623 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 49836 | /* 140626 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49837 | /* 140630 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49838 | /* 140634 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 49839 | /* 140638 */ // (mulhs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMULHWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 49840 | /* 140638 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMULHWrr), |
| 49841 | /* 140643 */ GIR_RootConstrainSelectedInstOperands, |
| 49842 | /* 140644 */ // GIR_Coverage, 2584, |
| 49843 | /* 140644 */ GIR_Done, |
| 49844 | /* 140645 */ // Label 3060: @140645 |
| 49845 | /* 140645 */ GIM_Try, /*On fail goto*//*Label 3061*/ GIMT_Encode4(140672), // Rule ID 5045 // |
| 49846 | /* 140650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49847 | /* 140653 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49848 | /* 140657 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49849 | /* 140661 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 49850 | /* 140665 */ // (mulhs:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMULHWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 49851 | /* 140665 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ128rr), |
| 49852 | /* 140670 */ GIR_RootConstrainSelectedInstOperands, |
| 49853 | /* 140671 */ // GIR_Coverage, 5045, |
| 49854 | /* 140671 */ GIR_Done, |
| 49855 | /* 140672 */ // Label 3061: @140672 |
| 49856 | /* 140672 */ GIM_Reject, |
| 49857 | /* 140673 */ // Label 3054: @140673 |
| 49858 | /* 140673 */ GIM_Reject, |
| 49859 | /* 140674 */ // Label 3051: @140674 |
| 49860 | /* 140674 */ GIM_Try, /*On fail goto*//*Label 3062*/ GIMT_Encode4(140988), |
| 49861 | /* 140679 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 49862 | /* 140682 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 49863 | /* 140685 */ GIM_Try, /*On fail goto*//*Label 3063*/ GIMT_Encode4(140747), // Rule ID 23543 // |
| 49864 | /* 140690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 49865 | /* 140693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49866 | /* 140697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49867 | /* 140701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49868 | /* 140705 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49869 | /* 140708 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49870 | /* 140712 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49871 | /* 140716 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49872 | /* 140720 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49873 | /* 140722 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49874 | /* 140729 */ // (mulhs:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMULHWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49875 | /* 140729 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWYrm), |
| 49876 | /* 140732 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49877 | /* 140734 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49878 | /* 140736 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49879 | /* 140740 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49880 | /* 140745 */ GIR_RootConstrainSelectedInstOperands, |
| 49881 | /* 140746 */ // GIR_Coverage, 23543, |
| 49882 | /* 140746 */ GIR_EraseRootFromParent_Done, |
| 49883 | /* 140747 */ // Label 3063: @140747 |
| 49884 | /* 140747 */ GIM_Try, /*On fail goto*//*Label 3064*/ GIMT_Encode4(140809), // Rule ID 23916 // |
| 49885 | /* 140752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49886 | /* 140755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49887 | /* 140759 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49888 | /* 140763 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49889 | /* 140767 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49890 | /* 140770 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49891 | /* 140774 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49892 | /* 140778 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49893 | /* 140782 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49894 | /* 140784 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49895 | /* 140791 */ // (mulhs:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMULHWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49896 | /* 140791 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ256rm), |
| 49897 | /* 140794 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49898 | /* 140796 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49899 | /* 140798 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49900 | /* 140802 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49901 | /* 140807 */ GIR_RootConstrainSelectedInstOperands, |
| 49902 | /* 140808 */ // GIR_Coverage, 23916, |
| 49903 | /* 140808 */ GIR_EraseRootFromParent_Done, |
| 49904 | /* 140809 */ // Label 3064: @140809 |
| 49905 | /* 140809 */ GIM_Try, /*On fail goto*//*Label 3065*/ GIMT_Encode4(140871), // Rule ID 2587 // |
| 49906 | /* 140814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 49907 | /* 140817 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49908 | /* 140821 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49909 | /* 140825 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49910 | /* 140829 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49911 | /* 140833 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49912 | /* 140836 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49913 | /* 140840 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49914 | /* 140844 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49915 | /* 140846 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49916 | /* 140853 */ // (mulhs:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49917 | /* 140853 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWYrm), |
| 49918 | /* 140856 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49919 | /* 140858 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49920 | /* 140860 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49921 | /* 140864 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49922 | /* 140869 */ GIR_RootConstrainSelectedInstOperands, |
| 49923 | /* 140870 */ // GIR_Coverage, 2587, |
| 49924 | /* 140870 */ GIR_EraseRootFromParent_Done, |
| 49925 | /* 140871 */ // Label 3065: @140871 |
| 49926 | /* 140871 */ GIM_Try, /*On fail goto*//*Label 3066*/ GIMT_Encode4(140933), // Rule ID 5042 // |
| 49927 | /* 140876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49928 | /* 140879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49929 | /* 140883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49930 | /* 140887 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 49931 | /* 140891 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49932 | /* 140895 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49933 | /* 140898 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49934 | /* 140902 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49935 | /* 140906 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49936 | /* 140908 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49937 | /* 140915 */ // (mulhs:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49938 | /* 140915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ256rm), |
| 49939 | /* 140918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49940 | /* 140920 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 49941 | /* 140922 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49942 | /* 140926 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49943 | /* 140931 */ GIR_RootConstrainSelectedInstOperands, |
| 49944 | /* 140932 */ // GIR_Coverage, 5042, |
| 49945 | /* 140932 */ GIR_EraseRootFromParent_Done, |
| 49946 | /* 140933 */ // Label 3066: @140933 |
| 49947 | /* 140933 */ GIM_Try, /*On fail goto*//*Label 3067*/ GIMT_Encode4(140960), // Rule ID 2586 // |
| 49948 | /* 140938 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 49949 | /* 140941 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49950 | /* 140945 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49951 | /* 140949 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 49952 | /* 140953 */ // (mulhs:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMULHWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 49953 | /* 140953 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWYrr), |
| 49954 | /* 140958 */ GIR_RootConstrainSelectedInstOperands, |
| 49955 | /* 140959 */ // GIR_Coverage, 2586, |
| 49956 | /* 140959 */ GIR_Done, |
| 49957 | /* 140960 */ // Label 3067: @140960 |
| 49958 | /* 140960 */ GIM_Try, /*On fail goto*//*Label 3068*/ GIMT_Encode4(140987), // Rule ID 5039 // |
| 49959 | /* 140965 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 49960 | /* 140968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49961 | /* 140972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49962 | /* 140976 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 49963 | /* 140980 */ // (mulhs:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMULHWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 49964 | /* 140980 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWZ256rr), |
| 49965 | /* 140985 */ GIR_RootConstrainSelectedInstOperands, |
| 49966 | /* 140986 */ // GIR_Coverage, 5039, |
| 49967 | /* 140986 */ GIR_Done, |
| 49968 | /* 140987 */ // Label 3068: @140987 |
| 49969 | /* 140987 */ GIM_Reject, |
| 49970 | /* 140988 */ // Label 3062: @140988 |
| 49971 | /* 140988 */ GIM_Reject, |
| 49972 | /* 140989 */ // Label 3052: @140989 |
| 49973 | /* 140989 */ GIM_Try, /*On fail goto*//*Label 3069*/ GIMT_Encode4(141144), |
| 49974 | /* 140994 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 49975 | /* 140997 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 49976 | /* 141000 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49977 | /* 141004 */ GIM_Try, /*On fail goto*//*Label 3070*/ GIMT_Encode4(141062), // Rule ID 23913 // |
| 49978 | /* 141009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49979 | /* 141012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 49980 | /* 141016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 49981 | /* 141020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 49982 | /* 141023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 49983 | /* 141027 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 49984 | /* 141031 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 49985 | /* 141035 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 49986 | /* 141037 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 49987 | /* 141044 */ // (mulhs:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMULHWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 49988 | /* 141044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZrm), |
| 49989 | /* 141047 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 49990 | /* 141049 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 49991 | /* 141051 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 49992 | /* 141055 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 49993 | /* 141060 */ GIR_RootConstrainSelectedInstOperands, |
| 49994 | /* 141061 */ // GIR_Coverage, 23913, |
| 49995 | /* 141061 */ GIR_EraseRootFromParent_Done, |
| 49996 | /* 141062 */ // Label 3070: @141062 |
| 49997 | /* 141062 */ GIM_Try, /*On fail goto*//*Label 3071*/ GIMT_Encode4(141120), // Rule ID 5036 // |
| 49998 | /* 141067 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 49999 | /* 141070 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50000 | /* 141074 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50001 | /* 141078 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50002 | /* 141082 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50003 | /* 141085 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50004 | /* 141089 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50005 | /* 141093 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50006 | /* 141095 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50007 | /* 141102 */ // (mulhs:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMULHWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50008 | /* 141102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMULHWZrm), |
| 50009 | /* 141105 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50010 | /* 141107 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50011 | /* 141109 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50012 | /* 141113 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50013 | /* 141118 */ GIR_RootConstrainSelectedInstOperands, |
| 50014 | /* 141119 */ // GIR_Coverage, 5036, |
| 50015 | /* 141119 */ GIR_EraseRootFromParent_Done, |
| 50016 | /* 141120 */ // Label 3071: @141120 |
| 50017 | /* 141120 */ GIM_Try, /*On fail goto*//*Label 3072*/ GIMT_Encode4(141143), // Rule ID 5033 // |
| 50018 | /* 141125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50019 | /* 141128 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50020 | /* 141132 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50021 | /* 141136 */ // (mulhs:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMULHWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 50022 | /* 141136 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMULHWZrr), |
| 50023 | /* 141141 */ GIR_RootConstrainSelectedInstOperands, |
| 50024 | /* 141142 */ // GIR_Coverage, 5033, |
| 50025 | /* 141142 */ GIR_Done, |
| 50026 | /* 141143 */ // Label 3072: @141143 |
| 50027 | /* 141143 */ GIM_Reject, |
| 50028 | /* 141144 */ // Label 3069: @141144 |
| 50029 | /* 141144 */ GIM_Reject, |
| 50030 | /* 141145 */ // Label 3053: @141145 |
| 50031 | /* 141145 */ GIM_Reject, |
| 50032 | /* 141146 */ // Label 38: @141146 |
| 50033 | /* 141146 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 3079*/ GIMT_Encode4(142831), |
| 50034 | /* 141157 */ /*GILLT_v8s16*//*Label 3073*/ GIMT_Encode4(141205), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 50035 | /* 141173 */ /*GILLT_v16s8*//*Label 3074*/ GIMT_Encode4(141547), |
| 50036 | /* 141177 */ /*GILLT_v16s16*//*Label 3075*/ GIMT_Encode4(141889), GIMT_Encode4(0), GIMT_Encode4(0), |
| 50037 | /* 141189 */ /*GILLT_v32s8*//*Label 3076*/ GIMT_Encode4(142204), |
| 50038 | /* 141193 */ /*GILLT_v32s16*//*Label 3077*/ GIMT_Encode4(142519), GIMT_Encode4(0), |
| 50039 | /* 141201 */ /*GILLT_v64s8*//*Label 3078*/ GIMT_Encode4(142675), |
| 50040 | /* 141205 */ // Label 3073: @141205 |
| 50041 | /* 141205 */ GIM_Try, /*On fail goto*//*Label 3080*/ GIMT_Encode4(141546), |
| 50042 | /* 141210 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 50043 | /* 141213 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 50044 | /* 141216 */ GIM_Try, /*On fail goto*//*Label 3081*/ GIMT_Encode4(141278), // Rule ID 23532 // |
| 50045 | /* 141221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50046 | /* 141224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50047 | /* 141228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50048 | /* 141232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50049 | /* 141236 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50050 | /* 141239 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50051 | /* 141243 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50052 | /* 141247 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50053 | /* 141251 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50054 | /* 141253 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50055 | /* 141260 */ // (uaddsat:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPADDUSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50056 | /* 141260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWrm), |
| 50057 | /* 141263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50058 | /* 141265 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50059 | /* 141267 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50060 | /* 141271 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50061 | /* 141276 */ GIR_RootConstrainSelectedInstOperands, |
| 50062 | /* 141277 */ // GIR_Coverage, 23532, |
| 50063 | /* 141277 */ GIR_EraseRootFromParent_Done, |
| 50064 | /* 141278 */ // Label 3081: @141278 |
| 50065 | /* 141278 */ GIM_Try, /*On fail goto*//*Label 3082*/ GIMT_Encode4(141340), // Rule ID 23856 // |
| 50066 | /* 141283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50067 | /* 141286 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50068 | /* 141290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50069 | /* 141294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50070 | /* 141298 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50071 | /* 141301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50072 | /* 141305 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50073 | /* 141309 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50074 | /* 141313 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50075 | /* 141315 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50076 | /* 141322 */ // (uaddsat:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPADDUSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50077 | /* 141322 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ128rm), |
| 50078 | /* 141325 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50079 | /* 141327 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50080 | /* 141329 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50081 | /* 141333 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50082 | /* 141338 */ GIR_RootConstrainSelectedInstOperands, |
| 50083 | /* 141339 */ // GIR_Coverage, 23856, |
| 50084 | /* 141339 */ GIR_EraseRootFromParent_Done, |
| 50085 | /* 141340 */ // Label 3082: @141340 |
| 50086 | /* 141340 */ GIM_Try, /*On fail goto*//*Label 3083*/ GIMT_Encode4(141402), // Rule ID 2565 // |
| 50087 | /* 141345 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50088 | /* 141348 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50089 | /* 141352 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50090 | /* 141356 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50091 | /* 141360 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50092 | /* 141364 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50093 | /* 141367 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50094 | /* 141371 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50095 | /* 141375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50096 | /* 141377 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50097 | /* 141384 */ // (uaddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50098 | /* 141384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWrm), |
| 50099 | /* 141387 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50100 | /* 141389 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50101 | /* 141391 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50102 | /* 141395 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50103 | /* 141400 */ GIR_RootConstrainSelectedInstOperands, |
| 50104 | /* 141401 */ // GIR_Coverage, 2565, |
| 50105 | /* 141401 */ GIR_EraseRootFromParent_Done, |
| 50106 | /* 141402 */ // Label 3083: @141402 |
| 50107 | /* 141402 */ GIM_Try, /*On fail goto*//*Label 3084*/ GIMT_Encode4(141464), // Rule ID 4904 // |
| 50108 | /* 141407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50109 | /* 141410 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50110 | /* 141414 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50111 | /* 141418 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50112 | /* 141422 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50113 | /* 141426 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50114 | /* 141429 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50115 | /* 141433 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50116 | /* 141437 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50117 | /* 141439 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50118 | /* 141446 */ // (uaddsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50119 | /* 141446 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ128rm), |
| 50120 | /* 141449 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50121 | /* 141451 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50122 | /* 141453 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50123 | /* 141457 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50124 | /* 141462 */ GIR_RootConstrainSelectedInstOperands, |
| 50125 | /* 141463 */ // GIR_Coverage, 4904, |
| 50126 | /* 141463 */ GIR_EraseRootFromParent_Done, |
| 50127 | /* 141464 */ // Label 3084: @141464 |
| 50128 | /* 141464 */ GIM_Try, /*On fail goto*//*Label 3085*/ GIMT_Encode4(141491), // Rule ID 2564 // |
| 50129 | /* 141469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50130 | /* 141472 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50131 | /* 141476 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50132 | /* 141480 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50133 | /* 141484 */ // (uaddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPADDUSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50134 | /* 141484 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWrr), |
| 50135 | /* 141489 */ GIR_RootConstrainSelectedInstOperands, |
| 50136 | /* 141490 */ // GIR_Coverage, 2564, |
| 50137 | /* 141490 */ GIR_Done, |
| 50138 | /* 141491 */ // Label 3085: @141491 |
| 50139 | /* 141491 */ GIM_Try, /*On fail goto*//*Label 3086*/ GIMT_Encode4(141518), // Rule ID 2566 // |
| 50140 | /* 141496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 50141 | /* 141499 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50142 | /* 141503 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50143 | /* 141507 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50144 | /* 141511 */ // (uaddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PADDUSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50145 | /* 141511 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDUSWrr), |
| 50146 | /* 141516 */ GIR_RootConstrainSelectedInstOperands, |
| 50147 | /* 141517 */ // GIR_Coverage, 2566, |
| 50148 | /* 141517 */ GIR_Done, |
| 50149 | /* 141518 */ // Label 3086: @141518 |
| 50150 | /* 141518 */ GIM_Try, /*On fail goto*//*Label 3087*/ GIMT_Encode4(141545), // Rule ID 4901 // |
| 50151 | /* 141523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50152 | /* 141526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50153 | /* 141530 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50154 | /* 141534 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50155 | /* 141538 */ // (uaddsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPADDUSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 50156 | /* 141538 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ128rr), |
| 50157 | /* 141543 */ GIR_RootConstrainSelectedInstOperands, |
| 50158 | /* 141544 */ // GIR_Coverage, 4901, |
| 50159 | /* 141544 */ GIR_Done, |
| 50160 | /* 141545 */ // Label 3087: @141545 |
| 50161 | /* 141545 */ GIM_Reject, |
| 50162 | /* 141546 */ // Label 3080: @141546 |
| 50163 | /* 141546 */ GIM_Reject, |
| 50164 | /* 141547 */ // Label 3074: @141547 |
| 50165 | /* 141547 */ GIM_Try, /*On fail goto*//*Label 3088*/ GIMT_Encode4(141888), |
| 50166 | /* 141552 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 50167 | /* 141555 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 50168 | /* 141558 */ GIM_Try, /*On fail goto*//*Label 3089*/ GIMT_Encode4(141620), // Rule ID 23529 // |
| 50169 | /* 141563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50170 | /* 141566 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50171 | /* 141570 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50172 | /* 141574 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50173 | /* 141578 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50174 | /* 141581 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50175 | /* 141585 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50176 | /* 141589 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50177 | /* 141593 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50178 | /* 141595 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50179 | /* 141602 */ // (uaddsat:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPADDUSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50180 | /* 141602 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBrm), |
| 50181 | /* 141605 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50182 | /* 141607 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50183 | /* 141609 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50184 | /* 141613 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50185 | /* 141618 */ GIR_RootConstrainSelectedInstOperands, |
| 50186 | /* 141619 */ // GIR_Coverage, 23529, |
| 50187 | /* 141619 */ GIR_EraseRootFromParent_Done, |
| 50188 | /* 141620 */ // Label 3089: @141620 |
| 50189 | /* 141620 */ GIM_Try, /*On fail goto*//*Label 3090*/ GIMT_Encode4(141682), // Rule ID 23865 // |
| 50190 | /* 141625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50191 | /* 141628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50192 | /* 141632 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50193 | /* 141636 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50194 | /* 141640 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50195 | /* 141643 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50196 | /* 141647 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50197 | /* 141651 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50198 | /* 141655 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50199 | /* 141657 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50200 | /* 141664 */ // (uaddsat:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPADDUSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50201 | /* 141664 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ128rm), |
| 50202 | /* 141667 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50203 | /* 141669 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50204 | /* 141671 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50205 | /* 141675 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50206 | /* 141680 */ GIR_RootConstrainSelectedInstOperands, |
| 50207 | /* 141681 */ // GIR_Coverage, 23865, |
| 50208 | /* 141681 */ GIR_EraseRootFromParent_Done, |
| 50209 | /* 141682 */ // Label 3090: @141682 |
| 50210 | /* 141682 */ GIM_Try, /*On fail goto*//*Label 3091*/ GIMT_Encode4(141744), // Rule ID 2559 // |
| 50211 | /* 141687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50212 | /* 141690 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50213 | /* 141694 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50214 | /* 141698 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50215 | /* 141702 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50216 | /* 141706 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50217 | /* 141709 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50218 | /* 141713 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50219 | /* 141717 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50220 | /* 141719 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50221 | /* 141726 */ // (uaddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50222 | /* 141726 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBrm), |
| 50223 | /* 141729 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50224 | /* 141731 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50225 | /* 141733 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50226 | /* 141737 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50227 | /* 141742 */ GIR_RootConstrainSelectedInstOperands, |
| 50228 | /* 141743 */ // GIR_Coverage, 2559, |
| 50229 | /* 141743 */ GIR_EraseRootFromParent_Done, |
| 50230 | /* 141744 */ // Label 3091: @141744 |
| 50231 | /* 141744 */ GIM_Try, /*On fail goto*//*Label 3092*/ GIMT_Encode4(141806), // Rule ID 4922 // |
| 50232 | /* 141749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50233 | /* 141752 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50234 | /* 141756 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50235 | /* 141760 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50236 | /* 141764 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50237 | /* 141768 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50238 | /* 141771 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50239 | /* 141775 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50240 | /* 141779 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50241 | /* 141781 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50242 | /* 141788 */ // (uaddsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50243 | /* 141788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ128rm), |
| 50244 | /* 141791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50245 | /* 141793 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50246 | /* 141795 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50247 | /* 141799 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50248 | /* 141804 */ GIR_RootConstrainSelectedInstOperands, |
| 50249 | /* 141805 */ // GIR_Coverage, 4922, |
| 50250 | /* 141805 */ GIR_EraseRootFromParent_Done, |
| 50251 | /* 141806 */ // Label 3092: @141806 |
| 50252 | /* 141806 */ GIM_Try, /*On fail goto*//*Label 3093*/ GIMT_Encode4(141833), // Rule ID 2558 // |
| 50253 | /* 141811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50254 | /* 141814 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50255 | /* 141818 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50256 | /* 141822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50257 | /* 141826 */ // (uaddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPADDUSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 50258 | /* 141826 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBrr), |
| 50259 | /* 141831 */ GIR_RootConstrainSelectedInstOperands, |
| 50260 | /* 141832 */ // GIR_Coverage, 2558, |
| 50261 | /* 141832 */ GIR_Done, |
| 50262 | /* 141833 */ // Label 3093: @141833 |
| 50263 | /* 141833 */ GIM_Try, /*On fail goto*//*Label 3094*/ GIMT_Encode4(141860), // Rule ID 2560 // |
| 50264 | /* 141838 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 50265 | /* 141841 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50266 | /* 141845 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50267 | /* 141849 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50268 | /* 141853 */ // (uaddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PADDUSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 50269 | /* 141853 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDUSBrr), |
| 50270 | /* 141858 */ GIR_RootConstrainSelectedInstOperands, |
| 50271 | /* 141859 */ // GIR_Coverage, 2560, |
| 50272 | /* 141859 */ GIR_Done, |
| 50273 | /* 141860 */ // Label 3094: @141860 |
| 50274 | /* 141860 */ GIM_Try, /*On fail goto*//*Label 3095*/ GIMT_Encode4(141887), // Rule ID 4919 // |
| 50275 | /* 141865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50276 | /* 141868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50277 | /* 141872 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50278 | /* 141876 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50279 | /* 141880 */ // (uaddsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPADDUSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 50280 | /* 141880 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ128rr), |
| 50281 | /* 141885 */ GIR_RootConstrainSelectedInstOperands, |
| 50282 | /* 141886 */ // GIR_Coverage, 4919, |
| 50283 | /* 141886 */ GIR_Done, |
| 50284 | /* 141887 */ // Label 3095: @141887 |
| 50285 | /* 141887 */ GIM_Reject, |
| 50286 | /* 141888 */ // Label 3088: @141888 |
| 50287 | /* 141888 */ GIM_Reject, |
| 50288 | /* 141889 */ // Label 3075: @141889 |
| 50289 | /* 141889 */ GIM_Try, /*On fail goto*//*Label 3096*/ GIMT_Encode4(142203), |
| 50290 | /* 141894 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 50291 | /* 141897 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 50292 | /* 141900 */ GIM_Try, /*On fail goto*//*Label 3097*/ GIMT_Encode4(141962), // Rule ID 23534 // |
| 50293 | /* 141905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50294 | /* 141908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50295 | /* 141912 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50296 | /* 141916 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50297 | /* 141920 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50298 | /* 141923 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50299 | /* 141927 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50300 | /* 141931 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50301 | /* 141935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50302 | /* 141937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50303 | /* 141944 */ // (uaddsat:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPADDUSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50304 | /* 141944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWYrm), |
| 50305 | /* 141947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50306 | /* 141949 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50307 | /* 141951 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50308 | /* 141955 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50309 | /* 141960 */ GIR_RootConstrainSelectedInstOperands, |
| 50310 | /* 141961 */ // GIR_Coverage, 23534, |
| 50311 | /* 141961 */ GIR_EraseRootFromParent_Done, |
| 50312 | /* 141962 */ // Label 3097: @141962 |
| 50313 | /* 141962 */ GIM_Try, /*On fail goto*//*Label 3098*/ GIMT_Encode4(142024), // Rule ID 23853 // |
| 50314 | /* 141967 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50315 | /* 141970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50316 | /* 141974 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50317 | /* 141978 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50318 | /* 141982 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50319 | /* 141985 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50320 | /* 141989 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50321 | /* 141993 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50322 | /* 141997 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50323 | /* 141999 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50324 | /* 142006 */ // (uaddsat:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPADDUSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50325 | /* 142006 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ256rm), |
| 50326 | /* 142009 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50327 | /* 142011 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50328 | /* 142013 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50329 | /* 142017 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50330 | /* 142022 */ GIR_RootConstrainSelectedInstOperands, |
| 50331 | /* 142023 */ // GIR_Coverage, 23853, |
| 50332 | /* 142023 */ GIR_EraseRootFromParent_Done, |
| 50333 | /* 142024 */ // Label 3098: @142024 |
| 50334 | /* 142024 */ GIM_Try, /*On fail goto*//*Label 3099*/ GIMT_Encode4(142086), // Rule ID 2569 // |
| 50335 | /* 142029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50336 | /* 142032 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50337 | /* 142036 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50338 | /* 142040 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50339 | /* 142044 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50340 | /* 142048 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50341 | /* 142051 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50342 | /* 142055 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50343 | /* 142059 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50344 | /* 142061 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50345 | /* 142068 */ // (uaddsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50346 | /* 142068 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWYrm), |
| 50347 | /* 142071 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50348 | /* 142073 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50349 | /* 142075 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50350 | /* 142079 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50351 | /* 142084 */ GIR_RootConstrainSelectedInstOperands, |
| 50352 | /* 142085 */ // GIR_Coverage, 2569, |
| 50353 | /* 142085 */ GIR_EraseRootFromParent_Done, |
| 50354 | /* 142086 */ // Label 3099: @142086 |
| 50355 | /* 142086 */ GIM_Try, /*On fail goto*//*Label 3100*/ GIMT_Encode4(142148), // Rule ID 4898 // |
| 50356 | /* 142091 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50357 | /* 142094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50358 | /* 142098 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50359 | /* 142102 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50360 | /* 142106 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50361 | /* 142110 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50362 | /* 142113 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50363 | /* 142117 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50364 | /* 142121 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50365 | /* 142123 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50366 | /* 142130 */ // (uaddsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50367 | /* 142130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ256rm), |
| 50368 | /* 142133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50369 | /* 142135 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50370 | /* 142137 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50371 | /* 142141 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50372 | /* 142146 */ GIR_RootConstrainSelectedInstOperands, |
| 50373 | /* 142147 */ // GIR_Coverage, 4898, |
| 50374 | /* 142147 */ GIR_EraseRootFromParent_Done, |
| 50375 | /* 142148 */ // Label 3100: @142148 |
| 50376 | /* 142148 */ GIM_Try, /*On fail goto*//*Label 3101*/ GIMT_Encode4(142175), // Rule ID 2568 // |
| 50377 | /* 142153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50378 | /* 142156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50379 | /* 142160 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50380 | /* 142164 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50381 | /* 142168 */ // (uaddsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPADDUSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 50382 | /* 142168 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWYrr), |
| 50383 | /* 142173 */ GIR_RootConstrainSelectedInstOperands, |
| 50384 | /* 142174 */ // GIR_Coverage, 2568, |
| 50385 | /* 142174 */ GIR_Done, |
| 50386 | /* 142175 */ // Label 3101: @142175 |
| 50387 | /* 142175 */ GIM_Try, /*On fail goto*//*Label 3102*/ GIMT_Encode4(142202), // Rule ID 4895 // |
| 50388 | /* 142180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50389 | /* 142183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50390 | /* 142187 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50391 | /* 142191 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50392 | /* 142195 */ // (uaddsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPADDUSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 50393 | /* 142195 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZ256rr), |
| 50394 | /* 142200 */ GIR_RootConstrainSelectedInstOperands, |
| 50395 | /* 142201 */ // GIR_Coverage, 4895, |
| 50396 | /* 142201 */ GIR_Done, |
| 50397 | /* 142202 */ // Label 3102: @142202 |
| 50398 | /* 142202 */ GIM_Reject, |
| 50399 | /* 142203 */ // Label 3096: @142203 |
| 50400 | /* 142203 */ GIM_Reject, |
| 50401 | /* 142204 */ // Label 3076: @142204 |
| 50402 | /* 142204 */ GIM_Try, /*On fail goto*//*Label 3103*/ GIMT_Encode4(142518), |
| 50403 | /* 142209 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 50404 | /* 142212 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 50405 | /* 142215 */ GIM_Try, /*On fail goto*//*Label 3104*/ GIMT_Encode4(142277), // Rule ID 23531 // |
| 50406 | /* 142220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50407 | /* 142223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50408 | /* 142227 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50409 | /* 142231 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50410 | /* 142235 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50411 | /* 142238 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50412 | /* 142242 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50413 | /* 142246 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50414 | /* 142250 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50415 | /* 142252 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50416 | /* 142259 */ // (uaddsat:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPADDUSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50417 | /* 142259 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBYrm), |
| 50418 | /* 142262 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50419 | /* 142264 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50420 | /* 142266 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50421 | /* 142270 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50422 | /* 142275 */ GIR_RootConstrainSelectedInstOperands, |
| 50423 | /* 142276 */ // GIR_Coverage, 23531, |
| 50424 | /* 142276 */ GIR_EraseRootFromParent_Done, |
| 50425 | /* 142277 */ // Label 3104: @142277 |
| 50426 | /* 142277 */ GIM_Try, /*On fail goto*//*Label 3105*/ GIMT_Encode4(142339), // Rule ID 23862 // |
| 50427 | /* 142282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50428 | /* 142285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50429 | /* 142289 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50430 | /* 142293 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50431 | /* 142297 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50432 | /* 142300 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50433 | /* 142304 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50434 | /* 142308 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50435 | /* 142312 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50436 | /* 142314 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50437 | /* 142321 */ // (uaddsat:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPADDUSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50438 | /* 142321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ256rm), |
| 50439 | /* 142324 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50440 | /* 142326 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50441 | /* 142328 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50442 | /* 142332 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50443 | /* 142337 */ GIR_RootConstrainSelectedInstOperands, |
| 50444 | /* 142338 */ // GIR_Coverage, 23862, |
| 50445 | /* 142338 */ GIR_EraseRootFromParent_Done, |
| 50446 | /* 142339 */ // Label 3105: @142339 |
| 50447 | /* 142339 */ GIM_Try, /*On fail goto*//*Label 3106*/ GIMT_Encode4(142401), // Rule ID 2563 // |
| 50448 | /* 142344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50449 | /* 142347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50450 | /* 142351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50451 | /* 142355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50452 | /* 142359 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50453 | /* 142363 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50454 | /* 142366 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50455 | /* 142370 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50456 | /* 142374 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50457 | /* 142376 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50458 | /* 142383 */ // (uaddsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50459 | /* 142383 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBYrm), |
| 50460 | /* 142386 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50461 | /* 142388 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50462 | /* 142390 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50463 | /* 142394 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50464 | /* 142399 */ GIR_RootConstrainSelectedInstOperands, |
| 50465 | /* 142400 */ // GIR_Coverage, 2563, |
| 50466 | /* 142400 */ GIR_EraseRootFromParent_Done, |
| 50467 | /* 142401 */ // Label 3106: @142401 |
| 50468 | /* 142401 */ GIM_Try, /*On fail goto*//*Label 3107*/ GIMT_Encode4(142463), // Rule ID 4916 // |
| 50469 | /* 142406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50470 | /* 142409 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50471 | /* 142413 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50472 | /* 142417 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50473 | /* 142421 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50474 | /* 142425 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50475 | /* 142428 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50476 | /* 142432 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50477 | /* 142436 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50478 | /* 142438 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50479 | /* 142445 */ // (uaddsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50480 | /* 142445 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ256rm), |
| 50481 | /* 142448 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50482 | /* 142450 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50483 | /* 142452 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50484 | /* 142456 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50485 | /* 142461 */ GIR_RootConstrainSelectedInstOperands, |
| 50486 | /* 142462 */ // GIR_Coverage, 4916, |
| 50487 | /* 142462 */ GIR_EraseRootFromParent_Done, |
| 50488 | /* 142463 */ // Label 3107: @142463 |
| 50489 | /* 142463 */ GIM_Try, /*On fail goto*//*Label 3108*/ GIMT_Encode4(142490), // Rule ID 2562 // |
| 50490 | /* 142468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50491 | /* 142471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50492 | /* 142475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50493 | /* 142479 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50494 | /* 142483 */ // (uaddsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPADDUSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 50495 | /* 142483 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBYrr), |
| 50496 | /* 142488 */ GIR_RootConstrainSelectedInstOperands, |
| 50497 | /* 142489 */ // GIR_Coverage, 2562, |
| 50498 | /* 142489 */ GIR_Done, |
| 50499 | /* 142490 */ // Label 3108: @142490 |
| 50500 | /* 142490 */ GIM_Try, /*On fail goto*//*Label 3109*/ GIMT_Encode4(142517), // Rule ID 4913 // |
| 50501 | /* 142495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50502 | /* 142498 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50503 | /* 142502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50504 | /* 142506 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50505 | /* 142510 */ // (uaddsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPADDUSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 50506 | /* 142510 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZ256rr), |
| 50507 | /* 142515 */ GIR_RootConstrainSelectedInstOperands, |
| 50508 | /* 142516 */ // GIR_Coverage, 4913, |
| 50509 | /* 142516 */ GIR_Done, |
| 50510 | /* 142517 */ // Label 3109: @142517 |
| 50511 | /* 142517 */ GIM_Reject, |
| 50512 | /* 142518 */ // Label 3103: @142518 |
| 50513 | /* 142518 */ GIM_Reject, |
| 50514 | /* 142519 */ // Label 3077: @142519 |
| 50515 | /* 142519 */ GIM_Try, /*On fail goto*//*Label 3110*/ GIMT_Encode4(142674), |
| 50516 | /* 142524 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 50517 | /* 142527 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 50518 | /* 142530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50519 | /* 142534 */ GIM_Try, /*On fail goto*//*Label 3111*/ GIMT_Encode4(142592), // Rule ID 23850 // |
| 50520 | /* 142539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50521 | /* 142542 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50522 | /* 142546 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50523 | /* 142550 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50524 | /* 142553 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50525 | /* 142557 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50526 | /* 142561 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50527 | /* 142565 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50528 | /* 142567 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50529 | /* 142574 */ // (uaddsat:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPADDUSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50530 | /* 142574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZrm), |
| 50531 | /* 142577 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50532 | /* 142579 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50533 | /* 142581 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50534 | /* 142585 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50535 | /* 142590 */ GIR_RootConstrainSelectedInstOperands, |
| 50536 | /* 142591 */ // GIR_Coverage, 23850, |
| 50537 | /* 142591 */ GIR_EraseRootFromParent_Done, |
| 50538 | /* 142592 */ // Label 3111: @142592 |
| 50539 | /* 142592 */ GIM_Try, /*On fail goto*//*Label 3112*/ GIMT_Encode4(142650), // Rule ID 4892 // |
| 50540 | /* 142597 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50541 | /* 142600 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50542 | /* 142604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50543 | /* 142608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50544 | /* 142612 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50545 | /* 142615 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50546 | /* 142619 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50547 | /* 142623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50548 | /* 142625 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50549 | /* 142632 */ // (uaddsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50550 | /* 142632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZrm), |
| 50551 | /* 142635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50552 | /* 142637 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50553 | /* 142639 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50554 | /* 142643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50555 | /* 142648 */ GIR_RootConstrainSelectedInstOperands, |
| 50556 | /* 142649 */ // GIR_Coverage, 4892, |
| 50557 | /* 142649 */ GIR_EraseRootFromParent_Done, |
| 50558 | /* 142650 */ // Label 3112: @142650 |
| 50559 | /* 142650 */ GIM_Try, /*On fail goto*//*Label 3113*/ GIMT_Encode4(142673), // Rule ID 4889 // |
| 50560 | /* 142655 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50561 | /* 142658 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50562 | /* 142662 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50563 | /* 142666 */ // (uaddsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPADDUSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 50564 | /* 142666 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSWZrr), |
| 50565 | /* 142671 */ GIR_RootConstrainSelectedInstOperands, |
| 50566 | /* 142672 */ // GIR_Coverage, 4889, |
| 50567 | /* 142672 */ GIR_Done, |
| 50568 | /* 142673 */ // Label 3113: @142673 |
| 50569 | /* 142673 */ GIM_Reject, |
| 50570 | /* 142674 */ // Label 3110: @142674 |
| 50571 | /* 142674 */ GIM_Reject, |
| 50572 | /* 142675 */ // Label 3078: @142675 |
| 50573 | /* 142675 */ GIM_Try, /*On fail goto*//*Label 3114*/ GIMT_Encode4(142830), |
| 50574 | /* 142680 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 50575 | /* 142683 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 50576 | /* 142686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50577 | /* 142690 */ GIM_Try, /*On fail goto*//*Label 3115*/ GIMT_Encode4(142748), // Rule ID 23859 // |
| 50578 | /* 142695 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50579 | /* 142698 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50580 | /* 142702 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50581 | /* 142706 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50582 | /* 142709 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50583 | /* 142713 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50584 | /* 142717 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50585 | /* 142721 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50586 | /* 142723 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50587 | /* 142730 */ // (uaddsat:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPADDUSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50588 | /* 142730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZrm), |
| 50589 | /* 142733 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50590 | /* 142735 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50591 | /* 142737 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50592 | /* 142741 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50593 | /* 142746 */ GIR_RootConstrainSelectedInstOperands, |
| 50594 | /* 142747 */ // GIR_Coverage, 23859, |
| 50595 | /* 142747 */ GIR_EraseRootFromParent_Done, |
| 50596 | /* 142748 */ // Label 3115: @142748 |
| 50597 | /* 142748 */ GIM_Try, /*On fail goto*//*Label 3116*/ GIMT_Encode4(142806), // Rule ID 4910 // |
| 50598 | /* 142753 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50599 | /* 142756 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50600 | /* 142760 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50601 | /* 142764 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50602 | /* 142768 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50603 | /* 142771 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50604 | /* 142775 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50605 | /* 142779 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50606 | /* 142781 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50607 | /* 142788 */ // (uaddsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDUSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50608 | /* 142788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZrm), |
| 50609 | /* 142791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50610 | /* 142793 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50611 | /* 142795 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50612 | /* 142799 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50613 | /* 142804 */ GIR_RootConstrainSelectedInstOperands, |
| 50614 | /* 142805 */ // GIR_Coverage, 4910, |
| 50615 | /* 142805 */ GIR_EraseRootFromParent_Done, |
| 50616 | /* 142806 */ // Label 3116: @142806 |
| 50617 | /* 142806 */ GIM_Try, /*On fail goto*//*Label 3117*/ GIMT_Encode4(142829), // Rule ID 4907 // |
| 50618 | /* 142811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 50619 | /* 142814 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50620 | /* 142818 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 50621 | /* 142822 */ // (uaddsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPADDUSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 50622 | /* 142822 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDUSBZrr), |
| 50623 | /* 142827 */ GIR_RootConstrainSelectedInstOperands, |
| 50624 | /* 142828 */ // GIR_Coverage, 4907, |
| 50625 | /* 142828 */ GIR_Done, |
| 50626 | /* 142829 */ // Label 3117: @142829 |
| 50627 | /* 142829 */ GIM_Reject, |
| 50628 | /* 142830 */ // Label 3114: @142830 |
| 50629 | /* 142830 */ GIM_Reject, |
| 50630 | /* 142831 */ // Label 3079: @142831 |
| 50631 | /* 142831 */ GIM_Reject, |
| 50632 | /* 142832 */ // Label 39: @142832 |
| 50633 | /* 142832 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 3124*/ GIMT_Encode4(144517), |
| 50634 | /* 142843 */ /*GILLT_v8s16*//*Label 3118*/ GIMT_Encode4(142891), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 50635 | /* 142859 */ /*GILLT_v16s8*//*Label 3119*/ GIMT_Encode4(143233), |
| 50636 | /* 142863 */ /*GILLT_v16s16*//*Label 3120*/ GIMT_Encode4(143575), GIMT_Encode4(0), GIMT_Encode4(0), |
| 50637 | /* 142875 */ /*GILLT_v32s8*//*Label 3121*/ GIMT_Encode4(143890), |
| 50638 | /* 142879 */ /*GILLT_v32s16*//*Label 3122*/ GIMT_Encode4(144205), GIMT_Encode4(0), |
| 50639 | /* 142887 */ /*GILLT_v64s8*//*Label 3123*/ GIMT_Encode4(144361), |
| 50640 | /* 142891 */ // Label 3118: @142891 |
| 50641 | /* 142891 */ GIM_Try, /*On fail goto*//*Label 3125*/ GIMT_Encode4(143232), |
| 50642 | /* 142896 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 50643 | /* 142899 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 50644 | /* 142902 */ GIM_Try, /*On fail goto*//*Label 3126*/ GIMT_Encode4(142964), // Rule ID 23526 // |
| 50645 | /* 142907 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50646 | /* 142910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50647 | /* 142914 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50648 | /* 142918 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50649 | /* 142922 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50650 | /* 142925 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50651 | /* 142929 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50652 | /* 142933 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50653 | /* 142937 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50654 | /* 142939 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50655 | /* 142946 */ // (saddsat:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPADDSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50656 | /* 142946 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWrm), |
| 50657 | /* 142949 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50658 | /* 142951 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50659 | /* 142953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50660 | /* 142957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50661 | /* 142962 */ GIR_RootConstrainSelectedInstOperands, |
| 50662 | /* 142963 */ // GIR_Coverage, 23526, |
| 50663 | /* 142963 */ GIR_EraseRootFromParent_Done, |
| 50664 | /* 142964 */ // Label 3126: @142964 |
| 50665 | /* 142964 */ GIM_Try, /*On fail goto*//*Label 3127*/ GIMT_Encode4(143026), // Rule ID 23838 // |
| 50666 | /* 142969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50667 | /* 142972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50668 | /* 142976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50669 | /* 142980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50670 | /* 142984 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50671 | /* 142987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50672 | /* 142991 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50673 | /* 142995 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50674 | /* 142999 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50675 | /* 143001 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50676 | /* 143008 */ // (saddsat:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPADDSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50677 | /* 143008 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ128rm), |
| 50678 | /* 143011 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50679 | /* 143013 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50680 | /* 143015 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50681 | /* 143019 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50682 | /* 143024 */ GIR_RootConstrainSelectedInstOperands, |
| 50683 | /* 143025 */ // GIR_Coverage, 23838, |
| 50684 | /* 143025 */ GIR_EraseRootFromParent_Done, |
| 50685 | /* 143026 */ // Label 3127: @143026 |
| 50686 | /* 143026 */ GIM_Try, /*On fail goto*//*Label 3128*/ GIMT_Encode4(143088), // Rule ID 2553 // |
| 50687 | /* 143031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50688 | /* 143034 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50689 | /* 143038 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50690 | /* 143042 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50691 | /* 143046 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50692 | /* 143050 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50693 | /* 143053 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50694 | /* 143057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50695 | /* 143061 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50696 | /* 143063 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50697 | /* 143070 */ // (saddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50698 | /* 143070 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWrm), |
| 50699 | /* 143073 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50700 | /* 143075 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50701 | /* 143077 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50702 | /* 143081 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50703 | /* 143086 */ GIR_RootConstrainSelectedInstOperands, |
| 50704 | /* 143087 */ // GIR_Coverage, 2553, |
| 50705 | /* 143087 */ GIR_EraseRootFromParent_Done, |
| 50706 | /* 143088 */ // Label 3128: @143088 |
| 50707 | /* 143088 */ GIM_Try, /*On fail goto*//*Label 3129*/ GIMT_Encode4(143150), // Rule ID 4832 // |
| 50708 | /* 143093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50709 | /* 143096 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50710 | /* 143100 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50711 | /* 143104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50712 | /* 143108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50713 | /* 143112 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50714 | /* 143115 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50715 | /* 143119 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50716 | /* 143123 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50717 | /* 143125 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50718 | /* 143132 */ // (saddsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50719 | /* 143132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ128rm), |
| 50720 | /* 143135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50721 | /* 143137 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50722 | /* 143139 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50723 | /* 143143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50724 | /* 143148 */ GIR_RootConstrainSelectedInstOperands, |
| 50725 | /* 143149 */ // GIR_Coverage, 4832, |
| 50726 | /* 143149 */ GIR_EraseRootFromParent_Done, |
| 50727 | /* 143150 */ // Label 3129: @143150 |
| 50728 | /* 143150 */ GIM_Try, /*On fail goto*//*Label 3130*/ GIMT_Encode4(143177), // Rule ID 2552 // |
| 50729 | /* 143155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50730 | /* 143158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50731 | /* 143162 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50732 | /* 143166 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50733 | /* 143170 */ // (saddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPADDSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50734 | /* 143170 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWrr), |
| 50735 | /* 143175 */ GIR_RootConstrainSelectedInstOperands, |
| 50736 | /* 143176 */ // GIR_Coverage, 2552, |
| 50737 | /* 143176 */ GIR_Done, |
| 50738 | /* 143177 */ // Label 3130: @143177 |
| 50739 | /* 143177 */ GIM_Try, /*On fail goto*//*Label 3131*/ GIMT_Encode4(143204), // Rule ID 2554 // |
| 50740 | /* 143182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 50741 | /* 143185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50742 | /* 143189 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50743 | /* 143193 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50744 | /* 143197 */ // (saddsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PADDSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 50745 | /* 143197 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDSWrr), |
| 50746 | /* 143202 */ GIR_RootConstrainSelectedInstOperands, |
| 50747 | /* 143203 */ // GIR_Coverage, 2554, |
| 50748 | /* 143203 */ GIR_Done, |
| 50749 | /* 143204 */ // Label 3131: @143204 |
| 50750 | /* 143204 */ GIM_Try, /*On fail goto*//*Label 3132*/ GIMT_Encode4(143231), // Rule ID 4829 // |
| 50751 | /* 143209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50752 | /* 143212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50753 | /* 143216 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50754 | /* 143220 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50755 | /* 143224 */ // (saddsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPADDSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 50756 | /* 143224 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ128rr), |
| 50757 | /* 143229 */ GIR_RootConstrainSelectedInstOperands, |
| 50758 | /* 143230 */ // GIR_Coverage, 4829, |
| 50759 | /* 143230 */ GIR_Done, |
| 50760 | /* 143231 */ // Label 3132: @143231 |
| 50761 | /* 143231 */ GIM_Reject, |
| 50762 | /* 143232 */ // Label 3125: @143232 |
| 50763 | /* 143232 */ GIM_Reject, |
| 50764 | /* 143233 */ // Label 3119: @143233 |
| 50765 | /* 143233 */ GIM_Try, /*On fail goto*//*Label 3133*/ GIMT_Encode4(143574), |
| 50766 | /* 143238 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 50767 | /* 143241 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 50768 | /* 143244 */ GIM_Try, /*On fail goto*//*Label 3134*/ GIMT_Encode4(143306), // Rule ID 23523 // |
| 50769 | /* 143249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50770 | /* 143252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50771 | /* 143256 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50772 | /* 143260 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50773 | /* 143264 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50774 | /* 143267 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50775 | /* 143271 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50776 | /* 143275 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50777 | /* 143279 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50778 | /* 143281 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50779 | /* 143288 */ // (saddsat:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPADDSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50780 | /* 143288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBrm), |
| 50781 | /* 143291 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50782 | /* 143293 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50783 | /* 143295 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50784 | /* 143299 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50785 | /* 143304 */ GIR_RootConstrainSelectedInstOperands, |
| 50786 | /* 143305 */ // GIR_Coverage, 23523, |
| 50787 | /* 143305 */ GIR_EraseRootFromParent_Done, |
| 50788 | /* 143306 */ // Label 3134: @143306 |
| 50789 | /* 143306 */ GIM_Try, /*On fail goto*//*Label 3135*/ GIMT_Encode4(143368), // Rule ID 23847 // |
| 50790 | /* 143311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50791 | /* 143314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50792 | /* 143318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50793 | /* 143322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50794 | /* 143326 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50795 | /* 143329 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50796 | /* 143333 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50797 | /* 143337 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50798 | /* 143341 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50799 | /* 143343 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50800 | /* 143350 */ // (saddsat:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPADDSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50801 | /* 143350 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ128rm), |
| 50802 | /* 143353 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50803 | /* 143355 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50804 | /* 143357 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50805 | /* 143361 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50806 | /* 143366 */ GIR_RootConstrainSelectedInstOperands, |
| 50807 | /* 143367 */ // GIR_Coverage, 23847, |
| 50808 | /* 143367 */ GIR_EraseRootFromParent_Done, |
| 50809 | /* 143368 */ // Label 3135: @143368 |
| 50810 | /* 143368 */ GIM_Try, /*On fail goto*//*Label 3136*/ GIMT_Encode4(143430), // Rule ID 2547 // |
| 50811 | /* 143373 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50812 | /* 143376 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50813 | /* 143380 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50814 | /* 143384 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50815 | /* 143388 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50816 | /* 143392 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50817 | /* 143395 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50818 | /* 143399 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50819 | /* 143403 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50820 | /* 143405 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50821 | /* 143412 */ // (saddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50822 | /* 143412 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBrm), |
| 50823 | /* 143415 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50824 | /* 143417 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50825 | /* 143419 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50826 | /* 143423 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50827 | /* 143428 */ GIR_RootConstrainSelectedInstOperands, |
| 50828 | /* 143429 */ // GIR_Coverage, 2547, |
| 50829 | /* 143429 */ GIR_EraseRootFromParent_Done, |
| 50830 | /* 143430 */ // Label 3136: @143430 |
| 50831 | /* 143430 */ GIM_Try, /*On fail goto*//*Label 3137*/ GIMT_Encode4(143492), // Rule ID 4850 // |
| 50832 | /* 143435 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50833 | /* 143438 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50834 | /* 143442 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50835 | /* 143446 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50836 | /* 143450 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50837 | /* 143454 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50838 | /* 143457 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50839 | /* 143461 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50840 | /* 143465 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50841 | /* 143467 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50842 | /* 143474 */ // (saddsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50843 | /* 143474 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ128rm), |
| 50844 | /* 143477 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50845 | /* 143479 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50846 | /* 143481 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50847 | /* 143485 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50848 | /* 143490 */ GIR_RootConstrainSelectedInstOperands, |
| 50849 | /* 143491 */ // GIR_Coverage, 4850, |
| 50850 | /* 143491 */ GIR_EraseRootFromParent_Done, |
| 50851 | /* 143492 */ // Label 3137: @143492 |
| 50852 | /* 143492 */ GIM_Try, /*On fail goto*//*Label 3138*/ GIMT_Encode4(143519), // Rule ID 2546 // |
| 50853 | /* 143497 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 50854 | /* 143500 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50855 | /* 143504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50856 | /* 143508 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50857 | /* 143512 */ // (saddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPADDSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 50858 | /* 143512 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBrr), |
| 50859 | /* 143517 */ GIR_RootConstrainSelectedInstOperands, |
| 50860 | /* 143518 */ // GIR_Coverage, 2546, |
| 50861 | /* 143518 */ GIR_Done, |
| 50862 | /* 143519 */ // Label 3138: @143519 |
| 50863 | /* 143519 */ GIM_Try, /*On fail goto*//*Label 3139*/ GIMT_Encode4(143546), // Rule ID 2548 // |
| 50864 | /* 143524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 50865 | /* 143527 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50866 | /* 143531 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50867 | /* 143535 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 50868 | /* 143539 */ // (saddsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PADDSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 50869 | /* 143539 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PADDSBrr), |
| 50870 | /* 143544 */ GIR_RootConstrainSelectedInstOperands, |
| 50871 | /* 143545 */ // GIR_Coverage, 2548, |
| 50872 | /* 143545 */ GIR_Done, |
| 50873 | /* 143546 */ // Label 3139: @143546 |
| 50874 | /* 143546 */ GIM_Try, /*On fail goto*//*Label 3140*/ GIMT_Encode4(143573), // Rule ID 4847 // |
| 50875 | /* 143551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50876 | /* 143554 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50877 | /* 143558 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50878 | /* 143562 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 50879 | /* 143566 */ // (saddsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPADDSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 50880 | /* 143566 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ128rr), |
| 50881 | /* 143571 */ GIR_RootConstrainSelectedInstOperands, |
| 50882 | /* 143572 */ // GIR_Coverage, 4847, |
| 50883 | /* 143572 */ GIR_Done, |
| 50884 | /* 143573 */ // Label 3140: @143573 |
| 50885 | /* 143573 */ GIM_Reject, |
| 50886 | /* 143574 */ // Label 3133: @143574 |
| 50887 | /* 143574 */ GIM_Reject, |
| 50888 | /* 143575 */ // Label 3120: @143575 |
| 50889 | /* 143575 */ GIM_Try, /*On fail goto*//*Label 3141*/ GIMT_Encode4(143889), |
| 50890 | /* 143580 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 50891 | /* 143583 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 50892 | /* 143586 */ GIM_Try, /*On fail goto*//*Label 3142*/ GIMT_Encode4(143648), // Rule ID 23528 // |
| 50893 | /* 143591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50894 | /* 143594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50895 | /* 143598 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50896 | /* 143602 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50897 | /* 143606 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50898 | /* 143609 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50899 | /* 143613 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50900 | /* 143617 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50901 | /* 143621 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50902 | /* 143623 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50903 | /* 143630 */ // (saddsat:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPADDSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50904 | /* 143630 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWYrm), |
| 50905 | /* 143633 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50906 | /* 143635 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50907 | /* 143637 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50908 | /* 143641 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50909 | /* 143646 */ GIR_RootConstrainSelectedInstOperands, |
| 50910 | /* 143647 */ // GIR_Coverage, 23528, |
| 50911 | /* 143647 */ GIR_EraseRootFromParent_Done, |
| 50912 | /* 143648 */ // Label 3142: @143648 |
| 50913 | /* 143648 */ GIM_Try, /*On fail goto*//*Label 3143*/ GIMT_Encode4(143710), // Rule ID 23835 // |
| 50914 | /* 143653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50915 | /* 143656 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50916 | /* 143660 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 50917 | /* 143664 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50918 | /* 143668 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50919 | /* 143671 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50920 | /* 143675 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50921 | /* 143679 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50922 | /* 143683 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50923 | /* 143685 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50924 | /* 143692 */ // (saddsat:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPADDSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50925 | /* 143692 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ256rm), |
| 50926 | /* 143695 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50927 | /* 143697 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 50928 | /* 143699 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50929 | /* 143703 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50930 | /* 143708 */ GIR_RootConstrainSelectedInstOperands, |
| 50931 | /* 143709 */ // GIR_Coverage, 23835, |
| 50932 | /* 143709 */ GIR_EraseRootFromParent_Done, |
| 50933 | /* 143710 */ // Label 3143: @143710 |
| 50934 | /* 143710 */ GIM_Try, /*On fail goto*//*Label 3144*/ GIMT_Encode4(143772), // Rule ID 2557 // |
| 50935 | /* 143715 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50936 | /* 143718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50937 | /* 143722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50938 | /* 143726 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50939 | /* 143730 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50940 | /* 143734 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50941 | /* 143737 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50942 | /* 143741 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50943 | /* 143745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50944 | /* 143747 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50945 | /* 143754 */ // (saddsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50946 | /* 143754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWYrm), |
| 50947 | /* 143757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50948 | /* 143759 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50949 | /* 143761 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50950 | /* 143765 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50951 | /* 143770 */ GIR_RootConstrainSelectedInstOperands, |
| 50952 | /* 143771 */ // GIR_Coverage, 2557, |
| 50953 | /* 143771 */ GIR_EraseRootFromParent_Done, |
| 50954 | /* 143772 */ // Label 3144: @143772 |
| 50955 | /* 143772 */ GIM_Try, /*On fail goto*//*Label 3145*/ GIMT_Encode4(143834), // Rule ID 4826 // |
| 50956 | /* 143777 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50957 | /* 143780 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50958 | /* 143784 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50959 | /* 143788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 50960 | /* 143792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 50961 | /* 143796 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 50962 | /* 143799 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 50963 | /* 143803 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 50964 | /* 143807 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 50965 | /* 143809 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 50966 | /* 143816 */ // (saddsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 50967 | /* 143816 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ256rm), |
| 50968 | /* 143819 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 50969 | /* 143821 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 50970 | /* 143823 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 50971 | /* 143827 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 50972 | /* 143832 */ GIR_RootConstrainSelectedInstOperands, |
| 50973 | /* 143833 */ // GIR_Coverage, 4826, |
| 50974 | /* 143833 */ GIR_EraseRootFromParent_Done, |
| 50975 | /* 143834 */ // Label 3145: @143834 |
| 50976 | /* 143834 */ GIM_Try, /*On fail goto*//*Label 3146*/ GIMT_Encode4(143861), // Rule ID 2556 // |
| 50977 | /* 143839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 50978 | /* 143842 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50979 | /* 143846 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50980 | /* 143850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 50981 | /* 143854 */ // (saddsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPADDSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 50982 | /* 143854 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWYrr), |
| 50983 | /* 143859 */ GIR_RootConstrainSelectedInstOperands, |
| 50984 | /* 143860 */ // GIR_Coverage, 2556, |
| 50985 | /* 143860 */ GIR_Done, |
| 50986 | /* 143861 */ // Label 3146: @143861 |
| 50987 | /* 143861 */ GIM_Try, /*On fail goto*//*Label 3147*/ GIMT_Encode4(143888), // Rule ID 4823 // |
| 50988 | /* 143866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 50989 | /* 143869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50990 | /* 143873 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50991 | /* 143877 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 50992 | /* 143881 */ // (saddsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPADDSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 50993 | /* 143881 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWZ256rr), |
| 50994 | /* 143886 */ GIR_RootConstrainSelectedInstOperands, |
| 50995 | /* 143887 */ // GIR_Coverage, 4823, |
| 50996 | /* 143887 */ GIR_Done, |
| 50997 | /* 143888 */ // Label 3147: @143888 |
| 50998 | /* 143888 */ GIM_Reject, |
| 50999 | /* 143889 */ // Label 3141: @143889 |
| 51000 | /* 143889 */ GIM_Reject, |
| 51001 | /* 143890 */ // Label 3121: @143890 |
| 51002 | /* 143890 */ GIM_Try, /*On fail goto*//*Label 3148*/ GIMT_Encode4(144204), |
| 51003 | /* 143895 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 51004 | /* 143898 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 51005 | /* 143901 */ GIM_Try, /*On fail goto*//*Label 3149*/ GIMT_Encode4(143963), // Rule ID 23525 // |
| 51006 | /* 143906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51007 | /* 143909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51008 | /* 143913 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51009 | /* 143917 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51010 | /* 143921 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51011 | /* 143924 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51012 | /* 143928 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51013 | /* 143932 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51014 | /* 143936 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51015 | /* 143938 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51016 | /* 143945 */ // (saddsat:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPADDSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51017 | /* 143945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBYrm), |
| 51018 | /* 143948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51019 | /* 143950 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51020 | /* 143952 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51021 | /* 143956 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51022 | /* 143961 */ GIR_RootConstrainSelectedInstOperands, |
| 51023 | /* 143962 */ // GIR_Coverage, 23525, |
| 51024 | /* 143962 */ GIR_EraseRootFromParent_Done, |
| 51025 | /* 143963 */ // Label 3149: @143963 |
| 51026 | /* 143963 */ GIM_Try, /*On fail goto*//*Label 3150*/ GIMT_Encode4(144025), // Rule ID 23844 // |
| 51027 | /* 143968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51028 | /* 143971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51029 | /* 143975 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51030 | /* 143979 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51031 | /* 143983 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51032 | /* 143986 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51033 | /* 143990 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51034 | /* 143994 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51035 | /* 143998 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51036 | /* 144000 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51037 | /* 144007 */ // (saddsat:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPADDSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51038 | /* 144007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ256rm), |
| 51039 | /* 144010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51040 | /* 144012 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51041 | /* 144014 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51042 | /* 144018 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51043 | /* 144023 */ GIR_RootConstrainSelectedInstOperands, |
| 51044 | /* 144024 */ // GIR_Coverage, 23844, |
| 51045 | /* 144024 */ GIR_EraseRootFromParent_Done, |
| 51046 | /* 144025 */ // Label 3150: @144025 |
| 51047 | /* 144025 */ GIM_Try, /*On fail goto*//*Label 3151*/ GIMT_Encode4(144087), // Rule ID 2551 // |
| 51048 | /* 144030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51049 | /* 144033 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51050 | /* 144037 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51051 | /* 144041 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51052 | /* 144045 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51053 | /* 144049 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51054 | /* 144052 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51055 | /* 144056 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51056 | /* 144060 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51057 | /* 144062 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51058 | /* 144069 */ // (saddsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51059 | /* 144069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBYrm), |
| 51060 | /* 144072 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51061 | /* 144074 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51062 | /* 144076 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51063 | /* 144080 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51064 | /* 144085 */ GIR_RootConstrainSelectedInstOperands, |
| 51065 | /* 144086 */ // GIR_Coverage, 2551, |
| 51066 | /* 144086 */ GIR_EraseRootFromParent_Done, |
| 51067 | /* 144087 */ // Label 3151: @144087 |
| 51068 | /* 144087 */ GIM_Try, /*On fail goto*//*Label 3152*/ GIMT_Encode4(144149), // Rule ID 4844 // |
| 51069 | /* 144092 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51070 | /* 144095 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51071 | /* 144099 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51072 | /* 144103 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51073 | /* 144107 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51074 | /* 144111 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51075 | /* 144114 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51076 | /* 144118 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51077 | /* 144122 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51078 | /* 144124 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51079 | /* 144131 */ // (saddsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51080 | /* 144131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ256rm), |
| 51081 | /* 144134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51082 | /* 144136 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51083 | /* 144138 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51084 | /* 144142 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51085 | /* 144147 */ GIR_RootConstrainSelectedInstOperands, |
| 51086 | /* 144148 */ // GIR_Coverage, 4844, |
| 51087 | /* 144148 */ GIR_EraseRootFromParent_Done, |
| 51088 | /* 144149 */ // Label 3152: @144149 |
| 51089 | /* 144149 */ GIM_Try, /*On fail goto*//*Label 3153*/ GIMT_Encode4(144176), // Rule ID 2550 // |
| 51090 | /* 144154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51091 | /* 144157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51092 | /* 144161 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51093 | /* 144165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51094 | /* 144169 */ // (saddsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPADDSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 51095 | /* 144169 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBYrr), |
| 51096 | /* 144174 */ GIR_RootConstrainSelectedInstOperands, |
| 51097 | /* 144175 */ // GIR_Coverage, 2550, |
| 51098 | /* 144175 */ GIR_Done, |
| 51099 | /* 144176 */ // Label 3153: @144176 |
| 51100 | /* 144176 */ GIM_Try, /*On fail goto*//*Label 3154*/ GIMT_Encode4(144203), // Rule ID 4841 // |
| 51101 | /* 144181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51102 | /* 144184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51103 | /* 144188 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51104 | /* 144192 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51105 | /* 144196 */ // (saddsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPADDSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 51106 | /* 144196 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBZ256rr), |
| 51107 | /* 144201 */ GIR_RootConstrainSelectedInstOperands, |
| 51108 | /* 144202 */ // GIR_Coverage, 4841, |
| 51109 | /* 144202 */ GIR_Done, |
| 51110 | /* 144203 */ // Label 3154: @144203 |
| 51111 | /* 144203 */ GIM_Reject, |
| 51112 | /* 144204 */ // Label 3148: @144204 |
| 51113 | /* 144204 */ GIM_Reject, |
| 51114 | /* 144205 */ // Label 3122: @144205 |
| 51115 | /* 144205 */ GIM_Try, /*On fail goto*//*Label 3155*/ GIMT_Encode4(144360), |
| 51116 | /* 144210 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 51117 | /* 144213 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 51118 | /* 144216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51119 | /* 144220 */ GIM_Try, /*On fail goto*//*Label 3156*/ GIMT_Encode4(144278), // Rule ID 23832 // |
| 51120 | /* 144225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51121 | /* 144228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51122 | /* 144232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51123 | /* 144236 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51124 | /* 144239 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51125 | /* 144243 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51126 | /* 144247 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51127 | /* 144251 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51128 | /* 144253 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51129 | /* 144260 */ // (saddsat:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPADDSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51130 | /* 144260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZrm), |
| 51131 | /* 144263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51132 | /* 144265 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51133 | /* 144267 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51134 | /* 144271 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51135 | /* 144276 */ GIR_RootConstrainSelectedInstOperands, |
| 51136 | /* 144277 */ // GIR_Coverage, 23832, |
| 51137 | /* 144277 */ GIR_EraseRootFromParent_Done, |
| 51138 | /* 144278 */ // Label 3156: @144278 |
| 51139 | /* 144278 */ GIM_Try, /*On fail goto*//*Label 3157*/ GIMT_Encode4(144336), // Rule ID 4820 // |
| 51140 | /* 144283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51141 | /* 144286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51142 | /* 144290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51143 | /* 144294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51144 | /* 144298 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51145 | /* 144301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51146 | /* 144305 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51147 | /* 144309 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51148 | /* 144311 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51149 | /* 144318 */ // (saddsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51150 | /* 144318 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSWZrm), |
| 51151 | /* 144321 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51152 | /* 144323 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51153 | /* 144325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51154 | /* 144329 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51155 | /* 144334 */ GIR_RootConstrainSelectedInstOperands, |
| 51156 | /* 144335 */ // GIR_Coverage, 4820, |
| 51157 | /* 144335 */ GIR_EraseRootFromParent_Done, |
| 51158 | /* 144336 */ // Label 3157: @144336 |
| 51159 | /* 144336 */ GIM_Try, /*On fail goto*//*Label 3158*/ GIMT_Encode4(144359), // Rule ID 4817 // |
| 51160 | /* 144341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51161 | /* 144344 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51162 | /* 144348 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51163 | /* 144352 */ // (saddsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPADDSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 51164 | /* 144352 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSWZrr), |
| 51165 | /* 144357 */ GIR_RootConstrainSelectedInstOperands, |
| 51166 | /* 144358 */ // GIR_Coverage, 4817, |
| 51167 | /* 144358 */ GIR_Done, |
| 51168 | /* 144359 */ // Label 3158: @144359 |
| 51169 | /* 144359 */ GIM_Reject, |
| 51170 | /* 144360 */ // Label 3155: @144360 |
| 51171 | /* 144360 */ GIM_Reject, |
| 51172 | /* 144361 */ // Label 3123: @144361 |
| 51173 | /* 144361 */ GIM_Try, /*On fail goto*//*Label 3159*/ GIMT_Encode4(144516), |
| 51174 | /* 144366 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 51175 | /* 144369 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 51176 | /* 144372 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51177 | /* 144376 */ GIM_Try, /*On fail goto*//*Label 3160*/ GIMT_Encode4(144434), // Rule ID 23841 // |
| 51178 | /* 144381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51179 | /* 144384 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 51180 | /* 144388 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51181 | /* 144392 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51182 | /* 144395 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51183 | /* 144399 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51184 | /* 144403 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51185 | /* 144407 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51186 | /* 144409 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51187 | /* 144416 */ // (saddsat:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPADDSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51188 | /* 144416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZrm), |
| 51189 | /* 144419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51190 | /* 144421 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 51191 | /* 144423 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51192 | /* 144427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51193 | /* 144432 */ GIR_RootConstrainSelectedInstOperands, |
| 51194 | /* 144433 */ // GIR_Coverage, 23841, |
| 51195 | /* 144433 */ GIR_EraseRootFromParent_Done, |
| 51196 | /* 144434 */ // Label 3160: @144434 |
| 51197 | /* 144434 */ GIM_Try, /*On fail goto*//*Label 3161*/ GIMT_Encode4(144492), // Rule ID 4838 // |
| 51198 | /* 144439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51199 | /* 144442 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51200 | /* 144446 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51201 | /* 144450 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51202 | /* 144454 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51203 | /* 144457 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51204 | /* 144461 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51205 | /* 144465 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51206 | /* 144467 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51207 | /* 144474 */ // (saddsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPADDSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51208 | /* 144474 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPADDSBZrm), |
| 51209 | /* 144477 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51210 | /* 144479 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51211 | /* 144481 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51212 | /* 144485 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51213 | /* 144490 */ GIR_RootConstrainSelectedInstOperands, |
| 51214 | /* 144491 */ // GIR_Coverage, 4838, |
| 51215 | /* 144491 */ GIR_EraseRootFromParent_Done, |
| 51216 | /* 144492 */ // Label 3161: @144492 |
| 51217 | /* 144492 */ GIM_Try, /*On fail goto*//*Label 3162*/ GIMT_Encode4(144515), // Rule ID 4835 // |
| 51218 | /* 144497 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51219 | /* 144500 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51220 | /* 144504 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51221 | /* 144508 */ // (saddsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPADDSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 51222 | /* 144508 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPADDSBZrr), |
| 51223 | /* 144513 */ GIR_RootConstrainSelectedInstOperands, |
| 51224 | /* 144514 */ // GIR_Coverage, 4835, |
| 51225 | /* 144514 */ GIR_Done, |
| 51226 | /* 144515 */ // Label 3162: @144515 |
| 51227 | /* 144515 */ GIM_Reject, |
| 51228 | /* 144516 */ // Label 3159: @144516 |
| 51229 | /* 144516 */ GIM_Reject, |
| 51230 | /* 144517 */ // Label 3124: @144517 |
| 51231 | /* 144517 */ GIM_Reject, |
| 51232 | /* 144518 */ // Label 40: @144518 |
| 51233 | /* 144518 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 3169*/ GIMT_Encode4(145583), |
| 51234 | /* 144529 */ /*GILLT_v8s16*//*Label 3163*/ GIMT_Encode4(144577), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 51235 | /* 144545 */ /*GILLT_v16s8*//*Label 3164*/ GIMT_Encode4(144795), |
| 51236 | /* 144549 */ /*GILLT_v16s16*//*Label 3165*/ GIMT_Encode4(145013), GIMT_Encode4(0), GIMT_Encode4(0), |
| 51237 | /* 144561 */ /*GILLT_v32s8*//*Label 3166*/ GIMT_Encode4(145204), |
| 51238 | /* 144565 */ /*GILLT_v32s16*//*Label 3167*/ GIMT_Encode4(145395), GIMT_Encode4(0), |
| 51239 | /* 144573 */ /*GILLT_v64s8*//*Label 3168*/ GIMT_Encode4(145489), |
| 51240 | /* 144577 */ // Label 3163: @144577 |
| 51241 | /* 144577 */ GIM_Try, /*On fail goto*//*Label 3170*/ GIMT_Encode4(144794), |
| 51242 | /* 144582 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 51243 | /* 144585 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 51244 | /* 144588 */ GIM_Try, /*On fail goto*//*Label 3171*/ GIMT_Encode4(144650), // Rule ID 2631 // |
| 51245 | /* 144593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51246 | /* 144596 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51247 | /* 144600 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51248 | /* 144604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51249 | /* 144608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51250 | /* 144612 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51251 | /* 144615 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51252 | /* 144619 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51253 | /* 144623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51254 | /* 144625 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51255 | /* 144632 */ // (usubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51256 | /* 144632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWrm), |
| 51257 | /* 144635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51258 | /* 144637 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51259 | /* 144639 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51260 | /* 144643 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51261 | /* 144648 */ GIR_RootConstrainSelectedInstOperands, |
| 51262 | /* 144649 */ // GIR_Coverage, 2631, |
| 51263 | /* 144649 */ GIR_EraseRootFromParent_Done, |
| 51264 | /* 144650 */ // Label 3171: @144650 |
| 51265 | /* 144650 */ GIM_Try, /*On fail goto*//*Label 3172*/ GIMT_Encode4(144712), // Rule ID 4940 // |
| 51266 | /* 144655 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51267 | /* 144658 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51268 | /* 144662 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51269 | /* 144666 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51270 | /* 144670 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51271 | /* 144674 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51272 | /* 144677 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51273 | /* 144681 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51274 | /* 144685 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51275 | /* 144687 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51276 | /* 144694 */ // (usubsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51277 | /* 144694 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZ128rm), |
| 51278 | /* 144697 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51279 | /* 144699 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51280 | /* 144701 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51281 | /* 144705 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51282 | /* 144710 */ GIR_RootConstrainSelectedInstOperands, |
| 51283 | /* 144711 */ // GIR_Coverage, 4940, |
| 51284 | /* 144711 */ GIR_EraseRootFromParent_Done, |
| 51285 | /* 144712 */ // Label 3172: @144712 |
| 51286 | /* 144712 */ GIM_Try, /*On fail goto*//*Label 3173*/ GIMT_Encode4(144739), // Rule ID 2630 // |
| 51287 | /* 144717 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51288 | /* 144720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51289 | /* 144724 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51290 | /* 144728 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51291 | /* 144732 */ // (usubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPSUBUSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 51292 | /* 144732 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWrr), |
| 51293 | /* 144737 */ GIR_RootConstrainSelectedInstOperands, |
| 51294 | /* 144738 */ // GIR_Coverage, 2630, |
| 51295 | /* 144738 */ GIR_Done, |
| 51296 | /* 144739 */ // Label 3173: @144739 |
| 51297 | /* 144739 */ GIM_Try, /*On fail goto*//*Label 3174*/ GIMT_Encode4(144766), // Rule ID 2632 // |
| 51298 | /* 144744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 51299 | /* 144747 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51300 | /* 144751 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51301 | /* 144755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51302 | /* 144759 */ // (usubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PSUBUSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 51303 | /* 144759 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBUSWrr), |
| 51304 | /* 144764 */ GIR_RootConstrainSelectedInstOperands, |
| 51305 | /* 144765 */ // GIR_Coverage, 2632, |
| 51306 | /* 144765 */ GIR_Done, |
| 51307 | /* 144766 */ // Label 3174: @144766 |
| 51308 | /* 144766 */ GIM_Try, /*On fail goto*//*Label 3175*/ GIMT_Encode4(144793), // Rule ID 4937 // |
| 51309 | /* 144771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51310 | /* 144774 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51311 | /* 144778 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51312 | /* 144782 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51313 | /* 144786 */ // (usubsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPSUBUSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 51314 | /* 144786 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZ128rr), |
| 51315 | /* 144791 */ GIR_RootConstrainSelectedInstOperands, |
| 51316 | /* 144792 */ // GIR_Coverage, 4937, |
| 51317 | /* 144792 */ GIR_Done, |
| 51318 | /* 144793 */ // Label 3175: @144793 |
| 51319 | /* 144793 */ GIM_Reject, |
| 51320 | /* 144794 */ // Label 3170: @144794 |
| 51321 | /* 144794 */ GIM_Reject, |
| 51322 | /* 144795 */ // Label 3164: @144795 |
| 51323 | /* 144795 */ GIM_Try, /*On fail goto*//*Label 3176*/ GIMT_Encode4(145012), |
| 51324 | /* 144800 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 51325 | /* 144803 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 51326 | /* 144806 */ GIM_Try, /*On fail goto*//*Label 3177*/ GIMT_Encode4(144868), // Rule ID 2625 // |
| 51327 | /* 144811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51328 | /* 144814 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51329 | /* 144818 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51330 | /* 144822 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51331 | /* 144826 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51332 | /* 144830 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51333 | /* 144833 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51334 | /* 144837 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51335 | /* 144841 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51336 | /* 144843 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51337 | /* 144850 */ // (usubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51338 | /* 144850 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBrm), |
| 51339 | /* 144853 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51340 | /* 144855 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51341 | /* 144857 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51342 | /* 144861 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51343 | /* 144866 */ GIR_RootConstrainSelectedInstOperands, |
| 51344 | /* 144867 */ // GIR_Coverage, 2625, |
| 51345 | /* 144867 */ GIR_EraseRootFromParent_Done, |
| 51346 | /* 144868 */ // Label 3177: @144868 |
| 51347 | /* 144868 */ GIM_Try, /*On fail goto*//*Label 3178*/ GIMT_Encode4(144930), // Rule ID 4958 // |
| 51348 | /* 144873 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51349 | /* 144876 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51350 | /* 144880 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51351 | /* 144884 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51352 | /* 144888 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51353 | /* 144892 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51354 | /* 144895 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51355 | /* 144899 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51356 | /* 144903 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51357 | /* 144905 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51358 | /* 144912 */ // (usubsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51359 | /* 144912 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZ128rm), |
| 51360 | /* 144915 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51361 | /* 144917 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51362 | /* 144919 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51363 | /* 144923 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51364 | /* 144928 */ GIR_RootConstrainSelectedInstOperands, |
| 51365 | /* 144929 */ // GIR_Coverage, 4958, |
| 51366 | /* 144929 */ GIR_EraseRootFromParent_Done, |
| 51367 | /* 144930 */ // Label 3178: @144930 |
| 51368 | /* 144930 */ GIM_Try, /*On fail goto*//*Label 3179*/ GIMT_Encode4(144957), // Rule ID 2624 // |
| 51369 | /* 144935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51370 | /* 144938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51371 | /* 144942 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51372 | /* 144946 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51373 | /* 144950 */ // (usubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPSUBUSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 51374 | /* 144950 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBrr), |
| 51375 | /* 144955 */ GIR_RootConstrainSelectedInstOperands, |
| 51376 | /* 144956 */ // GIR_Coverage, 2624, |
| 51377 | /* 144956 */ GIR_Done, |
| 51378 | /* 144957 */ // Label 3179: @144957 |
| 51379 | /* 144957 */ GIM_Try, /*On fail goto*//*Label 3180*/ GIMT_Encode4(144984), // Rule ID 2626 // |
| 51380 | /* 144962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 51381 | /* 144965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51382 | /* 144969 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51383 | /* 144973 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51384 | /* 144977 */ // (usubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PSUBUSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 51385 | /* 144977 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBUSBrr), |
| 51386 | /* 144982 */ GIR_RootConstrainSelectedInstOperands, |
| 51387 | /* 144983 */ // GIR_Coverage, 2626, |
| 51388 | /* 144983 */ GIR_Done, |
| 51389 | /* 144984 */ // Label 3180: @144984 |
| 51390 | /* 144984 */ GIM_Try, /*On fail goto*//*Label 3181*/ GIMT_Encode4(145011), // Rule ID 4955 // |
| 51391 | /* 144989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51392 | /* 144992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51393 | /* 144996 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51394 | /* 145000 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51395 | /* 145004 */ // (usubsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPSUBUSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 51396 | /* 145004 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZ128rr), |
| 51397 | /* 145009 */ GIR_RootConstrainSelectedInstOperands, |
| 51398 | /* 145010 */ // GIR_Coverage, 4955, |
| 51399 | /* 145010 */ GIR_Done, |
| 51400 | /* 145011 */ // Label 3181: @145011 |
| 51401 | /* 145011 */ GIM_Reject, |
| 51402 | /* 145012 */ // Label 3176: @145012 |
| 51403 | /* 145012 */ GIM_Reject, |
| 51404 | /* 145013 */ // Label 3165: @145013 |
| 51405 | /* 145013 */ GIM_Try, /*On fail goto*//*Label 3182*/ GIMT_Encode4(145203), |
| 51406 | /* 145018 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 51407 | /* 145021 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 51408 | /* 145024 */ GIM_Try, /*On fail goto*//*Label 3183*/ GIMT_Encode4(145086), // Rule ID 2635 // |
| 51409 | /* 145029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51410 | /* 145032 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51411 | /* 145036 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51412 | /* 145040 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51413 | /* 145044 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51414 | /* 145048 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51415 | /* 145051 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51416 | /* 145055 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51417 | /* 145059 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51418 | /* 145061 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51419 | /* 145068 */ // (usubsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51420 | /* 145068 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWYrm), |
| 51421 | /* 145071 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51422 | /* 145073 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51423 | /* 145075 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51424 | /* 145079 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51425 | /* 145084 */ GIR_RootConstrainSelectedInstOperands, |
| 51426 | /* 145085 */ // GIR_Coverage, 2635, |
| 51427 | /* 145085 */ GIR_EraseRootFromParent_Done, |
| 51428 | /* 145086 */ // Label 3183: @145086 |
| 51429 | /* 145086 */ GIM_Try, /*On fail goto*//*Label 3184*/ GIMT_Encode4(145148), // Rule ID 4934 // |
| 51430 | /* 145091 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51431 | /* 145094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51432 | /* 145098 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51433 | /* 145102 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51434 | /* 145106 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51435 | /* 145110 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51436 | /* 145113 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51437 | /* 145117 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51438 | /* 145121 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51439 | /* 145123 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51440 | /* 145130 */ // (usubsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51441 | /* 145130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZ256rm), |
| 51442 | /* 145133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51443 | /* 145135 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51444 | /* 145137 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51445 | /* 145141 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51446 | /* 145146 */ GIR_RootConstrainSelectedInstOperands, |
| 51447 | /* 145147 */ // GIR_Coverage, 4934, |
| 51448 | /* 145147 */ GIR_EraseRootFromParent_Done, |
| 51449 | /* 145148 */ // Label 3184: @145148 |
| 51450 | /* 145148 */ GIM_Try, /*On fail goto*//*Label 3185*/ GIMT_Encode4(145175), // Rule ID 2634 // |
| 51451 | /* 145153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51452 | /* 145156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51453 | /* 145160 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51454 | /* 145164 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51455 | /* 145168 */ // (usubsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPSUBUSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 51456 | /* 145168 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWYrr), |
| 51457 | /* 145173 */ GIR_RootConstrainSelectedInstOperands, |
| 51458 | /* 145174 */ // GIR_Coverage, 2634, |
| 51459 | /* 145174 */ GIR_Done, |
| 51460 | /* 145175 */ // Label 3185: @145175 |
| 51461 | /* 145175 */ GIM_Try, /*On fail goto*//*Label 3186*/ GIMT_Encode4(145202), // Rule ID 4931 // |
| 51462 | /* 145180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51463 | /* 145183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51464 | /* 145187 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51465 | /* 145191 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51466 | /* 145195 */ // (usubsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPSUBUSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 51467 | /* 145195 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZ256rr), |
| 51468 | /* 145200 */ GIR_RootConstrainSelectedInstOperands, |
| 51469 | /* 145201 */ // GIR_Coverage, 4931, |
| 51470 | /* 145201 */ GIR_Done, |
| 51471 | /* 145202 */ // Label 3186: @145202 |
| 51472 | /* 145202 */ GIM_Reject, |
| 51473 | /* 145203 */ // Label 3182: @145203 |
| 51474 | /* 145203 */ GIM_Reject, |
| 51475 | /* 145204 */ // Label 3166: @145204 |
| 51476 | /* 145204 */ GIM_Try, /*On fail goto*//*Label 3187*/ GIMT_Encode4(145394), |
| 51477 | /* 145209 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 51478 | /* 145212 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 51479 | /* 145215 */ GIM_Try, /*On fail goto*//*Label 3188*/ GIMT_Encode4(145277), // Rule ID 2629 // |
| 51480 | /* 145220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51481 | /* 145223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51482 | /* 145227 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51483 | /* 145231 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51484 | /* 145235 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51485 | /* 145239 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51486 | /* 145242 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51487 | /* 145246 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51488 | /* 145250 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51489 | /* 145252 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51490 | /* 145259 */ // (usubsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51491 | /* 145259 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBYrm), |
| 51492 | /* 145262 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51493 | /* 145264 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51494 | /* 145266 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51495 | /* 145270 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51496 | /* 145275 */ GIR_RootConstrainSelectedInstOperands, |
| 51497 | /* 145276 */ // GIR_Coverage, 2629, |
| 51498 | /* 145276 */ GIR_EraseRootFromParent_Done, |
| 51499 | /* 145277 */ // Label 3188: @145277 |
| 51500 | /* 145277 */ GIM_Try, /*On fail goto*//*Label 3189*/ GIMT_Encode4(145339), // Rule ID 4952 // |
| 51501 | /* 145282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51502 | /* 145285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51503 | /* 145289 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51504 | /* 145293 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51505 | /* 145297 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51506 | /* 145301 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51507 | /* 145304 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51508 | /* 145308 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51509 | /* 145312 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51510 | /* 145314 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51511 | /* 145321 */ // (usubsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51512 | /* 145321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZ256rm), |
| 51513 | /* 145324 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51514 | /* 145326 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51515 | /* 145328 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51516 | /* 145332 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51517 | /* 145337 */ GIR_RootConstrainSelectedInstOperands, |
| 51518 | /* 145338 */ // GIR_Coverage, 4952, |
| 51519 | /* 145338 */ GIR_EraseRootFromParent_Done, |
| 51520 | /* 145339 */ // Label 3189: @145339 |
| 51521 | /* 145339 */ GIM_Try, /*On fail goto*//*Label 3190*/ GIMT_Encode4(145366), // Rule ID 2628 // |
| 51522 | /* 145344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51523 | /* 145347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51524 | /* 145351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51525 | /* 145355 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51526 | /* 145359 */ // (usubsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPSUBUSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 51527 | /* 145359 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBYrr), |
| 51528 | /* 145364 */ GIR_RootConstrainSelectedInstOperands, |
| 51529 | /* 145365 */ // GIR_Coverage, 2628, |
| 51530 | /* 145365 */ GIR_Done, |
| 51531 | /* 145366 */ // Label 3190: @145366 |
| 51532 | /* 145366 */ GIM_Try, /*On fail goto*//*Label 3191*/ GIMT_Encode4(145393), // Rule ID 4949 // |
| 51533 | /* 145371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51534 | /* 145374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51535 | /* 145378 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51536 | /* 145382 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51537 | /* 145386 */ // (usubsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPSUBUSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 51538 | /* 145386 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZ256rr), |
| 51539 | /* 145391 */ GIR_RootConstrainSelectedInstOperands, |
| 51540 | /* 145392 */ // GIR_Coverage, 4949, |
| 51541 | /* 145392 */ GIR_Done, |
| 51542 | /* 145393 */ // Label 3191: @145393 |
| 51543 | /* 145393 */ GIM_Reject, |
| 51544 | /* 145394 */ // Label 3187: @145394 |
| 51545 | /* 145394 */ GIM_Reject, |
| 51546 | /* 145395 */ // Label 3167: @145395 |
| 51547 | /* 145395 */ GIM_Try, /*On fail goto*//*Label 3192*/ GIMT_Encode4(145488), |
| 51548 | /* 145400 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 51549 | /* 145403 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 51550 | /* 145406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51551 | /* 145410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51552 | /* 145414 */ GIM_Try, /*On fail goto*//*Label 3193*/ GIMT_Encode4(145468), // Rule ID 4928 // |
| 51553 | /* 145419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51554 | /* 145422 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51555 | /* 145426 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51556 | /* 145430 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51557 | /* 145433 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51558 | /* 145437 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51559 | /* 145441 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51560 | /* 145443 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51561 | /* 145450 */ // (usubsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51562 | /* 145450 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZrm), |
| 51563 | /* 145453 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51564 | /* 145455 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51565 | /* 145457 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51566 | /* 145461 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51567 | /* 145466 */ GIR_RootConstrainSelectedInstOperands, |
| 51568 | /* 145467 */ // GIR_Coverage, 4928, |
| 51569 | /* 145467 */ GIR_EraseRootFromParent_Done, |
| 51570 | /* 145468 */ // Label 3193: @145468 |
| 51571 | /* 145468 */ GIM_Try, /*On fail goto*//*Label 3194*/ GIMT_Encode4(145487), // Rule ID 4925 // |
| 51572 | /* 145473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51573 | /* 145476 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51574 | /* 145480 */ // (usubsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPSUBUSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 51575 | /* 145480 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSWZrr), |
| 51576 | /* 145485 */ GIR_RootConstrainSelectedInstOperands, |
| 51577 | /* 145486 */ // GIR_Coverage, 4925, |
| 51578 | /* 145486 */ GIR_Done, |
| 51579 | /* 145487 */ // Label 3194: @145487 |
| 51580 | /* 145487 */ GIM_Reject, |
| 51581 | /* 145488 */ // Label 3192: @145488 |
| 51582 | /* 145488 */ GIM_Reject, |
| 51583 | /* 145489 */ // Label 3168: @145489 |
| 51584 | /* 145489 */ GIM_Try, /*On fail goto*//*Label 3195*/ GIMT_Encode4(145582), |
| 51585 | /* 145494 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 51586 | /* 145497 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 51587 | /* 145500 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51588 | /* 145504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51589 | /* 145508 */ GIM_Try, /*On fail goto*//*Label 3196*/ GIMT_Encode4(145562), // Rule ID 4946 // |
| 51590 | /* 145513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51591 | /* 145516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51592 | /* 145520 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51593 | /* 145524 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51594 | /* 145527 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51595 | /* 145531 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51596 | /* 145535 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51597 | /* 145537 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51598 | /* 145544 */ // (usubsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBUSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51599 | /* 145544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZrm), |
| 51600 | /* 145547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51601 | /* 145549 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51602 | /* 145551 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51603 | /* 145555 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51604 | /* 145560 */ GIR_RootConstrainSelectedInstOperands, |
| 51605 | /* 145561 */ // GIR_Coverage, 4946, |
| 51606 | /* 145561 */ GIR_EraseRootFromParent_Done, |
| 51607 | /* 145562 */ // Label 3196: @145562 |
| 51608 | /* 145562 */ GIM_Try, /*On fail goto*//*Label 3197*/ GIMT_Encode4(145581), // Rule ID 4943 // |
| 51609 | /* 145567 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51610 | /* 145570 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51611 | /* 145574 */ // (usubsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPSUBUSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 51612 | /* 145574 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBUSBZrr), |
| 51613 | /* 145579 */ GIR_RootConstrainSelectedInstOperands, |
| 51614 | /* 145580 */ // GIR_Coverage, 4943, |
| 51615 | /* 145580 */ GIR_Done, |
| 51616 | /* 145581 */ // Label 3197: @145581 |
| 51617 | /* 145581 */ GIM_Reject, |
| 51618 | /* 145582 */ // Label 3195: @145582 |
| 51619 | /* 145582 */ GIM_Reject, |
| 51620 | /* 145583 */ // Label 3169: @145583 |
| 51621 | /* 145583 */ GIM_Reject, |
| 51622 | /* 145584 */ // Label 41: @145584 |
| 51623 | /* 145584 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(13), GIMT_Encode2(25), /*)*//*default:*//*Label 3204*/ GIMT_Encode4(146649), |
| 51624 | /* 145595 */ /*GILLT_v8s16*//*Label 3198*/ GIMT_Encode4(145643), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 51625 | /* 145611 */ /*GILLT_v16s8*//*Label 3199*/ GIMT_Encode4(145861), |
| 51626 | /* 145615 */ /*GILLT_v16s16*//*Label 3200*/ GIMT_Encode4(146079), GIMT_Encode4(0), GIMT_Encode4(0), |
| 51627 | /* 145627 */ /*GILLT_v32s8*//*Label 3201*/ GIMT_Encode4(146270), |
| 51628 | /* 145631 */ /*GILLT_v32s16*//*Label 3202*/ GIMT_Encode4(146461), GIMT_Encode4(0), |
| 51629 | /* 145639 */ /*GILLT_v64s8*//*Label 3203*/ GIMT_Encode4(146555), |
| 51630 | /* 145643 */ // Label 3198: @145643 |
| 51631 | /* 145643 */ GIM_Try, /*On fail goto*//*Label 3205*/ GIMT_Encode4(145860), |
| 51632 | /* 145648 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 51633 | /* 145651 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 51634 | /* 145654 */ GIM_Try, /*On fail goto*//*Label 3206*/ GIMT_Encode4(145716), // Rule ID 2619 // |
| 51635 | /* 145659 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51636 | /* 145662 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51637 | /* 145666 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51638 | /* 145670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51639 | /* 145674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51640 | /* 145678 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51641 | /* 145681 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51642 | /* 145685 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51643 | /* 145689 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51644 | /* 145691 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51645 | /* 145698 */ // (ssubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51646 | /* 145698 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWrm), |
| 51647 | /* 145701 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51648 | /* 145703 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51649 | /* 145705 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51650 | /* 145709 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51651 | /* 145714 */ GIR_RootConstrainSelectedInstOperands, |
| 51652 | /* 145715 */ // GIR_Coverage, 2619, |
| 51653 | /* 145715 */ GIR_EraseRootFromParent_Done, |
| 51654 | /* 145716 */ // Label 3206: @145716 |
| 51655 | /* 145716 */ GIM_Try, /*On fail goto*//*Label 3207*/ GIMT_Encode4(145778), // Rule ID 4868 // |
| 51656 | /* 145721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51657 | /* 145724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51658 | /* 145728 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51659 | /* 145732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51660 | /* 145736 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51661 | /* 145740 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51662 | /* 145743 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51663 | /* 145747 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51664 | /* 145751 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51665 | /* 145753 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51666 | /* 145760 */ // (ssubsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51667 | /* 145760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZ128rm), |
| 51668 | /* 145763 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51669 | /* 145765 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51670 | /* 145767 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51671 | /* 145771 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51672 | /* 145776 */ GIR_RootConstrainSelectedInstOperands, |
| 51673 | /* 145777 */ // GIR_Coverage, 4868, |
| 51674 | /* 145777 */ GIR_EraseRootFromParent_Done, |
| 51675 | /* 145778 */ // Label 3207: @145778 |
| 51676 | /* 145778 */ GIM_Try, /*On fail goto*//*Label 3208*/ GIMT_Encode4(145805), // Rule ID 2618 // |
| 51677 | /* 145783 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51678 | /* 145786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51679 | /* 145790 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51680 | /* 145794 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51681 | /* 145798 */ // (ssubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPSUBSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 51682 | /* 145798 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWrr), |
| 51683 | /* 145803 */ GIR_RootConstrainSelectedInstOperands, |
| 51684 | /* 145804 */ // GIR_Coverage, 2618, |
| 51685 | /* 145804 */ GIR_Done, |
| 51686 | /* 145805 */ // Label 3208: @145805 |
| 51687 | /* 145805 */ GIM_Try, /*On fail goto*//*Label 3209*/ GIMT_Encode4(145832), // Rule ID 2620 // |
| 51688 | /* 145810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 51689 | /* 145813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51690 | /* 145817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51691 | /* 145821 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51692 | /* 145825 */ // (ssubsat:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PSUBSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 51693 | /* 145825 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBSWrr), |
| 51694 | /* 145830 */ GIR_RootConstrainSelectedInstOperands, |
| 51695 | /* 145831 */ // GIR_Coverage, 2620, |
| 51696 | /* 145831 */ GIR_Done, |
| 51697 | /* 145832 */ // Label 3209: @145832 |
| 51698 | /* 145832 */ GIM_Try, /*On fail goto*//*Label 3210*/ GIMT_Encode4(145859), // Rule ID 4865 // |
| 51699 | /* 145837 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51700 | /* 145840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51701 | /* 145844 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51702 | /* 145848 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51703 | /* 145852 */ // (ssubsat:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPSUBSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 51704 | /* 145852 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZ128rr), |
| 51705 | /* 145857 */ GIR_RootConstrainSelectedInstOperands, |
| 51706 | /* 145858 */ // GIR_Coverage, 4865, |
| 51707 | /* 145858 */ GIR_Done, |
| 51708 | /* 145859 */ // Label 3210: @145859 |
| 51709 | /* 145859 */ GIM_Reject, |
| 51710 | /* 145860 */ // Label 3205: @145860 |
| 51711 | /* 145860 */ GIM_Reject, |
| 51712 | /* 145861 */ // Label 3199: @145861 |
| 51713 | /* 145861 */ GIM_Try, /*On fail goto*//*Label 3211*/ GIMT_Encode4(146078), |
| 51714 | /* 145866 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 51715 | /* 145869 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 51716 | /* 145872 */ GIM_Try, /*On fail goto*//*Label 3212*/ GIMT_Encode4(145934), // Rule ID 2613 // |
| 51717 | /* 145877 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51718 | /* 145880 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51719 | /* 145884 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51720 | /* 145888 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51721 | /* 145892 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51722 | /* 145896 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51723 | /* 145899 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51724 | /* 145903 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51725 | /* 145907 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51726 | /* 145909 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51727 | /* 145916 */ // (ssubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51728 | /* 145916 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBrm), |
| 51729 | /* 145919 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51730 | /* 145921 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51731 | /* 145923 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51732 | /* 145927 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51733 | /* 145932 */ GIR_RootConstrainSelectedInstOperands, |
| 51734 | /* 145933 */ // GIR_Coverage, 2613, |
| 51735 | /* 145933 */ GIR_EraseRootFromParent_Done, |
| 51736 | /* 145934 */ // Label 3212: @145934 |
| 51737 | /* 145934 */ GIM_Try, /*On fail goto*//*Label 3213*/ GIMT_Encode4(145996), // Rule ID 4886 // |
| 51738 | /* 145939 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51739 | /* 145942 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51740 | /* 145946 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51741 | /* 145950 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51742 | /* 145954 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51743 | /* 145958 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51744 | /* 145961 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51745 | /* 145965 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51746 | /* 145969 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51747 | /* 145971 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51748 | /* 145978 */ // (ssubsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51749 | /* 145978 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZ128rm), |
| 51750 | /* 145981 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51751 | /* 145983 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51752 | /* 145985 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51753 | /* 145989 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51754 | /* 145994 */ GIR_RootConstrainSelectedInstOperands, |
| 51755 | /* 145995 */ // GIR_Coverage, 4886, |
| 51756 | /* 145995 */ GIR_EraseRootFromParent_Done, |
| 51757 | /* 145996 */ // Label 3213: @145996 |
| 51758 | /* 145996 */ GIM_Try, /*On fail goto*//*Label 3214*/ GIMT_Encode4(146023), // Rule ID 2612 // |
| 51759 | /* 146001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 51760 | /* 146004 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51761 | /* 146008 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51762 | /* 146012 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51763 | /* 146016 */ // (ssubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPSUBSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 51764 | /* 146016 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBrr), |
| 51765 | /* 146021 */ GIR_RootConstrainSelectedInstOperands, |
| 51766 | /* 146022 */ // GIR_Coverage, 2612, |
| 51767 | /* 146022 */ GIR_Done, |
| 51768 | /* 146023 */ // Label 3214: @146023 |
| 51769 | /* 146023 */ GIM_Try, /*On fail goto*//*Label 3215*/ GIMT_Encode4(146050), // Rule ID 2614 // |
| 51770 | /* 146028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 51771 | /* 146031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51772 | /* 146035 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51773 | /* 146039 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 51774 | /* 146043 */ // (ssubsat:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PSUBSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 51775 | /* 146043 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PSUBSBrr), |
| 51776 | /* 146048 */ GIR_RootConstrainSelectedInstOperands, |
| 51777 | /* 146049 */ // GIR_Coverage, 2614, |
| 51778 | /* 146049 */ GIR_Done, |
| 51779 | /* 146050 */ // Label 3215: @146050 |
| 51780 | /* 146050 */ GIM_Try, /*On fail goto*//*Label 3216*/ GIMT_Encode4(146077), // Rule ID 4883 // |
| 51781 | /* 146055 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51782 | /* 146058 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51783 | /* 146062 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51784 | /* 146066 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 51785 | /* 146070 */ // (ssubsat:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPSUBSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 51786 | /* 146070 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZ128rr), |
| 51787 | /* 146075 */ GIR_RootConstrainSelectedInstOperands, |
| 51788 | /* 146076 */ // GIR_Coverage, 4883, |
| 51789 | /* 146076 */ GIR_Done, |
| 51790 | /* 146077 */ // Label 3216: @146077 |
| 51791 | /* 146077 */ GIM_Reject, |
| 51792 | /* 146078 */ // Label 3211: @146078 |
| 51793 | /* 146078 */ GIM_Reject, |
| 51794 | /* 146079 */ // Label 3200: @146079 |
| 51795 | /* 146079 */ GIM_Try, /*On fail goto*//*Label 3217*/ GIMT_Encode4(146269), |
| 51796 | /* 146084 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 51797 | /* 146087 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 51798 | /* 146090 */ GIM_Try, /*On fail goto*//*Label 3218*/ GIMT_Encode4(146152), // Rule ID 2623 // |
| 51799 | /* 146095 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51800 | /* 146098 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51801 | /* 146102 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51802 | /* 146106 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51803 | /* 146110 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51804 | /* 146114 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51805 | /* 146117 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51806 | /* 146121 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51807 | /* 146125 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51808 | /* 146127 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51809 | /* 146134 */ // (ssubsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51810 | /* 146134 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWYrm), |
| 51811 | /* 146137 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51812 | /* 146139 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51813 | /* 146141 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51814 | /* 146145 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51815 | /* 146150 */ GIR_RootConstrainSelectedInstOperands, |
| 51816 | /* 146151 */ // GIR_Coverage, 2623, |
| 51817 | /* 146151 */ GIR_EraseRootFromParent_Done, |
| 51818 | /* 146152 */ // Label 3218: @146152 |
| 51819 | /* 146152 */ GIM_Try, /*On fail goto*//*Label 3219*/ GIMT_Encode4(146214), // Rule ID 4862 // |
| 51820 | /* 146157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51821 | /* 146160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51822 | /* 146164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51823 | /* 146168 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51824 | /* 146172 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51825 | /* 146176 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51826 | /* 146179 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51827 | /* 146183 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51828 | /* 146187 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51829 | /* 146189 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51830 | /* 146196 */ // (ssubsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51831 | /* 146196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZ256rm), |
| 51832 | /* 146199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51833 | /* 146201 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51834 | /* 146203 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51835 | /* 146207 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51836 | /* 146212 */ GIR_RootConstrainSelectedInstOperands, |
| 51837 | /* 146213 */ // GIR_Coverage, 4862, |
| 51838 | /* 146213 */ GIR_EraseRootFromParent_Done, |
| 51839 | /* 146214 */ // Label 3219: @146214 |
| 51840 | /* 146214 */ GIM_Try, /*On fail goto*//*Label 3220*/ GIMT_Encode4(146241), // Rule ID 2622 // |
| 51841 | /* 146219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51842 | /* 146222 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51843 | /* 146226 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51844 | /* 146230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51845 | /* 146234 */ // (ssubsat:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPSUBSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 51846 | /* 146234 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWYrr), |
| 51847 | /* 146239 */ GIR_RootConstrainSelectedInstOperands, |
| 51848 | /* 146240 */ // GIR_Coverage, 2622, |
| 51849 | /* 146240 */ GIR_Done, |
| 51850 | /* 146241 */ // Label 3220: @146241 |
| 51851 | /* 146241 */ GIM_Try, /*On fail goto*//*Label 3221*/ GIMT_Encode4(146268), // Rule ID 4859 // |
| 51852 | /* 146246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51853 | /* 146249 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51854 | /* 146253 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51855 | /* 146257 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51856 | /* 146261 */ // (ssubsat:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPSUBSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 51857 | /* 146261 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZ256rr), |
| 51858 | /* 146266 */ GIR_RootConstrainSelectedInstOperands, |
| 51859 | /* 146267 */ // GIR_Coverage, 4859, |
| 51860 | /* 146267 */ GIR_Done, |
| 51861 | /* 146268 */ // Label 3221: @146268 |
| 51862 | /* 146268 */ GIM_Reject, |
| 51863 | /* 146269 */ // Label 3217: @146269 |
| 51864 | /* 146269 */ GIM_Reject, |
| 51865 | /* 146270 */ // Label 3201: @146270 |
| 51866 | /* 146270 */ GIM_Try, /*On fail goto*//*Label 3222*/ GIMT_Encode4(146460), |
| 51867 | /* 146275 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 51868 | /* 146278 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 51869 | /* 146281 */ GIM_Try, /*On fail goto*//*Label 3223*/ GIMT_Encode4(146343), // Rule ID 2617 // |
| 51870 | /* 146286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51871 | /* 146289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51872 | /* 146293 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51873 | /* 146297 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51874 | /* 146301 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51875 | /* 146305 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51876 | /* 146308 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51877 | /* 146312 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51878 | /* 146316 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51879 | /* 146318 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51880 | /* 146325 */ // (ssubsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51881 | /* 146325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBYrm), |
| 51882 | /* 146328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51883 | /* 146330 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51884 | /* 146332 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51885 | /* 146336 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51886 | /* 146341 */ GIR_RootConstrainSelectedInstOperands, |
| 51887 | /* 146342 */ // GIR_Coverage, 2617, |
| 51888 | /* 146342 */ GIR_EraseRootFromParent_Done, |
| 51889 | /* 146343 */ // Label 3223: @146343 |
| 51890 | /* 146343 */ GIM_Try, /*On fail goto*//*Label 3224*/ GIMT_Encode4(146405), // Rule ID 4880 // |
| 51891 | /* 146348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51892 | /* 146351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51893 | /* 146355 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51894 | /* 146359 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51895 | /* 146363 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51896 | /* 146367 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51897 | /* 146370 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51898 | /* 146374 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51899 | /* 146378 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51900 | /* 146380 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51901 | /* 146387 */ // (ssubsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51902 | /* 146387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZ256rm), |
| 51903 | /* 146390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51904 | /* 146392 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51905 | /* 146394 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51906 | /* 146398 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51907 | /* 146403 */ GIR_RootConstrainSelectedInstOperands, |
| 51908 | /* 146404 */ // GIR_Coverage, 4880, |
| 51909 | /* 146404 */ GIR_EraseRootFromParent_Done, |
| 51910 | /* 146405 */ // Label 3224: @146405 |
| 51911 | /* 146405 */ GIM_Try, /*On fail goto*//*Label 3225*/ GIMT_Encode4(146432), // Rule ID 2616 // |
| 51912 | /* 146410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 51913 | /* 146413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51914 | /* 146417 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51915 | /* 146421 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 51916 | /* 146425 */ // (ssubsat:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPSUBSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 51917 | /* 146425 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBYrr), |
| 51918 | /* 146430 */ GIR_RootConstrainSelectedInstOperands, |
| 51919 | /* 146431 */ // GIR_Coverage, 2616, |
| 51920 | /* 146431 */ GIR_Done, |
| 51921 | /* 146432 */ // Label 3225: @146432 |
| 51922 | /* 146432 */ GIM_Try, /*On fail goto*//*Label 3226*/ GIMT_Encode4(146459), // Rule ID 4877 // |
| 51923 | /* 146437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 51924 | /* 146440 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51925 | /* 146444 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51926 | /* 146448 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 51927 | /* 146452 */ // (ssubsat:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPSUBSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 51928 | /* 146452 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZ256rr), |
| 51929 | /* 146457 */ GIR_RootConstrainSelectedInstOperands, |
| 51930 | /* 146458 */ // GIR_Coverage, 4877, |
| 51931 | /* 146458 */ GIR_Done, |
| 51932 | /* 146459 */ // Label 3226: @146459 |
| 51933 | /* 146459 */ GIM_Reject, |
| 51934 | /* 146460 */ // Label 3222: @146460 |
| 51935 | /* 146460 */ GIM_Reject, |
| 51936 | /* 146461 */ // Label 3202: @146461 |
| 51937 | /* 146461 */ GIM_Try, /*On fail goto*//*Label 3227*/ GIMT_Encode4(146554), |
| 51938 | /* 146466 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 51939 | /* 146469 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 51940 | /* 146472 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51941 | /* 146476 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51942 | /* 146480 */ GIM_Try, /*On fail goto*//*Label 3228*/ GIMT_Encode4(146534), // Rule ID 4856 // |
| 51943 | /* 146485 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51944 | /* 146488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51945 | /* 146492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51946 | /* 146496 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51947 | /* 146499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51948 | /* 146503 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51949 | /* 146507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51950 | /* 146509 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51951 | /* 146516 */ // (ssubsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51952 | /* 146516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZrm), |
| 51953 | /* 146519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51954 | /* 146521 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51955 | /* 146523 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51956 | /* 146527 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51957 | /* 146532 */ GIR_RootConstrainSelectedInstOperands, |
| 51958 | /* 146533 */ // GIR_Coverage, 4856, |
| 51959 | /* 146533 */ GIR_EraseRootFromParent_Done, |
| 51960 | /* 146534 */ // Label 3228: @146534 |
| 51961 | /* 146534 */ GIM_Try, /*On fail goto*//*Label 3229*/ GIMT_Encode4(146553), // Rule ID 4853 // |
| 51962 | /* 146539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51963 | /* 146542 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51964 | /* 146546 */ // (ssubsat:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPSUBSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 51965 | /* 146546 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSWZrr), |
| 51966 | /* 146551 */ GIR_RootConstrainSelectedInstOperands, |
| 51967 | /* 146552 */ // GIR_Coverage, 4853, |
| 51968 | /* 146552 */ GIR_Done, |
| 51969 | /* 146553 */ // Label 3229: @146553 |
| 51970 | /* 146553 */ GIM_Reject, |
| 51971 | /* 146554 */ // Label 3227: @146554 |
| 51972 | /* 146554 */ GIM_Reject, |
| 51973 | /* 146555 */ // Label 3203: @146555 |
| 51974 | /* 146555 */ GIM_Try, /*On fail goto*//*Label 3230*/ GIMT_Encode4(146648), |
| 51975 | /* 146560 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 51976 | /* 146563 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 51977 | /* 146566 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51978 | /* 146570 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 51979 | /* 146574 */ GIM_Try, /*On fail goto*//*Label 3231*/ GIMT_Encode4(146628), // Rule ID 4874 // |
| 51980 | /* 146579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 51981 | /* 146582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 51982 | /* 146586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 51983 | /* 146590 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 51984 | /* 146593 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 51985 | /* 146597 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 51986 | /* 146601 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 51987 | /* 146603 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 51988 | /* 146610 */ // (ssubsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPSUBSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 51989 | /* 146610 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZrm), |
| 51990 | /* 146613 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 51991 | /* 146615 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 51992 | /* 146617 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 51993 | /* 146621 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 51994 | /* 146626 */ GIR_RootConstrainSelectedInstOperands, |
| 51995 | /* 146627 */ // GIR_Coverage, 4874, |
| 51996 | /* 146627 */ GIR_EraseRootFromParent_Done, |
| 51997 | /* 146628 */ // Label 3231: @146628 |
| 51998 | /* 146628 */ GIM_Try, /*On fail goto*//*Label 3232*/ GIMT_Encode4(146647), // Rule ID 4871 // |
| 51999 | /* 146633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 52000 | /* 146636 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 52001 | /* 146640 */ // (ssubsat:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPSUBSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 52002 | /* 146640 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPSUBSBZrr), |
| 52003 | /* 146645 */ GIR_RootConstrainSelectedInstOperands, |
| 52004 | /* 146646 */ // GIR_Coverage, 4871, |
| 52005 | /* 146646 */ GIR_Done, |
| 52006 | /* 146647 */ // Label 3232: @146647 |
| 52007 | /* 146647 */ GIM_Reject, |
| 52008 | /* 146648 */ // Label 3230: @146648 |
| 52009 | /* 146648 */ GIM_Reject, |
| 52010 | /* 146649 */ // Label 3204: @146649 |
| 52011 | /* 146649 */ GIM_Reject, |
| 52012 | /* 146650 */ // Label 42: @146650 |
| 52013 | /* 146650 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3246*/ GIMT_Encode4(152563), |
| 52014 | /* 146661 */ /*GILLT_s16*//*Label 3233*/ GIMT_Encode4(146745), |
| 52015 | /* 146665 */ /*GILLT_s32*//*Label 3234*/ GIMT_Encode4(146905), |
| 52016 | /* 146669 */ /*GILLT_s64*//*Label 3235*/ GIMT_Encode4(148302), |
| 52017 | /* 146673 */ /*GILLT_s80*//*Label 3236*/ GIMT_Encode4(149843), GIMT_Encode4(0), GIMT_Encode4(0), |
| 52018 | /* 146685 */ /*GILLT_v2s64*//*Label 3237*/ GIMT_Encode4(150409), GIMT_Encode4(0), |
| 52019 | /* 146693 */ /*GILLT_v4s32*//*Label 3238*/ GIMT_Encode4(150763), |
| 52020 | /* 146697 */ /*GILLT_v4s64*//*Label 3239*/ GIMT_Encode4(151117), GIMT_Encode4(0), |
| 52021 | /* 146705 */ /*GILLT_v8s16*//*Label 3240*/ GIMT_Encode4(151440), |
| 52022 | /* 146709 */ /*GILLT_v8s32*//*Label 3241*/ GIMT_Encode4(151600), |
| 52023 | /* 146713 */ /*GILLT_v8s64*//*Label 3242*/ GIMT_Encode4(151923), GIMT_Encode4(0), GIMT_Encode4(0), |
| 52024 | /* 146725 */ /*GILLT_v16s16*//*Label 3243*/ GIMT_Encode4(152083), |
| 52025 | /* 146729 */ /*GILLT_v16s32*//*Label 3244*/ GIMT_Encode4(152243), GIMT_Encode4(0), GIMT_Encode4(0), |
| 52026 | /* 146741 */ /*GILLT_v32s16*//*Label 3245*/ GIMT_Encode4(152403), |
| 52027 | /* 146745 */ // Label 3233: @146745 |
| 52028 | /* 146745 */ GIM_Try, /*On fail goto*//*Label 3247*/ GIMT_Encode4(146904), |
| 52029 | /* 146750 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 52030 | /* 146753 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 52031 | /* 146756 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52032 | /* 146760 */ GIM_Try, /*On fail goto*//*Label 3248*/ GIMT_Encode4(146818), // Rule ID 24332 // |
| 52033 | /* 146765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 52034 | /* 146768 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52035 | /* 146772 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52036 | /* 146776 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52037 | /* 146779 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52038 | /* 146783 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52039 | /* 146787 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52040 | /* 146791 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52041 | /* 146793 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52042 | /* 146800 */ // (fadd:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1) => (VADDSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52043 | /* 146800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSHZrm), |
| 52044 | /* 146803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52045 | /* 146805 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52046 | /* 146807 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52047 | /* 146811 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52048 | /* 146816 */ GIR_RootConstrainSelectedInstOperands, |
| 52049 | /* 146817 */ // GIR_Coverage, 24332, |
| 52050 | /* 146817 */ GIR_EraseRootFromParent_Done, |
| 52051 | /* 146818 */ // Label 3248: @146818 |
| 52052 | /* 146818 */ GIM_Try, /*On fail goto*//*Label 3249*/ GIMT_Encode4(146876), // Rule ID 5959 // |
| 52053 | /* 146823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 52054 | /* 146826 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52055 | /* 146830 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52056 | /* 146834 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52057 | /* 146838 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52058 | /* 146841 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52059 | /* 146845 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52060 | /* 146849 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52061 | /* 146851 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52062 | /* 146858 */ // (fadd:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52063 | /* 146858 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSHZrm), |
| 52064 | /* 146861 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52065 | /* 146863 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52066 | /* 146865 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52067 | /* 146869 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52068 | /* 146874 */ GIR_RootConstrainSelectedInstOperands, |
| 52069 | /* 146875 */ // GIR_Coverage, 5959, |
| 52070 | /* 146875 */ GIR_EraseRootFromParent_Done, |
| 52071 | /* 146876 */ // Label 3249: @146876 |
| 52072 | /* 146876 */ GIM_Try, /*On fail goto*//*Label 3250*/ GIMT_Encode4(146903), // Rule ID 5957 // |
| 52073 | /* 146881 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 52074 | /* 146884 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52075 | /* 146888 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 52076 | /* 146892 */ // (fadd:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VADDSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 52077 | /* 146892 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSHZrr), |
| 52078 | /* 146897 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 52079 | /* 146901 */ GIR_RootConstrainSelectedInstOperands, |
| 52080 | /* 146902 */ // GIR_Coverage, 5957, |
| 52081 | /* 146902 */ GIR_Done, |
| 52082 | /* 146903 */ // Label 3250: @146903 |
| 52083 | /* 146903 */ GIM_Reject, |
| 52084 | /* 146904 */ // Label 3247: @146904 |
| 52085 | /* 146904 */ GIM_Reject, |
| 52086 | /* 146905 */ // Label 3234: @146905 |
| 52087 | /* 146905 */ GIM_Try, /*On fail goto*//*Label 3251*/ GIMT_Encode4(148301), |
| 52088 | /* 146910 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 52089 | /* 146913 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 52090 | /* 146916 */ GIM_Try, /*On fail goto*//*Label 3252*/ GIMT_Encode4(146998), // Rule ID 26100 // |
| 52091 | /* 146921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52092 | /* 146924 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52093 | /* 146928 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52094 | /* 146932 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52095 | /* 146936 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52096 | /* 146940 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52097 | /* 146944 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52098 | /* 146948 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52099 | /* 146951 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52100 | /* 146955 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52101 | /* 146962 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52102 | /* 146966 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52103 | /* 146970 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52104 | /* 146972 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52105 | /* 146979 */ // (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) |
| 52106 | /* 146979 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 52107 | /* 146982 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52108 | /* 146984 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52109 | /* 146986 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52110 | /* 146990 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52111 | /* 146996 */ GIR_RootConstrainSelectedInstOperands, |
| 52112 | /* 146997 */ // GIR_Coverage, 26100, |
| 52113 | /* 146997 */ GIR_EraseRootFromParent_Done, |
| 52114 | /* 146998 */ // Label 3252: @146998 |
| 52115 | /* 146998 */ GIM_Try, /*On fail goto*//*Label 3253*/ GIMT_Encode4(147080), // Rule ID 26101 // |
| 52116 | /* 147003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52117 | /* 147006 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52118 | /* 147010 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52119 | /* 147014 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52120 | /* 147018 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52121 | /* 147022 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52122 | /* 147026 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52123 | /* 147030 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52124 | /* 147033 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52125 | /* 147037 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52126 | /* 147044 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52127 | /* 147048 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52128 | /* 147052 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52129 | /* 147054 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52130 | /* 147061 */ // (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) |
| 52131 | /* 147061 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 52132 | /* 147064 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52133 | /* 147066 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52134 | /* 147068 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52135 | /* 147072 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52136 | /* 147078 */ GIR_RootConstrainSelectedInstOperands, |
| 52137 | /* 147079 */ // GIR_Coverage, 26101, |
| 52138 | /* 147079 */ GIR_EraseRootFromParent_Done, |
| 52139 | /* 147080 */ // Label 3253: @147080 |
| 52140 | /* 147080 */ GIM_Try, /*On fail goto*//*Label 3254*/ GIMT_Encode4(147162), // Rule ID 26102 // |
| 52141 | /* 147085 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52142 | /* 147088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52143 | /* 147092 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52144 | /* 147096 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52145 | /* 147100 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52146 | /* 147104 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52147 | /* 147108 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52148 | /* 147112 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52149 | /* 147115 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52150 | /* 147119 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52151 | /* 147126 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52152 | /* 147130 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52153 | /* 147134 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52154 | /* 147136 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52155 | /* 147143 */ // (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) |
| 52156 | /* 147143 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 52157 | /* 147146 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52158 | /* 147148 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52159 | /* 147150 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52160 | /* 147154 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52161 | /* 147160 */ GIR_RootConstrainSelectedInstOperands, |
| 52162 | /* 147161 */ // GIR_Coverage, 26102, |
| 52163 | /* 147161 */ GIR_EraseRootFromParent_Done, |
| 52164 | /* 147162 */ // Label 3254: @147162 |
| 52165 | /* 147162 */ GIM_Try, /*On fail goto*//*Label 3255*/ GIMT_Encode4(147244), // Rule ID 22528 // |
| 52166 | /* 147167 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52167 | /* 147170 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52168 | /* 147174 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52169 | /* 147178 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52170 | /* 147182 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52171 | /* 147186 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52172 | /* 147190 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52173 | /* 147194 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52174 | /* 147198 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52175 | /* 147201 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52176 | /* 147205 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52177 | /* 147212 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52178 | /* 147216 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52179 | /* 147218 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52180 | /* 147225 */ // (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) |
| 52181 | /* 147225 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 52182 | /* 147228 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52183 | /* 147230 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52184 | /* 147232 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52185 | /* 147236 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52186 | /* 147242 */ GIR_RootConstrainSelectedInstOperands, |
| 52187 | /* 147243 */ // GIR_Coverage, 22528, |
| 52188 | /* 147243 */ GIR_EraseRootFromParent_Done, |
| 52189 | /* 147244 */ // Label 3255: @147244 |
| 52190 | /* 147244 */ GIM_Try, /*On fail goto*//*Label 3256*/ GIMT_Encode4(147326), // Rule ID 22529 // |
| 52191 | /* 147249 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52192 | /* 147252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52193 | /* 147256 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52194 | /* 147260 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52195 | /* 147264 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52196 | /* 147268 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52197 | /* 147272 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52198 | /* 147276 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52199 | /* 147280 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52200 | /* 147283 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52201 | /* 147287 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52202 | /* 147294 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52203 | /* 147298 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52204 | /* 147300 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52205 | /* 147307 */ // (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) |
| 52206 | /* 147307 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 52207 | /* 147310 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52208 | /* 147312 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52209 | /* 147314 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52210 | /* 147318 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52211 | /* 147324 */ GIR_RootConstrainSelectedInstOperands, |
| 52212 | /* 147325 */ // GIR_Coverage, 22529, |
| 52213 | /* 147325 */ GIR_EraseRootFromParent_Done, |
| 52214 | /* 147326 */ // Label 3256: @147326 |
| 52215 | /* 147326 */ GIM_Try, /*On fail goto*//*Label 3257*/ GIMT_Encode4(147408), // Rule ID 22530 // |
| 52216 | /* 147331 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52217 | /* 147334 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52218 | /* 147338 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52219 | /* 147342 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52220 | /* 147346 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52221 | /* 147350 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 52222 | /* 147354 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52223 | /* 147358 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52224 | /* 147362 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52225 | /* 147365 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52226 | /* 147369 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52227 | /* 147376 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52228 | /* 147380 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52229 | /* 147382 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52230 | /* 147389 */ // (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) |
| 52231 | /* 147389 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 52232 | /* 147392 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52233 | /* 147394 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52234 | /* 147396 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52235 | /* 147400 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52236 | /* 147406 */ GIR_RootConstrainSelectedInstOperands, |
| 52237 | /* 147407 */ // GIR_Coverage, 22530, |
| 52238 | /* 147407 */ GIR_EraseRootFromParent_Done, |
| 52239 | /* 147408 */ // Label 3257: @147408 |
| 52240 | /* 147408 */ GIM_Try, /*On fail goto*//*Label 3258*/ GIMT_Encode4(147473), // Rule ID 23329 // |
| 52241 | /* 147413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52242 | /* 147416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52243 | /* 147420 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52244 | /* 147424 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52245 | /* 147428 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 52246 | /* 147435 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52247 | /* 147439 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52248 | /* 147443 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52249 | /* 147445 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52250 | /* 147452 */ // (fadd:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (ADD_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52251 | /* 147452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m32), |
| 52252 | /* 147455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52253 | /* 147457 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52254 | /* 147459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52255 | /* 147463 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52256 | /* 147466 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52257 | /* 147471 */ GIR_RootConstrainSelectedInstOperands, |
| 52258 | /* 147472 */ // GIR_Coverage, 23329, |
| 52259 | /* 147472 */ GIR_EraseRootFromParent_Done, |
| 52260 | /* 147473 */ // Label 3258: @147473 |
| 52261 | /* 147473 */ GIM_Try, /*On fail goto*//*Label 3259*/ GIMT_Encode4(147538), // Rule ID 23331 // |
| 52262 | /* 147478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52263 | /* 147481 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52264 | /* 147485 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52265 | /* 147489 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52266 | /* 147493 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52267 | /* 147500 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52268 | /* 147504 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52269 | /* 147508 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52270 | /* 147510 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52271 | /* 147517 */ // (fadd:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (ADD_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52272 | /* 147517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m32), |
| 52273 | /* 147520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52274 | /* 147522 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52275 | /* 147524 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52276 | /* 147528 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52277 | /* 147531 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52278 | /* 147536 */ GIR_RootConstrainSelectedInstOperands, |
| 52279 | /* 147537 */ // GIR_Coverage, 23331, |
| 52280 | /* 147537 */ GIR_EraseRootFromParent_Done, |
| 52281 | /* 147538 */ // Label 3259: @147538 |
| 52282 | /* 147538 */ GIM_Try, /*On fail goto*//*Label 3260*/ GIMT_Encode4(147603), // Rule ID 23319 // |
| 52283 | /* 147543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52284 | /* 147546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52285 | /* 147550 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52286 | /* 147554 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52287 | /* 147558 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52288 | /* 147561 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52289 | /* 147565 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52290 | /* 147569 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52291 | /* 147573 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52292 | /* 147575 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52293 | /* 147582 */ // (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) |
| 52294 | /* 147582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32m), |
| 52295 | /* 147585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52296 | /* 147587 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52297 | /* 147589 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52298 | /* 147593 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52299 | /* 147596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52300 | /* 147601 */ GIR_RootConstrainSelectedInstOperands, |
| 52301 | /* 147602 */ // GIR_Coverage, 23319, |
| 52302 | /* 147602 */ GIR_EraseRootFromParent_Done, |
| 52303 | /* 147603 */ // Label 3260: @147603 |
| 52304 | /* 147603 */ GIM_Try, /*On fail goto*//*Label 3261*/ GIMT_Encode4(147665), // Rule ID 23464 // |
| 52305 | /* 147608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52306 | /* 147611 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52307 | /* 147615 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52308 | /* 147619 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52309 | /* 147623 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52310 | /* 147626 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52311 | /* 147630 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52312 | /* 147634 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52313 | /* 147638 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52314 | /* 147640 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52315 | /* 147647 */ // (fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (VADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52316 | /* 147647 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 52317 | /* 147650 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52318 | /* 147652 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52319 | /* 147654 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52320 | /* 147658 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52321 | /* 147663 */ GIR_RootConstrainSelectedInstOperands, |
| 52322 | /* 147664 */ // GIR_Coverage, 23464, |
| 52323 | /* 147664 */ GIR_EraseRootFromParent_Done, |
| 52324 | /* 147665 */ // Label 3261: @147665 |
| 52325 | /* 147665 */ GIM_Try, /*On fail goto*//*Label 3262*/ GIMT_Encode4(147727), // Rule ID 23468 // |
| 52326 | /* 147670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52327 | /* 147673 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52328 | /* 147677 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52329 | /* 147681 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52330 | /* 147685 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52331 | /* 147688 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52332 | /* 147692 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52333 | /* 147696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52334 | /* 147700 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52335 | /* 147702 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52336 | /* 147709 */ // (fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (ADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52337 | /* 147709 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 52338 | /* 147712 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52339 | /* 147714 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52340 | /* 147716 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52341 | /* 147720 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52342 | /* 147725 */ GIR_RootConstrainSelectedInstOperands, |
| 52343 | /* 147726 */ // GIR_Coverage, 23468, |
| 52344 | /* 147726 */ GIR_EraseRootFromParent_Done, |
| 52345 | /* 147727 */ // Label 3262: @147727 |
| 52346 | /* 147727 */ GIM_Try, /*On fail goto*//*Label 3263*/ GIMT_Encode4(147789), // Rule ID 24328 // |
| 52347 | /* 147732 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52348 | /* 147735 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52349 | /* 147739 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52350 | /* 147743 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52351 | /* 147747 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52352 | /* 147750 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52353 | /* 147754 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52354 | /* 147758 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52355 | /* 147762 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52356 | /* 147764 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52357 | /* 147771 */ // (fadd:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1) => (VADDSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52358 | /* 147771 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 52359 | /* 147774 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52360 | /* 147776 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52361 | /* 147778 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52362 | /* 147782 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52363 | /* 147787 */ GIR_RootConstrainSelectedInstOperands, |
| 52364 | /* 147788 */ // GIR_Coverage, 24328, |
| 52365 | /* 147788 */ GIR_EraseRootFromParent_Done, |
| 52366 | /* 147789 */ // Label 3263: @147789 |
| 52367 | /* 147789 */ GIM_Try, /*On fail goto*//*Label 3264*/ GIMT_Encode4(147854), // Rule ID 921 // |
| 52368 | /* 147794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52369 | /* 147797 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52370 | /* 147801 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52371 | /* 147805 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52372 | /* 147809 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52373 | /* 147813 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 52374 | /* 147820 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52375 | /* 147824 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52376 | /* 147826 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52377 | /* 147833 */ // (fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52378 | /* 147833 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m32), |
| 52379 | /* 147836 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52380 | /* 147838 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52381 | /* 147840 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52382 | /* 147844 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52383 | /* 147847 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52384 | /* 147852 */ GIR_RootConstrainSelectedInstOperands, |
| 52385 | /* 147853 */ // GIR_Coverage, 921, |
| 52386 | /* 147853 */ GIR_EraseRootFromParent_Done, |
| 52387 | /* 147854 */ // Label 3264: @147854 |
| 52388 | /* 147854 */ GIM_Try, /*On fail goto*//*Label 3265*/ GIMT_Encode4(147919), // Rule ID 923 // |
| 52389 | /* 147859 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52390 | /* 147862 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52391 | /* 147866 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52392 | /* 147870 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52393 | /* 147874 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52394 | /* 147878 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52395 | /* 147885 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52396 | /* 147889 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52397 | /* 147891 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52398 | /* 147898 */ // (fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52399 | /* 147898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m32), |
| 52400 | /* 147901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52401 | /* 147903 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52402 | /* 147905 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52403 | /* 147909 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52404 | /* 147912 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52405 | /* 147917 */ GIR_RootConstrainSelectedInstOperands, |
| 52406 | /* 147918 */ // GIR_Coverage, 923, |
| 52407 | /* 147918 */ GIR_EraseRootFromParent_Done, |
| 52408 | /* 147919 */ // Label 3265: @147919 |
| 52409 | /* 147919 */ GIM_Try, /*On fail goto*//*Label 3266*/ GIMT_Encode4(147984), // Rule ID 911 // |
| 52410 | /* 147924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52411 | /* 147927 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52412 | /* 147931 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52413 | /* 147935 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52414 | /* 147939 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52415 | /* 147943 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52416 | /* 147946 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52417 | /* 147950 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52418 | /* 147954 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52419 | /* 147956 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52420 | /* 147963 */ // (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) |
| 52421 | /* 147963 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32m), |
| 52422 | /* 147966 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52423 | /* 147968 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52424 | /* 147970 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52425 | /* 147974 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52426 | /* 147977 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52427 | /* 147982 */ GIR_RootConstrainSelectedInstOperands, |
| 52428 | /* 147983 */ // GIR_Coverage, 911, |
| 52429 | /* 147983 */ GIR_EraseRootFromParent_Done, |
| 52430 | /* 147984 */ // Label 3266: @147984 |
| 52431 | /* 147984 */ GIM_Try, /*On fail goto*//*Label 3267*/ GIMT_Encode4(148046), // Rule ID 2161 // |
| 52432 | /* 147989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52433 | /* 147992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52434 | /* 147996 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52435 | /* 148000 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52436 | /* 148004 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52437 | /* 148008 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52438 | /* 148011 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52439 | /* 148015 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52440 | /* 148019 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52441 | /* 148021 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52442 | /* 148028 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52443 | /* 148028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 52444 | /* 148031 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52445 | /* 148033 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52446 | /* 148035 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52447 | /* 148039 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52448 | /* 148044 */ GIR_RootConstrainSelectedInstOperands, |
| 52449 | /* 148045 */ // GIR_Coverage, 2161, |
| 52450 | /* 148045 */ GIR_EraseRootFromParent_Done, |
| 52451 | /* 148046 */ // Label 3267: @148046 |
| 52452 | /* 148046 */ GIM_Try, /*On fail goto*//*Label 3268*/ GIMT_Encode4(148108), // Rule ID 2169 // |
| 52453 | /* 148051 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52454 | /* 148054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52455 | /* 148058 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52456 | /* 148062 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52457 | /* 148066 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52458 | /* 148070 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52459 | /* 148073 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52460 | /* 148077 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52461 | /* 148081 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52462 | /* 148083 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52463 | /* 148090 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADDSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52464 | /* 148090 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 52465 | /* 148093 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52466 | /* 148095 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52467 | /* 148097 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52468 | /* 148101 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52469 | /* 148106 */ GIR_RootConstrainSelectedInstOperands, |
| 52470 | /* 148107 */ // GIR_Coverage, 2169, |
| 52471 | /* 148107 */ GIR_EraseRootFromParent_Done, |
| 52472 | /* 148108 */ // Label 3268: @148108 |
| 52473 | /* 148108 */ GIM_Try, /*On fail goto*//*Label 3269*/ GIMT_Encode4(148170), // Rule ID 5921 // |
| 52474 | /* 148113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52475 | /* 148116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52476 | /* 148120 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52477 | /* 148124 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52478 | /* 148128 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52479 | /* 148132 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52480 | /* 148135 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52481 | /* 148139 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52482 | /* 148143 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52483 | /* 148145 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52484 | /* 148152 */ // (fadd:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52485 | /* 148152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 52486 | /* 148155 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52487 | /* 148157 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52488 | /* 148159 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52489 | /* 148163 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52490 | /* 148168 */ GIR_RootConstrainSelectedInstOperands, |
| 52491 | /* 148169 */ // GIR_Coverage, 5921, |
| 52492 | /* 148169 */ GIR_EraseRootFromParent_Done, |
| 52493 | /* 148170 */ // Label 3269: @148170 |
| 52494 | /* 148170 */ GIM_Try, /*On fail goto*//*Label 3270*/ GIMT_Encode4(148207), // Rule ID 887 // |
| 52495 | /* 148175 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 52496 | /* 148178 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52497 | /* 148182 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52498 | /* 148186 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 52499 | /* 148190 */ // (fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (ADD_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 52500 | /* 148190 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32), |
| 52501 | /* 148195 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 52502 | /* 148201 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 52503 | /* 148205 */ GIR_RootConstrainSelectedInstOperands, |
| 52504 | /* 148206 */ // GIR_Coverage, 887, |
| 52505 | /* 148206 */ GIR_Done, |
| 52506 | /* 148207 */ // Label 3270: @148207 |
| 52507 | /* 148207 */ GIM_Try, /*On fail goto*//*Label 3271*/ GIMT_Encode4(148238), // Rule ID 2159 // |
| 52508 | /* 148212 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52509 | /* 148215 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52510 | /* 148219 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52511 | /* 148223 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52512 | /* 148227 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VADDSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 52513 | /* 148227 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSSrr), |
| 52514 | /* 148232 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 52515 | /* 148236 */ GIR_RootConstrainSelectedInstOperands, |
| 52516 | /* 148237 */ // GIR_Coverage, 2159, |
| 52517 | /* 148237 */ GIR_Done, |
| 52518 | /* 148238 */ // Label 3271: @148238 |
| 52519 | /* 148238 */ GIM_Try, /*On fail goto*//*Label 3272*/ GIMT_Encode4(148269), // Rule ID 2167 // |
| 52520 | /* 148243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52521 | /* 148246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52522 | /* 148250 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52523 | /* 148254 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 52524 | /* 148258 */ // (fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (ADDSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 52525 | /* 148258 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDSSrr), |
| 52526 | /* 148263 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 52527 | /* 148267 */ GIR_RootConstrainSelectedInstOperands, |
| 52528 | /* 148268 */ // GIR_Coverage, 2167, |
| 52529 | /* 148268 */ GIR_Done, |
| 52530 | /* 148269 */ // Label 3272: @148269 |
| 52531 | /* 148269 */ GIM_Try, /*On fail goto*//*Label 3273*/ GIMT_Encode4(148300), // Rule ID 5919 // |
| 52532 | /* 148274 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52533 | /* 148277 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52534 | /* 148281 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52535 | /* 148285 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 52536 | /* 148289 */ // (fadd:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VADDSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 52537 | /* 148289 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSSZrr), |
| 52538 | /* 148294 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 52539 | /* 148298 */ GIR_RootConstrainSelectedInstOperands, |
| 52540 | /* 148299 */ // GIR_Coverage, 5919, |
| 52541 | /* 148299 */ GIR_Done, |
| 52542 | /* 148300 */ // Label 3273: @148300 |
| 52543 | /* 148300 */ GIM_Reject, |
| 52544 | /* 148301 */ // Label 3251: @148301 |
| 52545 | /* 148301 */ GIM_Reject, |
| 52546 | /* 148302 */ // Label 3235: @148302 |
| 52547 | /* 148302 */ GIM_Try, /*On fail goto*//*Label 3274*/ GIMT_Encode4(149842), |
| 52548 | /* 148307 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 52549 | /* 148310 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 52550 | /* 148313 */ GIM_Try, /*On fail goto*//*Label 3275*/ GIMT_Encode4(148395), // Rule ID 26103 // |
| 52551 | /* 148318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52552 | /* 148321 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52553 | /* 148325 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52554 | /* 148329 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52555 | /* 148333 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 52556 | /* 148337 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52557 | /* 148341 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52558 | /* 148345 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52559 | /* 148348 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52560 | /* 148352 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 52561 | /* 148359 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52562 | /* 148363 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52563 | /* 148367 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52564 | /* 148369 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52565 | /* 148376 */ // (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) |
| 52566 | /* 148376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 52567 | /* 148379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52568 | /* 148381 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52569 | /* 148383 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52570 | /* 148387 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52571 | /* 148393 */ GIR_RootConstrainSelectedInstOperands, |
| 52572 | /* 148394 */ // GIR_Coverage, 26103, |
| 52573 | /* 148394 */ GIR_EraseRootFromParent_Done, |
| 52574 | /* 148395 */ // Label 3275: @148395 |
| 52575 | /* 148395 */ GIM_Try, /*On fail goto*//*Label 3276*/ GIMT_Encode4(148477), // Rule ID 26104 // |
| 52576 | /* 148400 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52577 | /* 148403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52578 | /* 148407 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52579 | /* 148411 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52580 | /* 148415 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 52581 | /* 148419 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52582 | /* 148423 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52583 | /* 148427 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52584 | /* 148430 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52585 | /* 148434 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 52586 | /* 148441 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52587 | /* 148445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52588 | /* 148449 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52589 | /* 148451 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52590 | /* 148458 */ // (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) |
| 52591 | /* 148458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 52592 | /* 148461 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52593 | /* 148463 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52594 | /* 148465 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52595 | /* 148469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52596 | /* 148475 */ GIR_RootConstrainSelectedInstOperands, |
| 52597 | /* 148476 */ // GIR_Coverage, 26104, |
| 52598 | /* 148476 */ GIR_EraseRootFromParent_Done, |
| 52599 | /* 148477 */ // Label 3276: @148477 |
| 52600 | /* 148477 */ GIM_Try, /*On fail goto*//*Label 3277*/ GIMT_Encode4(148559), // Rule ID 26105 // |
| 52601 | /* 148482 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52602 | /* 148485 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 52603 | /* 148489 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52604 | /* 148493 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52605 | /* 148497 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 52606 | /* 148501 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52607 | /* 148505 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52608 | /* 148509 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52609 | /* 148512 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52610 | /* 148516 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 52611 | /* 148523 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52612 | /* 148527 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 52613 | /* 148531 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52614 | /* 148533 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52615 | /* 148540 */ // (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) |
| 52616 | /* 148540 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 52617 | /* 148543 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52618 | /* 148545 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52619 | /* 148547 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52620 | /* 148551 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52621 | /* 148557 */ GIR_RootConstrainSelectedInstOperands, |
| 52622 | /* 148558 */ // GIR_Coverage, 26105, |
| 52623 | /* 148558 */ GIR_EraseRootFromParent_Done, |
| 52624 | /* 148559 */ // Label 3277: @148559 |
| 52625 | /* 148559 */ GIM_Try, /*On fail goto*//*Label 3278*/ GIMT_Encode4(148641), // Rule ID 22531 // |
| 52626 | /* 148564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 52627 | /* 148567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52628 | /* 148571 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52629 | /* 148575 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52630 | /* 148579 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52631 | /* 148583 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 52632 | /* 148587 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52633 | /* 148591 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52634 | /* 148595 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52635 | /* 148598 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52636 | /* 148602 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 52637 | /* 148609 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52638 | /* 148613 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52639 | /* 148615 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52640 | /* 148622 */ // (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) |
| 52641 | /* 148622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 52642 | /* 148625 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52643 | /* 148627 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52644 | /* 148629 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52645 | /* 148633 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52646 | /* 148639 */ GIR_RootConstrainSelectedInstOperands, |
| 52647 | /* 148640 */ // GIR_Coverage, 22531, |
| 52648 | /* 148640 */ GIR_EraseRootFromParent_Done, |
| 52649 | /* 148641 */ // Label 3278: @148641 |
| 52650 | /* 148641 */ GIM_Try, /*On fail goto*//*Label 3279*/ GIMT_Encode4(148723), // Rule ID 22532 // |
| 52651 | /* 148646 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52652 | /* 148649 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52653 | /* 148653 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52654 | /* 148657 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52655 | /* 148661 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52656 | /* 148665 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 52657 | /* 148669 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52658 | /* 148673 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52659 | /* 148677 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52660 | /* 148680 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52661 | /* 148684 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 52662 | /* 148691 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52663 | /* 148695 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52664 | /* 148697 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52665 | /* 148704 */ // (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) |
| 52666 | /* 148704 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 52667 | /* 148707 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52668 | /* 148709 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52669 | /* 148711 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52670 | /* 148715 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52671 | /* 148721 */ GIR_RootConstrainSelectedInstOperands, |
| 52672 | /* 148722 */ // GIR_Coverage, 22532, |
| 52673 | /* 148722 */ GIR_EraseRootFromParent_Done, |
| 52674 | /* 148723 */ // Label 3279: @148723 |
| 52675 | /* 148723 */ GIM_Try, /*On fail goto*//*Label 3280*/ GIMT_Encode4(148805), // Rule ID 22533 // |
| 52676 | /* 148728 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52677 | /* 148731 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 52678 | /* 148735 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 52679 | /* 148739 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52680 | /* 148743 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 52681 | /* 148747 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 52682 | /* 148751 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 52683 | /* 148755 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52684 | /* 148759 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 52685 | /* 148762 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 52686 | /* 148766 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 52687 | /* 148773 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 52688 | /* 148777 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 52689 | /* 148779 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52690 | /* 148786 */ // (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) |
| 52691 | /* 148786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 52692 | /* 148789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52693 | /* 148791 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52694 | /* 148793 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52695 | /* 148797 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 52696 | /* 148803 */ GIR_RootConstrainSelectedInstOperands, |
| 52697 | /* 148804 */ // GIR_Coverage, 22533, |
| 52698 | /* 148804 */ GIR_EraseRootFromParent_Done, |
| 52699 | /* 148805 */ // Label 3280: @148805 |
| 52700 | /* 148805 */ GIM_Try, /*On fail goto*//*Label 3281*/ GIMT_Encode4(148870), // Rule ID 23333 // |
| 52701 | /* 148810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 52702 | /* 148813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52703 | /* 148817 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52704 | /* 148821 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52705 | /* 148825 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 52706 | /* 148832 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52707 | /* 148836 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52708 | /* 148840 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52709 | /* 148842 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52710 | /* 148849 */ // (fadd:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (ADD_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52711 | /* 148849 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m64), |
| 52712 | /* 148852 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52713 | /* 148854 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52714 | /* 148856 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52715 | /* 148860 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52716 | /* 148863 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52717 | /* 148868 */ GIR_RootConstrainSelectedInstOperands, |
| 52718 | /* 148869 */ // GIR_Coverage, 23333, |
| 52719 | /* 148869 */ GIR_EraseRootFromParent_Done, |
| 52720 | /* 148870 */ // Label 3281: @148870 |
| 52721 | /* 148870 */ GIM_Try, /*On fail goto*//*Label 3282*/ GIMT_Encode4(148935), // Rule ID 23335 // |
| 52722 | /* 148875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 52723 | /* 148878 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52724 | /* 148882 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52725 | /* 148886 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52726 | /* 148890 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52727 | /* 148897 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52728 | /* 148901 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52729 | /* 148905 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52730 | /* 148907 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52731 | /* 148914 */ // (fadd:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (ADD_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52732 | /* 148914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m64), |
| 52733 | /* 148917 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52734 | /* 148919 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52735 | /* 148921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52736 | /* 148925 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52737 | /* 148928 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52738 | /* 148933 */ GIR_RootConstrainSelectedInstOperands, |
| 52739 | /* 148934 */ // GIR_Coverage, 23335, |
| 52740 | /* 148934 */ GIR_EraseRootFromParent_Done, |
| 52741 | /* 148935 */ // Label 3282: @148935 |
| 52742 | /* 148935 */ GIM_Try, /*On fail goto*//*Label 3283*/ GIMT_Encode4(149000), // Rule ID 23321 // |
| 52743 | /* 148940 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 52744 | /* 148943 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52745 | /* 148947 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52746 | /* 148951 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52747 | /* 148955 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52748 | /* 148958 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52749 | /* 148962 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52750 | /* 148966 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52751 | /* 148970 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52752 | /* 148972 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52753 | /* 148979 */ // (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) |
| 52754 | /* 148979 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m), |
| 52755 | /* 148982 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52756 | /* 148984 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52757 | /* 148986 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52758 | /* 148990 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52759 | /* 148993 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52760 | /* 148998 */ GIR_RootConstrainSelectedInstOperands, |
| 52761 | /* 148999 */ // GIR_Coverage, 23321, |
| 52762 | /* 148999 */ GIR_EraseRootFromParent_Done, |
| 52763 | /* 149000 */ // Label 3283: @149000 |
| 52764 | /* 149000 */ GIM_Try, /*On fail goto*//*Label 3284*/ GIMT_Encode4(149072), // Rule ID 23323 // |
| 52765 | /* 149005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 52766 | /* 149008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52767 | /* 149012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52768 | /* 149016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52769 | /* 149020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52770 | /* 149023 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52771 | /* 149027 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52772 | /* 149034 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52773 | /* 149038 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52774 | /* 149042 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52775 | /* 149044 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52776 | /* 149051 */ // (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) |
| 52777 | /* 149051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m32), |
| 52778 | /* 149054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52779 | /* 149056 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52780 | /* 149058 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52781 | /* 149062 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52782 | /* 149065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52783 | /* 149070 */ GIR_RootConstrainSelectedInstOperands, |
| 52784 | /* 149071 */ // GIR_Coverage, 23323, |
| 52785 | /* 149071 */ GIR_EraseRootFromParent_Done, |
| 52786 | /* 149072 */ // Label 3284: @149072 |
| 52787 | /* 149072 */ GIM_Try, /*On fail goto*//*Label 3285*/ GIMT_Encode4(149134), // Rule ID 23466 // |
| 52788 | /* 149077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52789 | /* 149080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52790 | /* 149084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52791 | /* 149088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52792 | /* 149092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52793 | /* 149095 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52794 | /* 149099 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52795 | /* 149103 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52796 | /* 149107 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52797 | /* 149109 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52798 | /* 149116 */ // (fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (VADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52799 | /* 149116 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 52800 | /* 149119 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52801 | /* 149121 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52802 | /* 149123 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52803 | /* 149127 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52804 | /* 149132 */ GIR_RootConstrainSelectedInstOperands, |
| 52805 | /* 149133 */ // GIR_Coverage, 23466, |
| 52806 | /* 149133 */ GIR_EraseRootFromParent_Done, |
| 52807 | /* 149134 */ // Label 3285: @149134 |
| 52808 | /* 149134 */ GIM_Try, /*On fail goto*//*Label 3286*/ GIMT_Encode4(149196), // Rule ID 23470 // |
| 52809 | /* 149139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 52810 | /* 149142 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52811 | /* 149146 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52812 | /* 149150 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52813 | /* 149154 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52814 | /* 149157 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52815 | /* 149161 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52816 | /* 149165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52817 | /* 149169 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52818 | /* 149171 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52819 | /* 149178 */ // (fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (ADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52820 | /* 149178 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 52821 | /* 149181 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52822 | /* 149183 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52823 | /* 149185 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52824 | /* 149189 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52825 | /* 149194 */ GIR_RootConstrainSelectedInstOperands, |
| 52826 | /* 149195 */ // GIR_Coverage, 23470, |
| 52827 | /* 149195 */ GIR_EraseRootFromParent_Done, |
| 52828 | /* 149196 */ // Label 3286: @149196 |
| 52829 | /* 149196 */ GIM_Try, /*On fail goto*//*Label 3287*/ GIMT_Encode4(149258), // Rule ID 24330 // |
| 52830 | /* 149201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52831 | /* 149204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 52832 | /* 149208 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 52833 | /* 149212 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52834 | /* 149216 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52835 | /* 149219 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52836 | /* 149223 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52837 | /* 149227 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 52838 | /* 149231 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52839 | /* 149233 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52840 | /* 149240 */ // (fadd:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1) => (VADDSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52841 | /* 149240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 52842 | /* 149243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52843 | /* 149245 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 52844 | /* 149247 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52845 | /* 149251 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52846 | /* 149256 */ GIR_RootConstrainSelectedInstOperands, |
| 52847 | /* 149257 */ // GIR_Coverage, 24330, |
| 52848 | /* 149257 */ GIR_EraseRootFromParent_Done, |
| 52849 | /* 149258 */ // Label 3287: @149258 |
| 52850 | /* 149258 */ GIM_Try, /*On fail goto*//*Label 3288*/ GIMT_Encode4(149323), // Rule ID 925 // |
| 52851 | /* 149263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 52852 | /* 149266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52853 | /* 149270 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52854 | /* 149274 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52855 | /* 149278 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52856 | /* 149282 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 52857 | /* 149289 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52858 | /* 149293 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52859 | /* 149295 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52860 | /* 149302 */ // (fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52861 | /* 149302 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m64), |
| 52862 | /* 149305 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52863 | /* 149307 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52864 | /* 149309 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52865 | /* 149313 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52866 | /* 149316 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52867 | /* 149321 */ GIR_RootConstrainSelectedInstOperands, |
| 52868 | /* 149322 */ // GIR_Coverage, 925, |
| 52869 | /* 149322 */ GIR_EraseRootFromParent_Done, |
| 52870 | /* 149323 */ // Label 3288: @149323 |
| 52871 | /* 149323 */ GIM_Try, /*On fail goto*//*Label 3289*/ GIMT_Encode4(149388), // Rule ID 927 // |
| 52872 | /* 149328 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 52873 | /* 149331 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52874 | /* 149335 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52875 | /* 149339 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52876 | /* 149343 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 52877 | /* 149347 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52878 | /* 149354 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52879 | /* 149358 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52880 | /* 149360 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52881 | /* 149367 */ // (fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52882 | /* 149367 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m64), |
| 52883 | /* 149370 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52884 | /* 149372 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52885 | /* 149374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52886 | /* 149378 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52887 | /* 149381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52888 | /* 149386 */ GIR_RootConstrainSelectedInstOperands, |
| 52889 | /* 149387 */ // GIR_Coverage, 927, |
| 52890 | /* 149387 */ GIR_EraseRootFromParent_Done, |
| 52891 | /* 149388 */ // Label 3289: @149388 |
| 52892 | /* 149388 */ GIM_Try, /*On fail goto*//*Label 3290*/ GIMT_Encode4(149453), // Rule ID 913 // |
| 52893 | /* 149393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 52894 | /* 149396 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52895 | /* 149400 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52896 | /* 149404 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52897 | /* 149408 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52898 | /* 149412 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52899 | /* 149415 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52900 | /* 149419 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52901 | /* 149423 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52902 | /* 149425 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52903 | /* 149432 */ // (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) |
| 52904 | /* 149432 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m), |
| 52905 | /* 149435 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52906 | /* 149437 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52907 | /* 149439 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52908 | /* 149443 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52909 | /* 149446 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52910 | /* 149451 */ GIR_RootConstrainSelectedInstOperands, |
| 52911 | /* 149452 */ // GIR_Coverage, 913, |
| 52912 | /* 149452 */ GIR_EraseRootFromParent_Done, |
| 52913 | /* 149453 */ // Label 3290: @149453 |
| 52914 | /* 149453 */ GIM_Try, /*On fail goto*//*Label 3291*/ GIMT_Encode4(149525), // Rule ID 915 // |
| 52915 | /* 149458 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 52916 | /* 149461 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52917 | /* 149465 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 52918 | /* 149469 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52919 | /* 149473 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52920 | /* 149477 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52921 | /* 149480 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52922 | /* 149484 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 52923 | /* 149491 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52924 | /* 149495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52925 | /* 149497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52926 | /* 149504 */ // (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) |
| 52927 | /* 149504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m32), |
| 52928 | /* 149507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52929 | /* 149509 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52930 | /* 149511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52931 | /* 149515 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 52932 | /* 149518 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52933 | /* 149523 */ GIR_RootConstrainSelectedInstOperands, |
| 52934 | /* 149524 */ // GIR_Coverage, 915, |
| 52935 | /* 149524 */ GIR_EraseRootFromParent_Done, |
| 52936 | /* 149525 */ // Label 3291: @149525 |
| 52937 | /* 149525 */ GIM_Try, /*On fail goto*//*Label 3292*/ GIMT_Encode4(149587), // Rule ID 2165 // |
| 52938 | /* 149530 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 52939 | /* 149533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52940 | /* 149537 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52941 | /* 149541 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52942 | /* 149545 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52943 | /* 149549 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52944 | /* 149552 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52945 | /* 149556 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52946 | /* 149560 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52947 | /* 149562 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52948 | /* 149569 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52949 | /* 149569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 52950 | /* 149572 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52951 | /* 149574 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52952 | /* 149576 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52953 | /* 149580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52954 | /* 149585 */ GIR_RootConstrainSelectedInstOperands, |
| 52955 | /* 149586 */ // GIR_Coverage, 2165, |
| 52956 | /* 149586 */ GIR_EraseRootFromParent_Done, |
| 52957 | /* 149587 */ // Label 3292: @149587 |
| 52958 | /* 149587 */ GIM_Try, /*On fail goto*//*Label 3293*/ GIMT_Encode4(149649), // Rule ID 2173 // |
| 52959 | /* 149592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 52960 | /* 149595 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52961 | /* 149599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 52962 | /* 149603 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52963 | /* 149607 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52964 | /* 149611 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52965 | /* 149614 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52966 | /* 149618 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52967 | /* 149622 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52968 | /* 149624 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52969 | /* 149631 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (ADDSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52970 | /* 149631 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 52971 | /* 149634 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52972 | /* 149636 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52973 | /* 149638 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52974 | /* 149642 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52975 | /* 149647 */ GIR_RootConstrainSelectedInstOperands, |
| 52976 | /* 149648 */ // GIR_Coverage, 2173, |
| 52977 | /* 149648 */ GIR_EraseRootFromParent_Done, |
| 52978 | /* 149649 */ // Label 3293: @149649 |
| 52979 | /* 149649 */ GIM_Try, /*On fail goto*//*Label 3294*/ GIMT_Encode4(149711), // Rule ID 5940 // |
| 52980 | /* 149654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 52981 | /* 149657 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 52982 | /* 149661 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 52983 | /* 149665 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 52984 | /* 149669 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 52985 | /* 149673 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 52986 | /* 149676 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 52987 | /* 149680 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 52988 | /* 149684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 52989 | /* 149686 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 52990 | /* 149693 */ // (fadd:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 52991 | /* 149693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 52992 | /* 149696 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 52993 | /* 149698 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 52994 | /* 149700 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 52995 | /* 149704 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 52996 | /* 149709 */ GIR_RootConstrainSelectedInstOperands, |
| 52997 | /* 149710 */ // GIR_Coverage, 5940, |
| 52998 | /* 149710 */ GIR_EraseRootFromParent_Done, |
| 52999 | /* 149711 */ // Label 3294: @149711 |
| 53000 | /* 149711 */ GIM_Try, /*On fail goto*//*Label 3295*/ GIMT_Encode4(149748), // Rule ID 889 // |
| 53001 | /* 149716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 53002 | /* 149719 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53003 | /* 149723 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53004 | /* 149727 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 53005 | /* 149731 */ // (fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (ADD_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 53006 | /* 149731 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64), |
| 53007 | /* 149736 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 53008 | /* 149742 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 53009 | /* 149746 */ GIR_RootConstrainSelectedInstOperands, |
| 53010 | /* 149747 */ // GIR_Coverage, 889, |
| 53011 | /* 149747 */ GIR_Done, |
| 53012 | /* 149748 */ // Label 3295: @149748 |
| 53013 | /* 149748 */ GIM_Try, /*On fail goto*//*Label 3296*/ GIMT_Encode4(149779), // Rule ID 2163 // |
| 53014 | /* 149753 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 53015 | /* 149756 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53016 | /* 149760 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53017 | /* 149764 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53018 | /* 149768 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VADDSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 53019 | /* 149768 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSDrr), |
| 53020 | /* 149773 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53021 | /* 149777 */ GIR_RootConstrainSelectedInstOperands, |
| 53022 | /* 149778 */ // GIR_Coverage, 2163, |
| 53023 | /* 149778 */ GIR_Done, |
| 53024 | /* 149779 */ // Label 3296: @149779 |
| 53025 | /* 149779 */ GIM_Try, /*On fail goto*//*Label 3297*/ GIMT_Encode4(149810), // Rule ID 2171 // |
| 53026 | /* 149784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 53027 | /* 149787 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53028 | /* 149791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53029 | /* 149795 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 53030 | /* 149799 */ // (fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (ADDSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 53031 | /* 149799 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDSDrr), |
| 53032 | /* 149804 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53033 | /* 149808 */ GIR_RootConstrainSelectedInstOperands, |
| 53034 | /* 149809 */ // GIR_Coverage, 2171, |
| 53035 | /* 149809 */ GIR_Done, |
| 53036 | /* 149810 */ // Label 3297: @149810 |
| 53037 | /* 149810 */ GIM_Try, /*On fail goto*//*Label 3298*/ GIMT_Encode4(149841), // Rule ID 5938 // |
| 53038 | /* 149815 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53039 | /* 149818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53040 | /* 149822 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53041 | /* 149826 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 53042 | /* 149830 */ // (fadd:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VADDSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 53043 | /* 149830 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSDZrr), |
| 53044 | /* 149835 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53045 | /* 149839 */ GIR_RootConstrainSelectedInstOperands, |
| 53046 | /* 149840 */ // GIR_Coverage, 5938, |
| 53047 | /* 149840 */ GIR_Done, |
| 53048 | /* 149841 */ // Label 3298: @149841 |
| 53049 | /* 149841 */ GIM_Reject, |
| 53050 | /* 149842 */ // Label 3274: @149842 |
| 53051 | /* 149842 */ GIM_Reject, |
| 53052 | /* 149843 */ // Label 3236: @149843 |
| 53053 | /* 149843 */ GIM_Try, /*On fail goto*//*Label 3299*/ GIMT_Encode4(150408), |
| 53054 | /* 149848 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 53055 | /* 149851 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 53056 | /* 149854 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53057 | /* 149858 */ GIM_Try, /*On fail goto*//*Label 3300*/ GIMT_Encode4(149919), // Rule ID 23337 // |
| 53058 | /* 149863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53059 | /* 149866 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53060 | /* 149870 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53061 | /* 149874 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 53062 | /* 149881 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53063 | /* 149885 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53064 | /* 149889 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53065 | /* 149891 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53066 | /* 149898 */ // (fadd:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (ADD_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53067 | /* 149898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m80), |
| 53068 | /* 149901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53069 | /* 149903 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53070 | /* 149905 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53071 | /* 149909 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53072 | /* 149912 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53073 | /* 149917 */ GIR_RootConstrainSelectedInstOperands, |
| 53074 | /* 149918 */ // GIR_Coverage, 23337, |
| 53075 | /* 149918 */ GIR_EraseRootFromParent_Done, |
| 53076 | /* 149919 */ // Label 3300: @149919 |
| 53077 | /* 149919 */ GIM_Try, /*On fail goto*//*Label 3301*/ GIMT_Encode4(149980), // Rule ID 23339 // |
| 53078 | /* 149924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53079 | /* 149927 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53080 | /* 149931 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53081 | /* 149935 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53082 | /* 149942 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53083 | /* 149946 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53084 | /* 149950 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53085 | /* 149952 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53086 | /* 149959 */ // (fadd:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (ADD_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53087 | /* 149959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m80), |
| 53088 | /* 149962 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53089 | /* 149964 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53090 | /* 149966 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53091 | /* 149970 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53092 | /* 149973 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53093 | /* 149978 */ GIR_RootConstrainSelectedInstOperands, |
| 53094 | /* 149979 */ // GIR_Coverage, 23339, |
| 53095 | /* 149979 */ GIR_EraseRootFromParent_Done, |
| 53096 | /* 149980 */ // Label 3301: @149980 |
| 53097 | /* 149980 */ GIM_Try, /*On fail goto*//*Label 3302*/ GIMT_Encode4(150048), // Rule ID 23325 // |
| 53098 | /* 149985 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53099 | /* 149988 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53100 | /* 149992 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53101 | /* 149996 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53102 | /* 149999 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53103 | /* 150003 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53104 | /* 150010 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53105 | /* 150014 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53106 | /* 150018 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53107 | /* 150020 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53108 | /* 150027 */ // (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) |
| 53109 | /* 150027 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m32), |
| 53110 | /* 150030 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53111 | /* 150032 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53112 | /* 150034 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53113 | /* 150038 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53114 | /* 150041 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53115 | /* 150046 */ GIR_RootConstrainSelectedInstOperands, |
| 53116 | /* 150047 */ // GIR_Coverage, 23325, |
| 53117 | /* 150047 */ GIR_EraseRootFromParent_Done, |
| 53118 | /* 150048 */ // Label 3302: @150048 |
| 53119 | /* 150048 */ GIM_Try, /*On fail goto*//*Label 3303*/ GIMT_Encode4(150116), // Rule ID 23327 // |
| 53120 | /* 150053 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53121 | /* 150056 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53122 | /* 150060 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53123 | /* 150064 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53124 | /* 150067 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53125 | /* 150071 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53126 | /* 150078 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53127 | /* 150082 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53128 | /* 150086 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53129 | /* 150088 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53130 | /* 150095 */ // (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) |
| 53131 | /* 150095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m64), |
| 53132 | /* 150098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53133 | /* 150100 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53134 | /* 150102 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53135 | /* 150106 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53136 | /* 150109 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53137 | /* 150114 */ GIR_RootConstrainSelectedInstOperands, |
| 53138 | /* 150115 */ // GIR_Coverage, 23327, |
| 53139 | /* 150115 */ GIR_EraseRootFromParent_Done, |
| 53140 | /* 150116 */ // Label 3303: @150116 |
| 53141 | /* 150116 */ GIM_Try, /*On fail goto*//*Label 3304*/ GIMT_Encode4(150177), // Rule ID 929 // |
| 53142 | /* 150121 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53143 | /* 150124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53144 | /* 150128 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53145 | /* 150132 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53146 | /* 150136 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 53147 | /* 150143 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53148 | /* 150147 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53149 | /* 150149 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53150 | /* 150156 */ // (fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53151 | /* 150156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m80), |
| 53152 | /* 150159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53153 | /* 150161 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53154 | /* 150163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53155 | /* 150167 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53156 | /* 150170 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53157 | /* 150175 */ GIR_RootConstrainSelectedInstOperands, |
| 53158 | /* 150176 */ // GIR_Coverage, 929, |
| 53159 | /* 150176 */ GIR_EraseRootFromParent_Done, |
| 53160 | /* 150177 */ // Label 3304: @150177 |
| 53161 | /* 150177 */ GIM_Try, /*On fail goto*//*Label 3305*/ GIMT_Encode4(150238), // Rule ID 931 // |
| 53162 | /* 150182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53163 | /* 150185 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53164 | /* 150189 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53165 | /* 150193 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 53166 | /* 150197 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53167 | /* 150204 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53168 | /* 150208 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53169 | /* 150210 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53170 | /* 150217 */ // (fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53171 | /* 150217 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m80), |
| 53172 | /* 150220 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53173 | /* 150222 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53174 | /* 150224 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53175 | /* 150228 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53176 | /* 150231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53177 | /* 150236 */ GIR_RootConstrainSelectedInstOperands, |
| 53178 | /* 150237 */ // GIR_Coverage, 931, |
| 53179 | /* 150237 */ GIR_EraseRootFromParent_Done, |
| 53180 | /* 150238 */ // Label 3305: @150238 |
| 53181 | /* 150238 */ GIM_Try, /*On fail goto*//*Label 3306*/ GIMT_Encode4(150306), // Rule ID 917 // |
| 53182 | /* 150243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53183 | /* 150246 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53184 | /* 150250 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53185 | /* 150254 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53186 | /* 150258 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53187 | /* 150261 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53188 | /* 150265 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 53189 | /* 150272 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53190 | /* 150276 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53191 | /* 150278 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53192 | /* 150285 */ // (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) |
| 53193 | /* 150285 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m32), |
| 53194 | /* 150288 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53195 | /* 150290 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53196 | /* 150292 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53197 | /* 150296 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53198 | /* 150299 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53199 | /* 150304 */ GIR_RootConstrainSelectedInstOperands, |
| 53200 | /* 150305 */ // GIR_Coverage, 917, |
| 53201 | /* 150305 */ GIR_EraseRootFromParent_Done, |
| 53202 | /* 150306 */ // Label 3306: @150306 |
| 53203 | /* 150306 */ GIM_Try, /*On fail goto*//*Label 3307*/ GIMT_Encode4(150374), // Rule ID 919 // |
| 53204 | /* 150311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53205 | /* 150314 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53206 | /* 150318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53207 | /* 150322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53208 | /* 150326 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53209 | /* 150329 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53210 | /* 150333 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 53211 | /* 150340 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53212 | /* 150344 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53213 | /* 150346 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53214 | /* 150353 */ // (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) |
| 53215 | /* 150353 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m64), |
| 53216 | /* 150356 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53217 | /* 150358 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53218 | /* 150360 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53219 | /* 150364 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 53220 | /* 150367 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53221 | /* 150372 */ GIR_RootConstrainSelectedInstOperands, |
| 53222 | /* 150373 */ // GIR_Coverage, 919, |
| 53223 | /* 150373 */ GIR_EraseRootFromParent_Done, |
| 53224 | /* 150374 */ // Label 3307: @150374 |
| 53225 | /* 150374 */ GIM_Try, /*On fail goto*//*Label 3308*/ GIMT_Encode4(150407), // Rule ID 891 // |
| 53226 | /* 150379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 53227 | /* 150382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53228 | /* 150386 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 53229 | /* 150390 */ // (fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (ADD_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 53230 | /* 150390 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80), |
| 53231 | /* 150395 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 53232 | /* 150401 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 53233 | /* 150405 */ GIR_RootConstrainSelectedInstOperands, |
| 53234 | /* 150406 */ // GIR_Coverage, 891, |
| 53235 | /* 150406 */ GIR_Done, |
| 53236 | /* 150407 */ // Label 3308: @150407 |
| 53237 | /* 150407 */ GIM_Reject, |
| 53238 | /* 150408 */ // Label 3299: @150408 |
| 53239 | /* 150408 */ GIM_Reject, |
| 53240 | /* 150409 */ // Label 3237: @150409 |
| 53241 | /* 150409 */ GIM_Try, /*On fail goto*//*Label 3309*/ GIMT_Encode4(150762), |
| 53242 | /* 150414 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 53243 | /* 150417 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 53244 | /* 150420 */ GIM_Try, /*On fail goto*//*Label 3310*/ GIMT_Encode4(150482), // Rule ID 23454 // |
| 53245 | /* 150425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53246 | /* 150428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53247 | /* 150432 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53248 | /* 150436 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53249 | /* 150440 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53250 | /* 150443 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53251 | /* 150447 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53252 | /* 150451 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53253 | /* 150455 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53254 | /* 150457 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53255 | /* 150464 */ // (fadd:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1) => (VADDPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53256 | /* 150464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDrm), |
| 53257 | /* 150467 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53258 | /* 150469 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53259 | /* 150471 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53260 | /* 150475 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53261 | /* 150480 */ GIR_RootConstrainSelectedInstOperands, |
| 53262 | /* 150481 */ // GIR_Coverage, 23454, |
| 53263 | /* 150481 */ GIR_EraseRootFromParent_Done, |
| 53264 | /* 150482 */ // Label 3310: @150482 |
| 53265 | /* 150482 */ GIM_Try, /*On fail goto*//*Label 3311*/ GIMT_Encode4(150544), // Rule ID 24378 // |
| 53266 | /* 150487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53267 | /* 150490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53268 | /* 150494 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53269 | /* 150498 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53270 | /* 150502 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53271 | /* 150505 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53272 | /* 150509 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53273 | /* 150513 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53274 | /* 150517 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53275 | /* 150519 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53276 | /* 150526 */ // (fadd:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1) => (VADDPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53277 | /* 150526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rm), |
| 53278 | /* 150529 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53279 | /* 150531 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53280 | /* 150533 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53281 | /* 150537 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53282 | /* 150542 */ GIR_RootConstrainSelectedInstOperands, |
| 53283 | /* 150543 */ // GIR_Coverage, 24378, |
| 53284 | /* 150543 */ GIR_EraseRootFromParent_Done, |
| 53285 | /* 150544 */ // Label 3311: @150544 |
| 53286 | /* 150544 */ GIM_Try, /*On fail goto*//*Label 3312*/ GIMT_Encode4(150606), // Rule ID 2141 // |
| 53287 | /* 150549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53288 | /* 150552 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53289 | /* 150556 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53290 | /* 150560 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53291 | /* 150564 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53292 | /* 150568 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53293 | /* 150571 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53294 | /* 150575 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53295 | /* 150579 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53296 | /* 150581 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53297 | /* 150588 */ // (fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53298 | /* 150588 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDrm), |
| 53299 | /* 150591 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53300 | /* 150593 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53301 | /* 150595 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53302 | /* 150599 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53303 | /* 150604 */ GIR_RootConstrainSelectedInstOperands, |
| 53304 | /* 150605 */ // GIR_Coverage, 2141, |
| 53305 | /* 150605 */ GIR_EraseRootFromParent_Done, |
| 53306 | /* 150606 */ // Label 3312: @150606 |
| 53307 | /* 150606 */ GIM_Try, /*On fail goto*//*Label 3313*/ GIMT_Encode4(150668), // Rule ID 6313 // |
| 53308 | /* 150611 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53309 | /* 150614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53310 | /* 150618 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53311 | /* 150622 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53312 | /* 150626 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53313 | /* 150630 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53314 | /* 150633 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53315 | /* 150637 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53316 | /* 150641 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53317 | /* 150643 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53318 | /* 150650 */ // (fadd:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53319 | /* 150650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rm), |
| 53320 | /* 150653 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53321 | /* 150655 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53322 | /* 150657 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53323 | /* 150661 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53324 | /* 150666 */ GIR_RootConstrainSelectedInstOperands, |
| 53325 | /* 150667 */ // GIR_Coverage, 6313, |
| 53326 | /* 150667 */ GIR_EraseRootFromParent_Done, |
| 53327 | /* 150668 */ // Label 3313: @150668 |
| 53328 | /* 150668 */ GIM_Try, /*On fail goto*//*Label 3314*/ GIMT_Encode4(150699), // Rule ID 2139 // |
| 53329 | /* 150673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53330 | /* 150676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53331 | /* 150680 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53332 | /* 150684 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53333 | /* 150688 */ // (fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VADDPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 53334 | /* 150688 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDrr), |
| 53335 | /* 150693 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53336 | /* 150697 */ GIR_RootConstrainSelectedInstOperands, |
| 53337 | /* 150698 */ // GIR_Coverage, 2139, |
| 53338 | /* 150698 */ GIR_Done, |
| 53339 | /* 150699 */ // Label 3314: @150699 |
| 53340 | /* 150699 */ GIM_Try, /*On fail goto*//*Label 3315*/ GIMT_Encode4(150730), // Rule ID 2155 // |
| 53341 | /* 150704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 53342 | /* 150707 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53343 | /* 150711 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53344 | /* 150715 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53345 | /* 150719 */ // (fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (ADDPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 53346 | /* 150719 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDPDrr), |
| 53347 | /* 150724 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53348 | /* 150728 */ GIR_RootConstrainSelectedInstOperands, |
| 53349 | /* 150729 */ // GIR_Coverage, 2155, |
| 53350 | /* 150729 */ GIR_Done, |
| 53351 | /* 150730 */ // Label 3315: @150730 |
| 53352 | /* 150730 */ GIM_Try, /*On fail goto*//*Label 3316*/ GIMT_Encode4(150761), // Rule ID 6309 // |
| 53353 | /* 150735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53354 | /* 150738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53355 | /* 150742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53356 | /* 150746 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53357 | /* 150750 */ // (fadd:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VADDPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 53358 | /* 150750 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rr), |
| 53359 | /* 150755 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53360 | /* 150759 */ GIR_RootConstrainSelectedInstOperands, |
| 53361 | /* 150760 */ // GIR_Coverage, 6309, |
| 53362 | /* 150760 */ GIR_Done, |
| 53363 | /* 150761 */ // Label 3316: @150761 |
| 53364 | /* 150761 */ GIM_Reject, |
| 53365 | /* 150762 */ // Label 3309: @150762 |
| 53366 | /* 150762 */ GIM_Reject, |
| 53367 | /* 150763 */ // Label 3238: @150763 |
| 53368 | /* 150763 */ GIM_Try, /*On fail goto*//*Label 3317*/ GIMT_Encode4(151116), |
| 53369 | /* 150768 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 53370 | /* 150771 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 53371 | /* 150774 */ GIM_Try, /*On fail goto*//*Label 3318*/ GIMT_Encode4(150836), // Rule ID 23452 // |
| 53372 | /* 150779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53373 | /* 150782 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53374 | /* 150786 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53375 | /* 150790 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53376 | /* 150794 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53377 | /* 150797 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53378 | /* 150801 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53379 | /* 150805 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53380 | /* 150809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53381 | /* 150811 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53382 | /* 150818 */ // (fadd:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1) => (VADDPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53383 | /* 150818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSrm), |
| 53384 | /* 150821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53385 | /* 150823 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53386 | /* 150825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53387 | /* 150829 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53388 | /* 150834 */ GIR_RootConstrainSelectedInstOperands, |
| 53389 | /* 150835 */ // GIR_Coverage, 23452, |
| 53390 | /* 150835 */ GIR_EraseRootFromParent_Done, |
| 53391 | /* 150836 */ // Label 3318: @150836 |
| 53392 | /* 150836 */ GIM_Try, /*On fail goto*//*Label 3319*/ GIMT_Encode4(150898), // Rule ID 24362 // |
| 53393 | /* 150841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53394 | /* 150844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53395 | /* 150848 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53396 | /* 150852 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53397 | /* 150856 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53398 | /* 150859 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53399 | /* 150863 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53400 | /* 150867 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53401 | /* 150871 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53402 | /* 150873 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53403 | /* 150880 */ // (fadd:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1) => (VADDPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53404 | /* 150880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rm), |
| 53405 | /* 150883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53406 | /* 150885 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53407 | /* 150887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53408 | /* 150891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53409 | /* 150896 */ GIR_RootConstrainSelectedInstOperands, |
| 53410 | /* 150897 */ // GIR_Coverage, 24362, |
| 53411 | /* 150897 */ GIR_EraseRootFromParent_Done, |
| 53412 | /* 150898 */ // Label 3319: @150898 |
| 53413 | /* 150898 */ GIM_Try, /*On fail goto*//*Label 3320*/ GIMT_Encode4(150960), // Rule ID 2137 // |
| 53414 | /* 150903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53415 | /* 150906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53416 | /* 150910 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53417 | /* 150914 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53418 | /* 150918 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53419 | /* 150922 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53420 | /* 150925 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53421 | /* 150929 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53422 | /* 150933 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53423 | /* 150935 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53424 | /* 150942 */ // (fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53425 | /* 150942 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSrm), |
| 53426 | /* 150945 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53427 | /* 150947 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53428 | /* 150949 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53429 | /* 150953 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53430 | /* 150958 */ GIR_RootConstrainSelectedInstOperands, |
| 53431 | /* 150959 */ // GIR_Coverage, 2137, |
| 53432 | /* 150959 */ GIR_EraseRootFromParent_Done, |
| 53433 | /* 150960 */ // Label 3320: @150960 |
| 53434 | /* 150960 */ GIM_Try, /*On fail goto*//*Label 3321*/ GIMT_Encode4(151022), // Rule ID 6289 // |
| 53435 | /* 150965 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53436 | /* 150968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53437 | /* 150972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53438 | /* 150976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53439 | /* 150980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53440 | /* 150984 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53441 | /* 150987 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53442 | /* 150991 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53443 | /* 150995 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53444 | /* 150997 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53445 | /* 151004 */ // (fadd:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53446 | /* 151004 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rm), |
| 53447 | /* 151007 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53448 | /* 151009 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53449 | /* 151011 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53450 | /* 151015 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53451 | /* 151020 */ GIR_RootConstrainSelectedInstOperands, |
| 53452 | /* 151021 */ // GIR_Coverage, 6289, |
| 53453 | /* 151021 */ GIR_EraseRootFromParent_Done, |
| 53454 | /* 151022 */ // Label 3321: @151022 |
| 53455 | /* 151022 */ GIM_Try, /*On fail goto*//*Label 3322*/ GIMT_Encode4(151053), // Rule ID 2135 // |
| 53456 | /* 151027 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53457 | /* 151030 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53458 | /* 151034 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53459 | /* 151038 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53460 | /* 151042 */ // (fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VADDPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 53461 | /* 151042 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSrr), |
| 53462 | /* 151047 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53463 | /* 151051 */ GIR_RootConstrainSelectedInstOperands, |
| 53464 | /* 151052 */ // GIR_Coverage, 2135, |
| 53465 | /* 151052 */ GIR_Done, |
| 53466 | /* 151053 */ // Label 3322: @151053 |
| 53467 | /* 151053 */ GIM_Try, /*On fail goto*//*Label 3323*/ GIMT_Encode4(151084), // Rule ID 2151 // |
| 53468 | /* 151058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 53469 | /* 151061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53470 | /* 151065 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53471 | /* 151069 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 53472 | /* 151073 */ // (fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (ADDPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 53473 | /* 151073 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDPSrr), |
| 53474 | /* 151078 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53475 | /* 151082 */ GIR_RootConstrainSelectedInstOperands, |
| 53476 | /* 151083 */ // GIR_Coverage, 2151, |
| 53477 | /* 151083 */ GIR_Done, |
| 53478 | /* 151084 */ // Label 3323: @151084 |
| 53479 | /* 151084 */ GIM_Try, /*On fail goto*//*Label 3324*/ GIMT_Encode4(151115), // Rule ID 6285 // |
| 53480 | /* 151089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53481 | /* 151092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53482 | /* 151096 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53483 | /* 151100 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53484 | /* 151104 */ // (fadd:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VADDPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 53485 | /* 151104 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rr), |
| 53486 | /* 151109 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53487 | /* 151113 */ GIR_RootConstrainSelectedInstOperands, |
| 53488 | /* 151114 */ // GIR_Coverage, 6285, |
| 53489 | /* 151114 */ GIR_Done, |
| 53490 | /* 151115 */ // Label 3324: @151115 |
| 53491 | /* 151115 */ GIM_Reject, |
| 53492 | /* 151116 */ // Label 3317: @151116 |
| 53493 | /* 151116 */ GIM_Reject, |
| 53494 | /* 151117 */ // Label 3239: @151117 |
| 53495 | /* 151117 */ GIM_Try, /*On fail goto*//*Label 3325*/ GIMT_Encode4(151439), |
| 53496 | /* 151122 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 53497 | /* 151125 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 53498 | /* 151128 */ GIM_Try, /*On fail goto*//*Label 3326*/ GIMT_Encode4(151190), // Rule ID 23458 // |
| 53499 | /* 151133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53500 | /* 151136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53501 | /* 151140 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53502 | /* 151144 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53503 | /* 151148 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53504 | /* 151151 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53505 | /* 151155 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53506 | /* 151159 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53507 | /* 151163 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53508 | /* 151165 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53509 | /* 151172 */ // (fadd:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1) => (VADDPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53510 | /* 151172 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDYrm), |
| 53511 | /* 151175 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53512 | /* 151177 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53513 | /* 151179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53514 | /* 151183 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53515 | /* 151188 */ GIR_RootConstrainSelectedInstOperands, |
| 53516 | /* 151189 */ // GIR_Coverage, 23458, |
| 53517 | /* 151189 */ GIR_EraseRootFromParent_Done, |
| 53518 | /* 151190 */ // Label 3326: @151190 |
| 53519 | /* 151190 */ GIM_Try, /*On fail goto*//*Label 3327*/ GIMT_Encode4(151252), // Rule ID 24386 // |
| 53520 | /* 151195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53521 | /* 151198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53522 | /* 151202 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53523 | /* 151206 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53524 | /* 151210 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53525 | /* 151213 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53526 | /* 151217 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53527 | /* 151221 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53528 | /* 151225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53529 | /* 151227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53530 | /* 151234 */ // (fadd:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1) => (VADDPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53531 | /* 151234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rm), |
| 53532 | /* 151237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53533 | /* 151239 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53534 | /* 151241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53535 | /* 151245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53536 | /* 151250 */ GIR_RootConstrainSelectedInstOperands, |
| 53537 | /* 151251 */ // GIR_Coverage, 24386, |
| 53538 | /* 151251 */ GIR_EraseRootFromParent_Done, |
| 53539 | /* 151252 */ // Label 3327: @151252 |
| 53540 | /* 151252 */ GIM_Try, /*On fail goto*//*Label 3328*/ GIMT_Encode4(151314), // Rule ID 2149 // |
| 53541 | /* 151257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53542 | /* 151260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53543 | /* 151264 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53544 | /* 151268 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53545 | /* 151272 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53546 | /* 151276 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53547 | /* 151279 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53548 | /* 151283 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53549 | /* 151287 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53550 | /* 151289 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53551 | /* 151296 */ // (fadd:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53552 | /* 151296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDYrm), |
| 53553 | /* 151299 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53554 | /* 151301 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53555 | /* 151303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53556 | /* 151307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53557 | /* 151312 */ GIR_RootConstrainSelectedInstOperands, |
| 53558 | /* 151313 */ // GIR_Coverage, 2149, |
| 53559 | /* 151313 */ GIR_EraseRootFromParent_Done, |
| 53560 | /* 151314 */ // Label 3328: @151314 |
| 53561 | /* 151314 */ GIM_Try, /*On fail goto*//*Label 3329*/ GIMT_Encode4(151376), // Rule ID 6325 // |
| 53562 | /* 151319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53563 | /* 151322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53564 | /* 151326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53565 | /* 151330 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53566 | /* 151334 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53567 | /* 151338 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53568 | /* 151341 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53569 | /* 151345 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53570 | /* 151349 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53571 | /* 151351 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53572 | /* 151358 */ // (fadd:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53573 | /* 151358 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rm), |
| 53574 | /* 151361 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53575 | /* 151363 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53576 | /* 151365 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53577 | /* 151369 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53578 | /* 151374 */ GIR_RootConstrainSelectedInstOperands, |
| 53579 | /* 151375 */ // GIR_Coverage, 6325, |
| 53580 | /* 151375 */ GIR_EraseRootFromParent_Done, |
| 53581 | /* 151376 */ // Label 3329: @151376 |
| 53582 | /* 151376 */ GIM_Try, /*On fail goto*//*Label 3330*/ GIMT_Encode4(151407), // Rule ID 2147 // |
| 53583 | /* 151381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53584 | /* 151384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53585 | /* 151388 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53586 | /* 151392 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53587 | /* 151396 */ // (fadd:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VADDPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 53588 | /* 151396 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDYrr), |
| 53589 | /* 151401 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53590 | /* 151405 */ GIR_RootConstrainSelectedInstOperands, |
| 53591 | /* 151406 */ // GIR_Coverage, 2147, |
| 53592 | /* 151406 */ GIR_Done, |
| 53593 | /* 151407 */ // Label 3330: @151407 |
| 53594 | /* 151407 */ GIM_Try, /*On fail goto*//*Label 3331*/ GIMT_Encode4(151438), // Rule ID 6321 // |
| 53595 | /* 151412 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53596 | /* 151415 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53597 | /* 151419 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53598 | /* 151423 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53599 | /* 151427 */ // (fadd:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VADDPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 53600 | /* 151427 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rr), |
| 53601 | /* 151432 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53602 | /* 151436 */ GIR_RootConstrainSelectedInstOperands, |
| 53603 | /* 151437 */ // GIR_Coverage, 6321, |
| 53604 | /* 151437 */ GIR_Done, |
| 53605 | /* 151438 */ // Label 3331: @151438 |
| 53606 | /* 151438 */ GIM_Reject, |
| 53607 | /* 151439 */ // Label 3325: @151439 |
| 53608 | /* 151439 */ GIM_Reject, |
| 53609 | /* 151440 */ // Label 3240: @151440 |
| 53610 | /* 151440 */ GIM_Try, /*On fail goto*//*Label 3332*/ GIMT_Encode4(151599), |
| 53611 | /* 151445 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 53612 | /* 151448 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 53613 | /* 151451 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53614 | /* 151455 */ GIM_Try, /*On fail goto*//*Label 3333*/ GIMT_Encode4(151513), // Rule ID 24402 // |
| 53615 | /* 151460 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 53616 | /* 151463 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53617 | /* 151467 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53618 | /* 151471 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53619 | /* 151474 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53620 | /* 151478 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53621 | /* 151482 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53622 | /* 151486 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53623 | /* 151488 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53624 | /* 151495 */ // (fadd:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1) => (VADDPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53625 | /* 151495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rm), |
| 53626 | /* 151498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53627 | /* 151500 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53628 | /* 151502 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53629 | /* 151506 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53630 | /* 151511 */ GIR_RootConstrainSelectedInstOperands, |
| 53631 | /* 151512 */ // GIR_Coverage, 24402, |
| 53632 | /* 151512 */ GIR_EraseRootFromParent_Done, |
| 53633 | /* 151513 */ // Label 3333: @151513 |
| 53634 | /* 151513 */ GIM_Try, /*On fail goto*//*Label 3334*/ GIMT_Encode4(151571), // Rule ID 6349 // |
| 53635 | /* 151518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 53636 | /* 151521 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53637 | /* 151525 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53638 | /* 151529 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53639 | /* 151533 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53640 | /* 151536 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53641 | /* 151540 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53642 | /* 151544 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53643 | /* 151546 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53644 | /* 151553 */ // (fadd:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53645 | /* 151553 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rm), |
| 53646 | /* 151556 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53647 | /* 151558 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53648 | /* 151560 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53649 | /* 151564 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53650 | /* 151569 */ GIR_RootConstrainSelectedInstOperands, |
| 53651 | /* 151570 */ // GIR_Coverage, 6349, |
| 53652 | /* 151570 */ GIR_EraseRootFromParent_Done, |
| 53653 | /* 151571 */ // Label 3334: @151571 |
| 53654 | /* 151571 */ GIM_Try, /*On fail goto*//*Label 3335*/ GIMT_Encode4(151598), // Rule ID 6345 // |
| 53655 | /* 151576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 53656 | /* 151579 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53657 | /* 151583 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 53658 | /* 151587 */ // (fadd:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VADDPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 53659 | /* 151587 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rr), |
| 53660 | /* 151592 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53661 | /* 151596 */ GIR_RootConstrainSelectedInstOperands, |
| 53662 | /* 151597 */ // GIR_Coverage, 6345, |
| 53663 | /* 151597 */ GIR_Done, |
| 53664 | /* 151598 */ // Label 3335: @151598 |
| 53665 | /* 151598 */ GIM_Reject, |
| 53666 | /* 151599 */ // Label 3332: @151599 |
| 53667 | /* 151599 */ GIM_Reject, |
| 53668 | /* 151600 */ // Label 3241: @151600 |
| 53669 | /* 151600 */ GIM_Try, /*On fail goto*//*Label 3336*/ GIMT_Encode4(151922), |
| 53670 | /* 151605 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 53671 | /* 151608 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 53672 | /* 151611 */ GIM_Try, /*On fail goto*//*Label 3337*/ GIMT_Encode4(151673), // Rule ID 23456 // |
| 53673 | /* 151616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53674 | /* 151619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53675 | /* 151623 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53676 | /* 151627 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53677 | /* 151631 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53678 | /* 151634 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53679 | /* 151638 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53680 | /* 151642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53681 | /* 151646 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53682 | /* 151648 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53683 | /* 151655 */ // (fadd:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1) => (VADDPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53684 | /* 151655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSYrm), |
| 53685 | /* 151658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53686 | /* 151660 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53687 | /* 151662 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53688 | /* 151666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53689 | /* 151671 */ GIR_RootConstrainSelectedInstOperands, |
| 53690 | /* 151672 */ // GIR_Coverage, 23456, |
| 53691 | /* 151672 */ GIR_EraseRootFromParent_Done, |
| 53692 | /* 151673 */ // Label 3337: @151673 |
| 53693 | /* 151673 */ GIM_Try, /*On fail goto*//*Label 3338*/ GIMT_Encode4(151735), // Rule ID 24370 // |
| 53694 | /* 151678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53695 | /* 151681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53696 | /* 151685 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53697 | /* 151689 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53698 | /* 151693 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53699 | /* 151696 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53700 | /* 151700 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53701 | /* 151704 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53702 | /* 151708 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53703 | /* 151710 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53704 | /* 151717 */ // (fadd:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1) => (VADDPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53705 | /* 151717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rm), |
| 53706 | /* 151720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53707 | /* 151722 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53708 | /* 151724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53709 | /* 151728 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53710 | /* 151733 */ GIR_RootConstrainSelectedInstOperands, |
| 53711 | /* 151734 */ // GIR_Coverage, 24370, |
| 53712 | /* 151734 */ GIR_EraseRootFromParent_Done, |
| 53713 | /* 151735 */ // Label 3338: @151735 |
| 53714 | /* 151735 */ GIM_Try, /*On fail goto*//*Label 3339*/ GIMT_Encode4(151797), // Rule ID 2145 // |
| 53715 | /* 151740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53716 | /* 151743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53717 | /* 151747 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53718 | /* 151751 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53719 | /* 151755 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53720 | /* 151759 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53721 | /* 151762 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53722 | /* 151766 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53723 | /* 151770 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53724 | /* 151772 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53725 | /* 151779 */ // (fadd:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53726 | /* 151779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSYrm), |
| 53727 | /* 151782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53728 | /* 151784 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53729 | /* 151786 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53730 | /* 151790 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53731 | /* 151795 */ GIR_RootConstrainSelectedInstOperands, |
| 53732 | /* 151796 */ // GIR_Coverage, 2145, |
| 53733 | /* 151796 */ GIR_EraseRootFromParent_Done, |
| 53734 | /* 151797 */ // Label 3339: @151797 |
| 53735 | /* 151797 */ GIM_Try, /*On fail goto*//*Label 3340*/ GIMT_Encode4(151859), // Rule ID 6301 // |
| 53736 | /* 151802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53737 | /* 151805 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53738 | /* 151809 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53739 | /* 151813 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53740 | /* 151817 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53741 | /* 151821 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53742 | /* 151824 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53743 | /* 151828 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53744 | /* 151832 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53745 | /* 151834 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53746 | /* 151841 */ // (fadd:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53747 | /* 151841 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rm), |
| 53748 | /* 151844 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53749 | /* 151846 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53750 | /* 151848 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53751 | /* 151852 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53752 | /* 151857 */ GIR_RootConstrainSelectedInstOperands, |
| 53753 | /* 151858 */ // GIR_Coverage, 6301, |
| 53754 | /* 151858 */ GIR_EraseRootFromParent_Done, |
| 53755 | /* 151859 */ // Label 3340: @151859 |
| 53756 | /* 151859 */ GIM_Try, /*On fail goto*//*Label 3341*/ GIMT_Encode4(151890), // Rule ID 2143 // |
| 53757 | /* 151864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 53758 | /* 151867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53759 | /* 151871 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53760 | /* 151875 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 53761 | /* 151879 */ // (fadd:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VADDPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 53762 | /* 151879 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSYrr), |
| 53763 | /* 151884 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53764 | /* 151888 */ GIR_RootConstrainSelectedInstOperands, |
| 53765 | /* 151889 */ // GIR_Coverage, 2143, |
| 53766 | /* 151889 */ GIR_Done, |
| 53767 | /* 151890 */ // Label 3341: @151890 |
| 53768 | /* 151890 */ GIM_Try, /*On fail goto*//*Label 3342*/ GIMT_Encode4(151921), // Rule ID 6297 // |
| 53769 | /* 151895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 53770 | /* 151898 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53771 | /* 151902 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53772 | /* 151906 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53773 | /* 151910 */ // (fadd:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VADDPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 53774 | /* 151910 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rr), |
| 53775 | /* 151915 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53776 | /* 151919 */ GIR_RootConstrainSelectedInstOperands, |
| 53777 | /* 151920 */ // GIR_Coverage, 6297, |
| 53778 | /* 151920 */ GIR_Done, |
| 53779 | /* 151921 */ // Label 3342: @151921 |
| 53780 | /* 151921 */ GIM_Reject, |
| 53781 | /* 151922 */ // Label 3336: @151922 |
| 53782 | /* 151922 */ GIM_Reject, |
| 53783 | /* 151923 */ // Label 3242: @151923 |
| 53784 | /* 151923 */ GIM_Try, /*On fail goto*//*Label 3343*/ GIMT_Encode4(152082), |
| 53785 | /* 151928 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 53786 | /* 151931 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 53787 | /* 151934 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53788 | /* 151938 */ GIM_Try, /*On fail goto*//*Label 3344*/ GIMT_Encode4(151996), // Rule ID 24354 // |
| 53789 | /* 151943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53790 | /* 151946 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53791 | /* 151950 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53792 | /* 151954 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53793 | /* 151957 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53794 | /* 151961 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53795 | /* 151965 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53796 | /* 151969 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53797 | /* 151971 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53798 | /* 151978 */ // (fadd:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1) => (VADDPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53799 | /* 151978 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZrm), |
| 53800 | /* 151981 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53801 | /* 151983 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53802 | /* 151985 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53803 | /* 151989 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53804 | /* 151994 */ GIR_RootConstrainSelectedInstOperands, |
| 53805 | /* 151995 */ // GIR_Coverage, 24354, |
| 53806 | /* 151995 */ GIR_EraseRootFromParent_Done, |
| 53807 | /* 151996 */ // Label 3344: @151996 |
| 53808 | /* 151996 */ GIM_Try, /*On fail goto*//*Label 3345*/ GIMT_Encode4(152054), // Rule ID 6277 // |
| 53809 | /* 152001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53810 | /* 152004 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53811 | /* 152008 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53812 | /* 152012 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53813 | /* 152016 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53814 | /* 152019 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53815 | /* 152023 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53816 | /* 152027 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53817 | /* 152029 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53818 | /* 152036 */ // (fadd:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53819 | /* 152036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZrm), |
| 53820 | /* 152039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53821 | /* 152041 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53822 | /* 152043 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53823 | /* 152047 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53824 | /* 152052 */ GIR_RootConstrainSelectedInstOperands, |
| 53825 | /* 152053 */ // GIR_Coverage, 6277, |
| 53826 | /* 152053 */ GIR_EraseRootFromParent_Done, |
| 53827 | /* 152054 */ // Label 3345: @152054 |
| 53828 | /* 152054 */ GIM_Try, /*On fail goto*//*Label 3346*/ GIMT_Encode4(152081), // Rule ID 6273 // |
| 53829 | /* 152059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53830 | /* 152062 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53831 | /* 152066 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53832 | /* 152070 */ // (fadd:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VADDPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 53833 | /* 152070 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZrr), |
| 53834 | /* 152075 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53835 | /* 152079 */ GIR_RootConstrainSelectedInstOperands, |
| 53836 | /* 152080 */ // GIR_Coverage, 6273, |
| 53837 | /* 152080 */ GIR_Done, |
| 53838 | /* 152081 */ // Label 3346: @152081 |
| 53839 | /* 152081 */ GIM_Reject, |
| 53840 | /* 152082 */ // Label 3343: @152082 |
| 53841 | /* 152082 */ GIM_Reject, |
| 53842 | /* 152083 */ // Label 3243: @152083 |
| 53843 | /* 152083 */ GIM_Try, /*On fail goto*//*Label 3347*/ GIMT_Encode4(152242), |
| 53844 | /* 152088 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 53845 | /* 152091 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 53846 | /* 152094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53847 | /* 152098 */ GIM_Try, /*On fail goto*//*Label 3348*/ GIMT_Encode4(152156), // Rule ID 24410 // |
| 53848 | /* 152103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 53849 | /* 152106 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53850 | /* 152110 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53851 | /* 152114 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53852 | /* 152117 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53853 | /* 152121 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53854 | /* 152125 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53855 | /* 152129 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53856 | /* 152131 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53857 | /* 152138 */ // (fadd:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1) => (VADDPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53858 | /* 152138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rm), |
| 53859 | /* 152141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53860 | /* 152143 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53861 | /* 152145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53862 | /* 152149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53863 | /* 152154 */ GIR_RootConstrainSelectedInstOperands, |
| 53864 | /* 152155 */ // GIR_Coverage, 24410, |
| 53865 | /* 152155 */ GIR_EraseRootFromParent_Done, |
| 53866 | /* 152156 */ // Label 3348: @152156 |
| 53867 | /* 152156 */ GIM_Try, /*On fail goto*//*Label 3349*/ GIMT_Encode4(152214), // Rule ID 6361 // |
| 53868 | /* 152161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 53869 | /* 152164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53870 | /* 152168 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53871 | /* 152172 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53872 | /* 152176 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53873 | /* 152179 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53874 | /* 152183 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53875 | /* 152187 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53876 | /* 152189 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53877 | /* 152196 */ // (fadd:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53878 | /* 152196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rm), |
| 53879 | /* 152199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53880 | /* 152201 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53881 | /* 152203 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53882 | /* 152207 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53883 | /* 152212 */ GIR_RootConstrainSelectedInstOperands, |
| 53884 | /* 152213 */ // GIR_Coverage, 6361, |
| 53885 | /* 152213 */ GIR_EraseRootFromParent_Done, |
| 53886 | /* 152214 */ // Label 3349: @152214 |
| 53887 | /* 152214 */ GIM_Try, /*On fail goto*//*Label 3350*/ GIMT_Encode4(152241), // Rule ID 6357 // |
| 53888 | /* 152219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 53889 | /* 152222 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53890 | /* 152226 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 53891 | /* 152230 */ // (fadd:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VADDPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 53892 | /* 152230 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rr), |
| 53893 | /* 152235 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53894 | /* 152239 */ GIR_RootConstrainSelectedInstOperands, |
| 53895 | /* 152240 */ // GIR_Coverage, 6357, |
| 53896 | /* 152240 */ GIR_Done, |
| 53897 | /* 152241 */ // Label 3350: @152241 |
| 53898 | /* 152241 */ GIM_Reject, |
| 53899 | /* 152242 */ // Label 3347: @152242 |
| 53900 | /* 152242 */ GIM_Reject, |
| 53901 | /* 152243 */ // Label 3244: @152243 |
| 53902 | /* 152243 */ GIM_Try, /*On fail goto*//*Label 3351*/ GIMT_Encode4(152402), |
| 53903 | /* 152248 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 53904 | /* 152251 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 53905 | /* 152254 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53906 | /* 152258 */ GIM_Try, /*On fail goto*//*Label 3352*/ GIMT_Encode4(152316), // Rule ID 24346 // |
| 53907 | /* 152263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53908 | /* 152266 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53909 | /* 152270 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53910 | /* 152274 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53911 | /* 152277 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53912 | /* 152281 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53913 | /* 152285 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53914 | /* 152289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53915 | /* 152291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53916 | /* 152298 */ // (fadd:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1) => (VADDPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53917 | /* 152298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZrm), |
| 53918 | /* 152301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53919 | /* 152303 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53920 | /* 152305 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53921 | /* 152309 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53922 | /* 152314 */ GIR_RootConstrainSelectedInstOperands, |
| 53923 | /* 152315 */ // GIR_Coverage, 24346, |
| 53924 | /* 152315 */ GIR_EraseRootFromParent_Done, |
| 53925 | /* 152316 */ // Label 3352: @152316 |
| 53926 | /* 152316 */ GIM_Try, /*On fail goto*//*Label 3353*/ GIMT_Encode4(152374), // Rule ID 6265 // |
| 53927 | /* 152321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53928 | /* 152324 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53929 | /* 152328 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53930 | /* 152332 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53931 | /* 152336 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53932 | /* 152339 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53933 | /* 152343 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53934 | /* 152347 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53935 | /* 152349 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53936 | /* 152356 */ // (fadd:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53937 | /* 152356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZrm), |
| 53938 | /* 152359 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53939 | /* 152361 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53940 | /* 152363 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53941 | /* 152367 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53942 | /* 152372 */ GIR_RootConstrainSelectedInstOperands, |
| 53943 | /* 152373 */ // GIR_Coverage, 6265, |
| 53944 | /* 152373 */ GIR_EraseRootFromParent_Done, |
| 53945 | /* 152374 */ // Label 3353: @152374 |
| 53946 | /* 152374 */ GIM_Try, /*On fail goto*//*Label 3354*/ GIMT_Encode4(152401), // Rule ID 6261 // |
| 53947 | /* 152379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 53948 | /* 152382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53949 | /* 152386 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53950 | /* 152390 */ // (fadd:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VADDPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 53951 | /* 152390 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZrr), |
| 53952 | /* 152395 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 53953 | /* 152399 */ GIR_RootConstrainSelectedInstOperands, |
| 53954 | /* 152400 */ // GIR_Coverage, 6261, |
| 53955 | /* 152400 */ GIR_Done, |
| 53956 | /* 152401 */ // Label 3354: @152401 |
| 53957 | /* 152401 */ GIM_Reject, |
| 53958 | /* 152402 */ // Label 3351: @152402 |
| 53959 | /* 152402 */ GIM_Reject, |
| 53960 | /* 152403 */ // Label 3245: @152403 |
| 53961 | /* 152403 */ GIM_Try, /*On fail goto*//*Label 3355*/ GIMT_Encode4(152562), |
| 53962 | /* 152408 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 53963 | /* 152411 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 53964 | /* 152414 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53965 | /* 152418 */ GIM_Try, /*On fail goto*//*Label 3356*/ GIMT_Encode4(152476), // Rule ID 24394 // |
| 53966 | /* 152423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 53967 | /* 152426 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 53968 | /* 152430 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53969 | /* 152434 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53970 | /* 152437 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53971 | /* 152441 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53972 | /* 152445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53973 | /* 152449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53974 | /* 152451 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53975 | /* 152458 */ // (fadd:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1) => (VADDPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53976 | /* 152458 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZrm), |
| 53977 | /* 152461 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53978 | /* 152463 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 53979 | /* 152465 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 53980 | /* 152469 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 53981 | /* 152474 */ GIR_RootConstrainSelectedInstOperands, |
| 53982 | /* 152475 */ // GIR_Coverage, 24394, |
| 53983 | /* 152475 */ GIR_EraseRootFromParent_Done, |
| 53984 | /* 152476 */ // Label 3356: @152476 |
| 53985 | /* 152476 */ GIM_Try, /*On fail goto*//*Label 3357*/ GIMT_Encode4(152534), // Rule ID 6337 // |
| 53986 | /* 152481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 53987 | /* 152484 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 53988 | /* 152488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 53989 | /* 152492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 53990 | /* 152496 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 53991 | /* 152499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 53992 | /* 152503 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 53993 | /* 152507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 53994 | /* 152509 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 53995 | /* 152516 */ // (fadd:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VADDPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 53996 | /* 152516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZrm), |
| 53997 | /* 152519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 53998 | /* 152521 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 53999 | /* 152523 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54000 | /* 152527 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54001 | /* 152532 */ GIR_RootConstrainSelectedInstOperands, |
| 54002 | /* 152533 */ // GIR_Coverage, 6337, |
| 54003 | /* 152533 */ GIR_EraseRootFromParent_Done, |
| 54004 | /* 152534 */ // Label 3357: @152534 |
| 54005 | /* 152534 */ GIM_Try, /*On fail goto*//*Label 3358*/ GIMT_Encode4(152561), // Rule ID 6333 // |
| 54006 | /* 152539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 54007 | /* 152542 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54008 | /* 152546 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 54009 | /* 152550 */ // (fadd:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VADDPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 54010 | /* 152550 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZrr), |
| 54011 | /* 152555 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54012 | /* 152559 */ GIR_RootConstrainSelectedInstOperands, |
| 54013 | /* 152560 */ // GIR_Coverage, 6333, |
| 54014 | /* 152560 */ GIR_Done, |
| 54015 | /* 152561 */ // Label 3358: @152561 |
| 54016 | /* 152561 */ GIM_Reject, |
| 54017 | /* 152562 */ // Label 3355: @152562 |
| 54018 | /* 152562 */ GIM_Reject, |
| 54019 | /* 152563 */ // Label 3246: @152563 |
| 54020 | /* 152563 */ GIM_Reject, |
| 54021 | /* 152564 */ // Label 43: @152564 |
| 54022 | /* 152564 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3372*/ GIMT_Encode4(156745), |
| 54023 | /* 152575 */ /*GILLT_s16*//*Label 3359*/ GIMT_Encode4(152659), |
| 54024 | /* 152579 */ /*GILLT_s32*//*Label 3360*/ GIMT_Encode4(152757), |
| 54025 | /* 152583 */ /*GILLT_s64*//*Label 3361*/ GIMT_Encode4(153722), |
| 54026 | /* 152587 */ /*GILLT_s80*//*Label 3362*/ GIMT_Encode4(154831), GIMT_Encode4(0), GIMT_Encode4(0), |
| 54027 | /* 152599 */ /*GILLT_v2s64*//*Label 3363*/ GIMT_Encode4(155397), GIMT_Encode4(0), |
| 54028 | /* 152607 */ /*GILLT_v4s32*//*Label 3364*/ GIMT_Encode4(155627), |
| 54029 | /* 152611 */ /*GILLT_v4s64*//*Label 3365*/ GIMT_Encode4(155857), GIMT_Encode4(0), |
| 54030 | /* 152619 */ /*GILLT_v8s16*//*Label 3366*/ GIMT_Encode4(156056), |
| 54031 | /* 152623 */ /*GILLT_v8s32*//*Label 3367*/ GIMT_Encode4(156154), |
| 54032 | /* 152627 */ /*GILLT_v8s64*//*Label 3368*/ GIMT_Encode4(156353), GIMT_Encode4(0), GIMT_Encode4(0), |
| 54033 | /* 152639 */ /*GILLT_v16s16*//*Label 3369*/ GIMT_Encode4(156451), |
| 54034 | /* 152643 */ /*GILLT_v16s32*//*Label 3370*/ GIMT_Encode4(156549), GIMT_Encode4(0), GIMT_Encode4(0), |
| 54035 | /* 152655 */ /*GILLT_v32s16*//*Label 3371*/ GIMT_Encode4(156647), |
| 54036 | /* 152659 */ // Label 3359: @152659 |
| 54037 | /* 152659 */ GIM_Try, /*On fail goto*//*Label 3373*/ GIMT_Encode4(152756), |
| 54038 | /* 152664 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 54039 | /* 152667 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 54040 | /* 152670 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 54041 | /* 152674 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 54042 | /* 152678 */ GIM_Try, /*On fail goto*//*Label 3374*/ GIMT_Encode4(152732), // Rule ID 6073 // |
| 54043 | /* 152683 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 54044 | /* 152686 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54045 | /* 152690 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54046 | /* 152694 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54047 | /* 152697 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54048 | /* 152701 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54049 | /* 152705 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54050 | /* 152707 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54051 | /* 152714 */ // (fsub:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54052 | /* 152714 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSHZrm), |
| 54053 | /* 152717 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54054 | /* 152719 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54055 | /* 152721 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54056 | /* 152725 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54057 | /* 152730 */ GIR_RootConstrainSelectedInstOperands, |
| 54058 | /* 152731 */ // GIR_Coverage, 6073, |
| 54059 | /* 152731 */ GIR_EraseRootFromParent_Done, |
| 54060 | /* 152732 */ // Label 3374: @152732 |
| 54061 | /* 152732 */ GIM_Try, /*On fail goto*//*Label 3375*/ GIMT_Encode4(152755), // Rule ID 6071 // |
| 54062 | /* 152737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 54063 | /* 152740 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 54064 | /* 152744 */ // (fsub:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VSUBSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 54065 | /* 152744 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSHZrr), |
| 54066 | /* 152749 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54067 | /* 152753 */ GIR_RootConstrainSelectedInstOperands, |
| 54068 | /* 152754 */ // GIR_Coverage, 6071, |
| 54069 | /* 152754 */ GIR_Done, |
| 54070 | /* 152755 */ // Label 3375: @152755 |
| 54071 | /* 152755 */ GIM_Reject, |
| 54072 | /* 152756 */ // Label 3373: @152756 |
| 54073 | /* 152756 */ GIM_Reject, |
| 54074 | /* 152757 */ // Label 3360: @152757 |
| 54075 | /* 152757 */ GIM_Try, /*On fail goto*//*Label 3376*/ GIMT_Encode4(153721), |
| 54076 | /* 152762 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 54077 | /* 152765 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 54078 | /* 152768 */ GIM_Try, /*On fail goto*//*Label 3377*/ GIMT_Encode4(152850), // Rule ID 22534 // |
| 54079 | /* 152773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 54080 | /* 152776 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54081 | /* 152780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54082 | /* 152784 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54083 | /* 152788 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54084 | /* 152792 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 54085 | /* 152796 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54086 | /* 152800 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54087 | /* 152804 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54088 | /* 152807 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54089 | /* 152811 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54090 | /* 152818 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54091 | /* 152822 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54092 | /* 152824 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54093 | /* 152831 */ // (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) |
| 54094 | /* 152831 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSSrm), |
| 54095 | /* 152834 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54096 | /* 152836 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54097 | /* 152838 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54098 | /* 152842 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54099 | /* 152848 */ GIR_RootConstrainSelectedInstOperands, |
| 54100 | /* 152849 */ // GIR_Coverage, 22534, |
| 54101 | /* 152849 */ GIR_EraseRootFromParent_Done, |
| 54102 | /* 152850 */ // Label 3377: @152850 |
| 54103 | /* 152850 */ GIM_Try, /*On fail goto*//*Label 3378*/ GIMT_Encode4(152932), // Rule ID 22535 // |
| 54104 | /* 152855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54105 | /* 152858 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54106 | /* 152862 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54107 | /* 152866 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54108 | /* 152870 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54109 | /* 152874 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 54110 | /* 152878 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54111 | /* 152882 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54112 | /* 152886 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54113 | /* 152889 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54114 | /* 152893 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54115 | /* 152900 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54116 | /* 152904 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54117 | /* 152906 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54118 | /* 152913 */ // (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) |
| 54119 | /* 152913 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSrm), |
| 54120 | /* 152916 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54121 | /* 152918 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54122 | /* 152920 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54123 | /* 152924 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54124 | /* 152930 */ GIR_RootConstrainSelectedInstOperands, |
| 54125 | /* 152931 */ // GIR_Coverage, 22535, |
| 54126 | /* 152931 */ GIR_EraseRootFromParent_Done, |
| 54127 | /* 152932 */ // Label 3378: @152932 |
| 54128 | /* 152932 */ GIM_Try, /*On fail goto*//*Label 3379*/ GIMT_Encode4(153014), // Rule ID 22536 // |
| 54129 | /* 152937 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54130 | /* 152940 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54131 | /* 152944 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54132 | /* 152948 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54133 | /* 152952 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54134 | /* 152956 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 54135 | /* 152960 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54136 | /* 152964 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54137 | /* 152968 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54138 | /* 152971 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54139 | /* 152975 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54140 | /* 152982 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54141 | /* 152986 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54142 | /* 152988 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54143 | /* 152995 */ // (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) |
| 54144 | /* 152995 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrm), |
| 54145 | /* 152998 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54146 | /* 153000 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54147 | /* 153002 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54148 | /* 153006 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54149 | /* 153012 */ GIR_RootConstrainSelectedInstOperands, |
| 54150 | /* 153013 */ // GIR_Coverage, 22536, |
| 54151 | /* 153013 */ GIR_EraseRootFromParent_Done, |
| 54152 | /* 153014 */ // Label 3379: @153014 |
| 54153 | /* 153014 */ GIM_Try, /*On fail goto*//*Label 3380*/ GIMT_Encode4(153079), // Rule ID 965 // |
| 54154 | /* 153019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54155 | /* 153022 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54156 | /* 153026 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54157 | /* 153030 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54158 | /* 153034 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54159 | /* 153041 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54160 | /* 153045 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54161 | /* 153049 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54162 | /* 153051 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54163 | /* 153058 */ // (fsub:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (SUBR_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54164 | /* 153058 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m32), |
| 54165 | /* 153061 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54166 | /* 153063 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54167 | /* 153065 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54168 | /* 153069 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54169 | /* 153072 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54170 | /* 153077 */ GIR_RootConstrainSelectedInstOperands, |
| 54171 | /* 153078 */ // GIR_Coverage, 965, |
| 54172 | /* 153078 */ GIR_EraseRootFromParent_Done, |
| 54173 | /* 153079 */ // Label 3380: @153079 |
| 54174 | /* 153079 */ GIM_Try, /*On fail goto*//*Label 3381*/ GIMT_Encode4(153144), // Rule ID 967 // |
| 54175 | /* 153084 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54176 | /* 153087 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54177 | /* 153091 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54178 | /* 153095 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54179 | /* 153099 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54180 | /* 153106 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54181 | /* 153110 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54182 | /* 153114 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54183 | /* 153116 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54184 | /* 153123 */ // (fsub:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (SUBR_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54185 | /* 153123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m32), |
| 54186 | /* 153126 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54187 | /* 153128 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54188 | /* 153130 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54189 | /* 153134 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54190 | /* 153137 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54191 | /* 153142 */ GIR_RootConstrainSelectedInstOperands, |
| 54192 | /* 153143 */ // GIR_Coverage, 967, |
| 54193 | /* 153143 */ GIR_EraseRootFromParent_Done, |
| 54194 | /* 153144 */ // Label 3381: @153144 |
| 54195 | /* 153144 */ GIM_Try, /*On fail goto*//*Label 3382*/ GIMT_Encode4(153209), // Rule ID 955 // |
| 54196 | /* 153149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54197 | /* 153152 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54198 | /* 153156 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54199 | /* 153160 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54200 | /* 153164 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54201 | /* 153167 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54202 | /* 153171 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54203 | /* 153175 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54204 | /* 153179 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54205 | /* 153181 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54206 | /* 153188 */ // (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) |
| 54207 | /* 153188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp32m), |
| 54208 | /* 153191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54209 | /* 153193 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54210 | /* 153195 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54211 | /* 153199 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54212 | /* 153202 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54213 | /* 153207 */ GIR_RootConstrainSelectedInstOperands, |
| 54214 | /* 153208 */ // GIR_Coverage, 955, |
| 54215 | /* 153208 */ GIR_EraseRootFromParent_Done, |
| 54216 | /* 153209 */ // Label 3382: @153209 |
| 54217 | /* 153209 */ GIM_Try, /*On fail goto*//*Label 3383*/ GIMT_Encode4(153274), // Rule ID 943 // |
| 54218 | /* 153214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54219 | /* 153217 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54220 | /* 153221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54221 | /* 153225 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54222 | /* 153229 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54223 | /* 153233 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54224 | /* 153240 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54225 | /* 153244 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54226 | /* 153246 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54227 | /* 153253 */ // (fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54228 | /* 153253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m32), |
| 54229 | /* 153256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54230 | /* 153258 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54231 | /* 153260 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54232 | /* 153264 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54233 | /* 153267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54234 | /* 153272 */ GIR_RootConstrainSelectedInstOperands, |
| 54235 | /* 153273 */ // GIR_Coverage, 943, |
| 54236 | /* 153273 */ GIR_EraseRootFromParent_Done, |
| 54237 | /* 153274 */ // Label 3383: @153274 |
| 54238 | /* 153274 */ GIM_Try, /*On fail goto*//*Label 3384*/ GIMT_Encode4(153339), // Rule ID 945 // |
| 54239 | /* 153279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54240 | /* 153282 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54241 | /* 153286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54242 | /* 153290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54243 | /* 153294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54244 | /* 153298 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54245 | /* 153305 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54246 | /* 153309 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54247 | /* 153311 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54248 | /* 153318 */ // (fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54249 | /* 153318 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m32), |
| 54250 | /* 153321 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54251 | /* 153323 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54252 | /* 153325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54253 | /* 153329 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54254 | /* 153332 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54255 | /* 153337 */ GIR_RootConstrainSelectedInstOperands, |
| 54256 | /* 153338 */ // GIR_Coverage, 945, |
| 54257 | /* 153338 */ GIR_EraseRootFromParent_Done, |
| 54258 | /* 153339 */ // Label 3384: @153339 |
| 54259 | /* 153339 */ GIM_Try, /*On fail goto*//*Label 3385*/ GIMT_Encode4(153404), // Rule ID 933 // |
| 54260 | /* 153344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54261 | /* 153347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54262 | /* 153351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54263 | /* 153355 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54264 | /* 153359 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54265 | /* 153363 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54266 | /* 153366 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54267 | /* 153370 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54268 | /* 153374 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54269 | /* 153376 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54270 | /* 153383 */ // (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) |
| 54271 | /* 153383 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp32m), |
| 54272 | /* 153386 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54273 | /* 153388 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54274 | /* 153390 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54275 | /* 153394 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54276 | /* 153397 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54277 | /* 153402 */ GIR_RootConstrainSelectedInstOperands, |
| 54278 | /* 153403 */ // GIR_Coverage, 933, |
| 54279 | /* 153403 */ GIR_EraseRootFromParent_Done, |
| 54280 | /* 153404 */ // Label 3385: @153404 |
| 54281 | /* 153404 */ GIM_Try, /*On fail goto*//*Label 3386*/ GIMT_Encode4(153466), // Rule ID 2241 // |
| 54282 | /* 153409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54283 | /* 153412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54284 | /* 153416 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54285 | /* 153420 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54286 | /* 153424 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54287 | /* 153428 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54288 | /* 153431 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54289 | /* 153435 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54290 | /* 153439 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54291 | /* 153441 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54292 | /* 153448 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54293 | /* 153448 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSrm), |
| 54294 | /* 153451 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54295 | /* 153453 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54296 | /* 153455 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54297 | /* 153459 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54298 | /* 153464 */ GIR_RootConstrainSelectedInstOperands, |
| 54299 | /* 153465 */ // GIR_Coverage, 2241, |
| 54300 | /* 153465 */ GIR_EraseRootFromParent_Done, |
| 54301 | /* 153466 */ // Label 3386: @153466 |
| 54302 | /* 153466 */ GIM_Try, /*On fail goto*//*Label 3387*/ GIMT_Encode4(153528), // Rule ID 2249 // |
| 54303 | /* 153471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 54304 | /* 153474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54305 | /* 153478 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54306 | /* 153482 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54307 | /* 153486 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54308 | /* 153490 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54309 | /* 153493 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54310 | /* 153497 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54311 | /* 153501 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54312 | /* 153503 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54313 | /* 153510 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUBSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54314 | /* 153510 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSSrm), |
| 54315 | /* 153513 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54316 | /* 153515 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54317 | /* 153517 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54318 | /* 153521 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54319 | /* 153526 */ GIR_RootConstrainSelectedInstOperands, |
| 54320 | /* 153527 */ // GIR_Coverage, 2249, |
| 54321 | /* 153527 */ GIR_EraseRootFromParent_Done, |
| 54322 | /* 153528 */ // Label 3387: @153528 |
| 54323 | /* 153528 */ GIM_Try, /*On fail goto*//*Label 3388*/ GIMT_Encode4(153590), // Rule ID 6035 // |
| 54324 | /* 153533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54325 | /* 153536 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54326 | /* 153540 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54327 | /* 153544 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54328 | /* 153548 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54329 | /* 153552 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54330 | /* 153555 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54331 | /* 153559 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54332 | /* 153563 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54333 | /* 153565 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54334 | /* 153572 */ // (fsub:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54335 | /* 153572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrm), |
| 54336 | /* 153575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54337 | /* 153577 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54338 | /* 153579 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54339 | /* 153583 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54340 | /* 153588 */ GIR_RootConstrainSelectedInstOperands, |
| 54341 | /* 153589 */ // GIR_Coverage, 6035, |
| 54342 | /* 153589 */ GIR_EraseRootFromParent_Done, |
| 54343 | /* 153590 */ // Label 3388: @153590 |
| 54344 | /* 153590 */ GIM_Try, /*On fail goto*//*Label 3389*/ GIMT_Encode4(153627), // Rule ID 893 // |
| 54345 | /* 153595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 54346 | /* 153598 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54347 | /* 153602 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54348 | /* 153606 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 54349 | /* 153610 */ // (fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (SUB_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 54350 | /* 153610 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp32), |
| 54351 | /* 153615 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 54352 | /* 153621 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 54353 | /* 153625 */ GIR_RootConstrainSelectedInstOperands, |
| 54354 | /* 153626 */ // GIR_Coverage, 893, |
| 54355 | /* 153626 */ GIR_Done, |
| 54356 | /* 153627 */ // Label 3389: @153627 |
| 54357 | /* 153627 */ GIM_Try, /*On fail goto*//*Label 3390*/ GIMT_Encode4(153658), // Rule ID 2239 // |
| 54358 | /* 153632 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54359 | /* 153635 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54360 | /* 153639 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54361 | /* 153643 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54362 | /* 153647 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VSUBSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 54363 | /* 153647 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSSrr), |
| 54364 | /* 153652 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54365 | /* 153656 */ GIR_RootConstrainSelectedInstOperands, |
| 54366 | /* 153657 */ // GIR_Coverage, 2239, |
| 54367 | /* 153657 */ GIR_Done, |
| 54368 | /* 153658 */ // Label 3390: @153658 |
| 54369 | /* 153658 */ GIM_Try, /*On fail goto*//*Label 3391*/ GIMT_Encode4(153689), // Rule ID 2247 // |
| 54370 | /* 153663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 54371 | /* 153666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54372 | /* 153670 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54373 | /* 153674 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 54374 | /* 153678 */ // (fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (SUBSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 54375 | /* 153678 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBSSrr), |
| 54376 | /* 153683 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54377 | /* 153687 */ GIR_RootConstrainSelectedInstOperands, |
| 54378 | /* 153688 */ // GIR_Coverage, 2247, |
| 54379 | /* 153688 */ GIR_Done, |
| 54380 | /* 153689 */ // Label 3391: @153689 |
| 54381 | /* 153689 */ GIM_Try, /*On fail goto*//*Label 3392*/ GIMT_Encode4(153720), // Rule ID 6033 // |
| 54382 | /* 153694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54383 | /* 153697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54384 | /* 153701 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54385 | /* 153705 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 54386 | /* 153709 */ // (fsub:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VSUBSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 54387 | /* 153709 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrr), |
| 54388 | /* 153714 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54389 | /* 153718 */ GIR_RootConstrainSelectedInstOperands, |
| 54390 | /* 153719 */ // GIR_Coverage, 6033, |
| 54391 | /* 153719 */ GIR_Done, |
| 54392 | /* 153720 */ // Label 3392: @153720 |
| 54393 | /* 153720 */ GIM_Reject, |
| 54394 | /* 153721 */ // Label 3376: @153721 |
| 54395 | /* 153721 */ GIM_Reject, |
| 54396 | /* 153722 */ // Label 3361: @153722 |
| 54397 | /* 153722 */ GIM_Try, /*On fail goto*//*Label 3393*/ GIMT_Encode4(154830), |
| 54398 | /* 153727 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 54399 | /* 153730 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 54400 | /* 153733 */ GIM_Try, /*On fail goto*//*Label 3394*/ GIMT_Encode4(153815), // Rule ID 22537 // |
| 54401 | /* 153738 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 54402 | /* 153741 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54403 | /* 153745 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54404 | /* 153749 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54405 | /* 153753 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54406 | /* 153757 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 54407 | /* 153761 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54408 | /* 153765 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54409 | /* 153769 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54410 | /* 153772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54411 | /* 153776 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 54412 | /* 153783 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54413 | /* 153787 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54414 | /* 153789 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54415 | /* 153796 */ // (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) |
| 54416 | /* 153796 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSDrm), |
| 54417 | /* 153799 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54418 | /* 153801 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54419 | /* 153803 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54420 | /* 153807 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54421 | /* 153813 */ GIR_RootConstrainSelectedInstOperands, |
| 54422 | /* 153814 */ // GIR_Coverage, 22537, |
| 54423 | /* 153814 */ GIR_EraseRootFromParent_Done, |
| 54424 | /* 153815 */ // Label 3394: @153815 |
| 54425 | /* 153815 */ GIM_Try, /*On fail goto*//*Label 3395*/ GIMT_Encode4(153897), // Rule ID 22538 // |
| 54426 | /* 153820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54427 | /* 153823 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54428 | /* 153827 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54429 | /* 153831 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54430 | /* 153835 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54431 | /* 153839 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 54432 | /* 153843 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54433 | /* 153847 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54434 | /* 153851 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54435 | /* 153854 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54436 | /* 153858 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 54437 | /* 153865 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54438 | /* 153869 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54439 | /* 153871 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54440 | /* 153878 */ // (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) |
| 54441 | /* 153878 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDrm), |
| 54442 | /* 153881 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54443 | /* 153883 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54444 | /* 153885 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54445 | /* 153889 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54446 | /* 153895 */ GIR_RootConstrainSelectedInstOperands, |
| 54447 | /* 153896 */ // GIR_Coverage, 22538, |
| 54448 | /* 153896 */ GIR_EraseRootFromParent_Done, |
| 54449 | /* 153897 */ // Label 3395: @153897 |
| 54450 | /* 153897 */ GIM_Try, /*On fail goto*//*Label 3396*/ GIMT_Encode4(153979), // Rule ID 22539 // |
| 54451 | /* 153902 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54452 | /* 153905 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54453 | /* 153909 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54454 | /* 153913 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54455 | /* 153917 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 54456 | /* 153921 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 54457 | /* 153925 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 54458 | /* 153929 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54459 | /* 153933 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 54460 | /* 153936 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 54461 | /* 153940 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 54462 | /* 153947 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 54463 | /* 153951 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 54464 | /* 153953 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54465 | /* 153960 */ // (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) |
| 54466 | /* 153960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrm), |
| 54467 | /* 153963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54468 | /* 153965 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54469 | /* 153967 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54470 | /* 153971 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 54471 | /* 153977 */ GIR_RootConstrainSelectedInstOperands, |
| 54472 | /* 153978 */ // GIR_Coverage, 22539, |
| 54473 | /* 153978 */ GIR_EraseRootFromParent_Done, |
| 54474 | /* 153979 */ // Label 3396: @153979 |
| 54475 | /* 153979 */ GIM_Try, /*On fail goto*//*Label 3397*/ GIMT_Encode4(154044), // Rule ID 969 // |
| 54476 | /* 153984 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54477 | /* 153987 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54478 | /* 153991 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54479 | /* 153995 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54480 | /* 153999 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54481 | /* 154006 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54482 | /* 154010 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54483 | /* 154014 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54484 | /* 154016 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54485 | /* 154023 */ // (fsub:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (SUBR_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54486 | /* 154023 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m64), |
| 54487 | /* 154026 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54488 | /* 154028 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54489 | /* 154030 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54490 | /* 154034 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54491 | /* 154037 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54492 | /* 154042 */ GIR_RootConstrainSelectedInstOperands, |
| 54493 | /* 154043 */ // GIR_Coverage, 969, |
| 54494 | /* 154043 */ GIR_EraseRootFromParent_Done, |
| 54495 | /* 154044 */ // Label 3397: @154044 |
| 54496 | /* 154044 */ GIM_Try, /*On fail goto*//*Label 3398*/ GIMT_Encode4(154109), // Rule ID 971 // |
| 54497 | /* 154049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54498 | /* 154052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54499 | /* 154056 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54500 | /* 154060 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54501 | /* 154064 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54502 | /* 154071 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54503 | /* 154075 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54504 | /* 154079 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54505 | /* 154081 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54506 | /* 154088 */ // (fsub:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (SUBR_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54507 | /* 154088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m64), |
| 54508 | /* 154091 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54509 | /* 154093 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54510 | /* 154095 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54511 | /* 154099 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54512 | /* 154102 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54513 | /* 154107 */ GIR_RootConstrainSelectedInstOperands, |
| 54514 | /* 154108 */ // GIR_Coverage, 971, |
| 54515 | /* 154108 */ GIR_EraseRootFromParent_Done, |
| 54516 | /* 154109 */ // Label 3398: @154109 |
| 54517 | /* 154109 */ GIM_Try, /*On fail goto*//*Label 3399*/ GIMT_Encode4(154174), // Rule ID 957 // |
| 54518 | /* 154114 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54519 | /* 154117 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54520 | /* 154121 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54521 | /* 154125 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54522 | /* 154129 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54523 | /* 154132 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54524 | /* 154136 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54525 | /* 154140 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54526 | /* 154144 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54527 | /* 154146 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54528 | /* 154153 */ // (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) |
| 54529 | /* 154153 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp64m), |
| 54530 | /* 154156 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54531 | /* 154158 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54532 | /* 154160 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54533 | /* 154164 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54534 | /* 154167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54535 | /* 154172 */ GIR_RootConstrainSelectedInstOperands, |
| 54536 | /* 154173 */ // GIR_Coverage, 957, |
| 54537 | /* 154173 */ GIR_EraseRootFromParent_Done, |
| 54538 | /* 154174 */ // Label 3399: @154174 |
| 54539 | /* 154174 */ GIM_Try, /*On fail goto*//*Label 3400*/ GIMT_Encode4(154246), // Rule ID 959 // |
| 54540 | /* 154179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54541 | /* 154182 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54542 | /* 154186 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54543 | /* 154190 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54544 | /* 154194 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54545 | /* 154197 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54546 | /* 154201 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54547 | /* 154208 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54548 | /* 154212 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54549 | /* 154216 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54550 | /* 154218 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54551 | /* 154225 */ // (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) |
| 54552 | /* 154225 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp64m32), |
| 54553 | /* 154228 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54554 | /* 154230 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54555 | /* 154232 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54556 | /* 154236 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54557 | /* 154239 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54558 | /* 154244 */ GIR_RootConstrainSelectedInstOperands, |
| 54559 | /* 154245 */ // GIR_Coverage, 959, |
| 54560 | /* 154245 */ GIR_EraseRootFromParent_Done, |
| 54561 | /* 154246 */ // Label 3400: @154246 |
| 54562 | /* 154246 */ GIM_Try, /*On fail goto*//*Label 3401*/ GIMT_Encode4(154311), // Rule ID 947 // |
| 54563 | /* 154251 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54564 | /* 154254 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54565 | /* 154258 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54566 | /* 154262 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54567 | /* 154266 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54568 | /* 154270 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54569 | /* 154277 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54570 | /* 154281 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54571 | /* 154283 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54572 | /* 154290 */ // (fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54573 | /* 154290 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m64), |
| 54574 | /* 154293 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54575 | /* 154295 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54576 | /* 154297 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54577 | /* 154301 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54578 | /* 154304 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54579 | /* 154309 */ GIR_RootConstrainSelectedInstOperands, |
| 54580 | /* 154310 */ // GIR_Coverage, 947, |
| 54581 | /* 154310 */ GIR_EraseRootFromParent_Done, |
| 54582 | /* 154311 */ // Label 3401: @154311 |
| 54583 | /* 154311 */ GIM_Try, /*On fail goto*//*Label 3402*/ GIMT_Encode4(154376), // Rule ID 949 // |
| 54584 | /* 154316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54585 | /* 154319 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54586 | /* 154323 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54587 | /* 154327 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54588 | /* 154331 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54589 | /* 154335 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54590 | /* 154342 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54591 | /* 154346 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54592 | /* 154348 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54593 | /* 154355 */ // (fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54594 | /* 154355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m64), |
| 54595 | /* 154358 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54596 | /* 154360 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54597 | /* 154362 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54598 | /* 154366 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54599 | /* 154369 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54600 | /* 154374 */ GIR_RootConstrainSelectedInstOperands, |
| 54601 | /* 154375 */ // GIR_Coverage, 949, |
| 54602 | /* 154375 */ GIR_EraseRootFromParent_Done, |
| 54603 | /* 154376 */ // Label 3402: @154376 |
| 54604 | /* 154376 */ GIM_Try, /*On fail goto*//*Label 3403*/ GIMT_Encode4(154441), // Rule ID 935 // |
| 54605 | /* 154381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54606 | /* 154384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54607 | /* 154388 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54608 | /* 154392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54609 | /* 154396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54610 | /* 154400 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54611 | /* 154403 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54612 | /* 154407 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54613 | /* 154411 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54614 | /* 154413 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54615 | /* 154420 */ // (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) |
| 54616 | /* 154420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64m), |
| 54617 | /* 154423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54618 | /* 154425 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54619 | /* 154427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54620 | /* 154431 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54621 | /* 154434 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54622 | /* 154439 */ GIR_RootConstrainSelectedInstOperands, |
| 54623 | /* 154440 */ // GIR_Coverage, 935, |
| 54624 | /* 154440 */ GIR_EraseRootFromParent_Done, |
| 54625 | /* 154441 */ // Label 3403: @154441 |
| 54626 | /* 154441 */ GIM_Try, /*On fail goto*//*Label 3404*/ GIMT_Encode4(154513), // Rule ID 937 // |
| 54627 | /* 154446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54628 | /* 154449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54629 | /* 154453 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54630 | /* 154457 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54631 | /* 154461 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54632 | /* 154465 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54633 | /* 154468 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54634 | /* 154472 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54635 | /* 154479 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54636 | /* 154483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54637 | /* 154485 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54638 | /* 154492 */ // (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) |
| 54639 | /* 154492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64m32), |
| 54640 | /* 154495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54641 | /* 154497 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54642 | /* 154499 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54643 | /* 154503 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54644 | /* 154506 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54645 | /* 154511 */ GIR_RootConstrainSelectedInstOperands, |
| 54646 | /* 154512 */ // GIR_Coverage, 937, |
| 54647 | /* 154512 */ GIR_EraseRootFromParent_Done, |
| 54648 | /* 154513 */ // Label 3404: @154513 |
| 54649 | /* 154513 */ GIM_Try, /*On fail goto*//*Label 3405*/ GIMT_Encode4(154575), // Rule ID 2245 // |
| 54650 | /* 154518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54651 | /* 154521 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54652 | /* 154525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54653 | /* 154529 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54654 | /* 154533 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54655 | /* 154537 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54656 | /* 154540 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54657 | /* 154544 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54658 | /* 154548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54659 | /* 154550 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54660 | /* 154557 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54661 | /* 154557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDrm), |
| 54662 | /* 154560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54663 | /* 154562 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54664 | /* 154564 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54665 | /* 154568 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54666 | /* 154573 */ GIR_RootConstrainSelectedInstOperands, |
| 54667 | /* 154574 */ // GIR_Coverage, 2245, |
| 54668 | /* 154574 */ GIR_EraseRootFromParent_Done, |
| 54669 | /* 154575 */ // Label 3405: @154575 |
| 54670 | /* 154575 */ GIM_Try, /*On fail goto*//*Label 3406*/ GIMT_Encode4(154637), // Rule ID 2253 // |
| 54671 | /* 154580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 54672 | /* 154583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54673 | /* 154587 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54674 | /* 154591 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54675 | /* 154595 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54676 | /* 154599 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54677 | /* 154602 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54678 | /* 154606 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54679 | /* 154610 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54680 | /* 154612 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54681 | /* 154619 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SUBSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54682 | /* 154619 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSDrm), |
| 54683 | /* 154622 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54684 | /* 154624 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54685 | /* 154626 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54686 | /* 154630 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54687 | /* 154635 */ GIR_RootConstrainSelectedInstOperands, |
| 54688 | /* 154636 */ // GIR_Coverage, 2253, |
| 54689 | /* 154636 */ GIR_EraseRootFromParent_Done, |
| 54690 | /* 154637 */ // Label 3406: @154637 |
| 54691 | /* 154637 */ GIM_Try, /*On fail goto*//*Label 3407*/ GIMT_Encode4(154699), // Rule ID 6054 // |
| 54692 | /* 154642 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54693 | /* 154645 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54694 | /* 154649 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54695 | /* 154653 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54696 | /* 154657 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54697 | /* 154661 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54698 | /* 154664 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54699 | /* 154668 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54700 | /* 154672 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54701 | /* 154674 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54702 | /* 154681 */ // (fsub:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54703 | /* 154681 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrm), |
| 54704 | /* 154684 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54705 | /* 154686 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54706 | /* 154688 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54707 | /* 154692 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54708 | /* 154697 */ GIR_RootConstrainSelectedInstOperands, |
| 54709 | /* 154698 */ // GIR_Coverage, 6054, |
| 54710 | /* 154698 */ GIR_EraseRootFromParent_Done, |
| 54711 | /* 154699 */ // Label 3407: @154699 |
| 54712 | /* 154699 */ GIM_Try, /*On fail goto*//*Label 3408*/ GIMT_Encode4(154736), // Rule ID 895 // |
| 54713 | /* 154704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 54714 | /* 154707 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54715 | /* 154711 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54716 | /* 154715 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 54717 | /* 154719 */ // (fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (SUB_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 54718 | /* 154719 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64), |
| 54719 | /* 154724 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 54720 | /* 154730 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 54721 | /* 154734 */ GIR_RootConstrainSelectedInstOperands, |
| 54722 | /* 154735 */ // GIR_Coverage, 895, |
| 54723 | /* 154735 */ GIR_Done, |
| 54724 | /* 154736 */ // Label 3408: @154736 |
| 54725 | /* 154736 */ GIM_Try, /*On fail goto*//*Label 3409*/ GIMT_Encode4(154767), // Rule ID 2243 // |
| 54726 | /* 154741 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 54727 | /* 154744 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54728 | /* 154748 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54729 | /* 154752 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54730 | /* 154756 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VSUBSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 54731 | /* 154756 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSDrr), |
| 54732 | /* 154761 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54733 | /* 154765 */ GIR_RootConstrainSelectedInstOperands, |
| 54734 | /* 154766 */ // GIR_Coverage, 2243, |
| 54735 | /* 154766 */ GIR_Done, |
| 54736 | /* 154767 */ // Label 3409: @154767 |
| 54737 | /* 154767 */ GIM_Try, /*On fail goto*//*Label 3410*/ GIMT_Encode4(154798), // Rule ID 2251 // |
| 54738 | /* 154772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 54739 | /* 154775 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54740 | /* 154779 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54741 | /* 154783 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 54742 | /* 154787 */ // (fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (SUBSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 54743 | /* 154787 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBSDrr), |
| 54744 | /* 154792 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54745 | /* 154796 */ GIR_RootConstrainSelectedInstOperands, |
| 54746 | /* 154797 */ // GIR_Coverage, 2251, |
| 54747 | /* 154797 */ GIR_Done, |
| 54748 | /* 154798 */ // Label 3410: @154798 |
| 54749 | /* 154798 */ GIM_Try, /*On fail goto*//*Label 3411*/ GIMT_Encode4(154829), // Rule ID 6052 // |
| 54750 | /* 154803 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 54751 | /* 154806 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54752 | /* 154810 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54753 | /* 154814 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 54754 | /* 154818 */ // (fsub:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VSUBSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 54755 | /* 154818 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrr), |
| 54756 | /* 154823 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 54757 | /* 154827 */ GIR_RootConstrainSelectedInstOperands, |
| 54758 | /* 154828 */ // GIR_Coverage, 6052, |
| 54759 | /* 154828 */ GIR_Done, |
| 54760 | /* 154829 */ // Label 3411: @154829 |
| 54761 | /* 154829 */ GIM_Reject, |
| 54762 | /* 154830 */ // Label 3393: @154830 |
| 54763 | /* 154830 */ GIM_Reject, |
| 54764 | /* 154831 */ // Label 3362: @154831 |
| 54765 | /* 154831 */ GIM_Try, /*On fail goto*//*Label 3412*/ GIMT_Encode4(155396), |
| 54766 | /* 154836 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 54767 | /* 154839 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 54768 | /* 154842 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54769 | /* 154846 */ GIM_Try, /*On fail goto*//*Label 3413*/ GIMT_Encode4(154907), // Rule ID 973 // |
| 54770 | /* 154851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54771 | /* 154854 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54772 | /* 154858 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54773 | /* 154862 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54774 | /* 154869 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54775 | /* 154873 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54776 | /* 154877 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54777 | /* 154879 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54778 | /* 154886 */ // (fsub:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (SUBR_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54779 | /* 154886 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m80), |
| 54780 | /* 154889 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54781 | /* 154891 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54782 | /* 154893 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54783 | /* 154897 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54784 | /* 154900 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54785 | /* 154905 */ GIR_RootConstrainSelectedInstOperands, |
| 54786 | /* 154906 */ // GIR_Coverage, 973, |
| 54787 | /* 154906 */ GIR_EraseRootFromParent_Done, |
| 54788 | /* 154907 */ // Label 3413: @154907 |
| 54789 | /* 154907 */ GIM_Try, /*On fail goto*//*Label 3414*/ GIMT_Encode4(154968), // Rule ID 975 // |
| 54790 | /* 154912 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54791 | /* 154915 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54792 | /* 154919 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54793 | /* 154923 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54794 | /* 154930 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54795 | /* 154934 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54796 | /* 154938 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54797 | /* 154940 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54798 | /* 154947 */ // (fsub:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (SUBR_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54799 | /* 154947 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m80), |
| 54800 | /* 154950 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54801 | /* 154952 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54802 | /* 154954 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54803 | /* 154958 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54804 | /* 154961 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54805 | /* 154966 */ GIR_RootConstrainSelectedInstOperands, |
| 54806 | /* 154967 */ // GIR_Coverage, 975, |
| 54807 | /* 154967 */ GIR_EraseRootFromParent_Done, |
| 54808 | /* 154968 */ // Label 3414: @154968 |
| 54809 | /* 154968 */ GIM_Try, /*On fail goto*//*Label 3415*/ GIMT_Encode4(155036), // Rule ID 961 // |
| 54810 | /* 154973 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54811 | /* 154976 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54812 | /* 154980 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54813 | /* 154984 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54814 | /* 154987 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54815 | /* 154991 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54816 | /* 154998 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54817 | /* 155002 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54818 | /* 155006 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54819 | /* 155008 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54820 | /* 155015 */ // (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) |
| 54821 | /* 155015 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp80m32), |
| 54822 | /* 155018 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54823 | /* 155020 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54824 | /* 155022 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54825 | /* 155026 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54826 | /* 155029 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54827 | /* 155034 */ GIR_RootConstrainSelectedInstOperands, |
| 54828 | /* 155035 */ // GIR_Coverage, 961, |
| 54829 | /* 155035 */ GIR_EraseRootFromParent_Done, |
| 54830 | /* 155036 */ // Label 3415: @155036 |
| 54831 | /* 155036 */ GIM_Try, /*On fail goto*//*Label 3416*/ GIMT_Encode4(155104), // Rule ID 963 // |
| 54832 | /* 155041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54833 | /* 155044 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 54834 | /* 155048 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54835 | /* 155052 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54836 | /* 155055 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54837 | /* 155059 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 54838 | /* 155066 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54839 | /* 155070 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54840 | /* 155074 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54841 | /* 155076 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54842 | /* 155083 */ // (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) |
| 54843 | /* 155083 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp80m64), |
| 54844 | /* 155086 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54845 | /* 155088 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 54846 | /* 155090 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54847 | /* 155094 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54848 | /* 155097 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54849 | /* 155102 */ GIR_RootConstrainSelectedInstOperands, |
| 54850 | /* 155103 */ // GIR_Coverage, 963, |
| 54851 | /* 155103 */ GIR_EraseRootFromParent_Done, |
| 54852 | /* 155104 */ // Label 3416: @155104 |
| 54853 | /* 155104 */ GIM_Try, /*On fail goto*//*Label 3417*/ GIMT_Encode4(155165), // Rule ID 951 // |
| 54854 | /* 155109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54855 | /* 155112 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54856 | /* 155116 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54857 | /* 155120 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54858 | /* 155124 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 54859 | /* 155131 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54860 | /* 155135 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54861 | /* 155137 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54862 | /* 155144 */ // (fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54863 | /* 155144 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m80), |
| 54864 | /* 155147 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54865 | /* 155149 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54866 | /* 155151 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54867 | /* 155155 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54868 | /* 155158 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54869 | /* 155163 */ GIR_RootConstrainSelectedInstOperands, |
| 54870 | /* 155164 */ // GIR_Coverage, 951, |
| 54871 | /* 155164 */ GIR_EraseRootFromParent_Done, |
| 54872 | /* 155165 */ // Label 3417: @155165 |
| 54873 | /* 155165 */ GIM_Try, /*On fail goto*//*Label 3418*/ GIMT_Encode4(155226), // Rule ID 953 // |
| 54874 | /* 155170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54875 | /* 155173 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54876 | /* 155177 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54877 | /* 155181 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 54878 | /* 155185 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54879 | /* 155192 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54880 | /* 155196 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54881 | /* 155198 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54882 | /* 155205 */ // (fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54883 | /* 155205 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m80), |
| 54884 | /* 155208 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54885 | /* 155210 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54886 | /* 155212 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54887 | /* 155216 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54888 | /* 155219 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54889 | /* 155224 */ GIR_RootConstrainSelectedInstOperands, |
| 54890 | /* 155225 */ // GIR_Coverage, 953, |
| 54891 | /* 155225 */ GIR_EraseRootFromParent_Done, |
| 54892 | /* 155226 */ // Label 3418: @155226 |
| 54893 | /* 155226 */ GIM_Try, /*On fail goto*//*Label 3419*/ GIMT_Encode4(155294), // Rule ID 939 // |
| 54894 | /* 155231 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54895 | /* 155234 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54896 | /* 155238 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54897 | /* 155242 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54898 | /* 155246 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54899 | /* 155249 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54900 | /* 155253 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 54901 | /* 155260 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54902 | /* 155264 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54903 | /* 155266 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54904 | /* 155273 */ // (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) |
| 54905 | /* 155273 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80m32), |
| 54906 | /* 155276 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54907 | /* 155278 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54908 | /* 155280 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54909 | /* 155284 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54910 | /* 155287 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54911 | /* 155292 */ GIR_RootConstrainSelectedInstOperands, |
| 54912 | /* 155293 */ // GIR_Coverage, 939, |
| 54913 | /* 155293 */ GIR_EraseRootFromParent_Done, |
| 54914 | /* 155294 */ // Label 3419: @155294 |
| 54915 | /* 155294 */ GIM_Try, /*On fail goto*//*Label 3420*/ GIMT_Encode4(155362), // Rule ID 941 // |
| 54916 | /* 155299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54917 | /* 155302 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54918 | /* 155306 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54919 | /* 155310 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54920 | /* 155314 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54921 | /* 155317 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54922 | /* 155321 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 54923 | /* 155328 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54924 | /* 155332 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54925 | /* 155334 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54926 | /* 155341 */ // (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) |
| 54927 | /* 155341 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80m64), |
| 54928 | /* 155344 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54929 | /* 155346 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54930 | /* 155348 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54931 | /* 155352 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 54932 | /* 155355 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54933 | /* 155360 */ GIR_RootConstrainSelectedInstOperands, |
| 54934 | /* 155361 */ // GIR_Coverage, 941, |
| 54935 | /* 155361 */ GIR_EraseRootFromParent_Done, |
| 54936 | /* 155362 */ // Label 3420: @155362 |
| 54937 | /* 155362 */ GIM_Try, /*On fail goto*//*Label 3421*/ GIMT_Encode4(155395), // Rule ID 897 // |
| 54938 | /* 155367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 54939 | /* 155370 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54940 | /* 155374 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 54941 | /* 155378 */ // (fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (SUB_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 54942 | /* 155378 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80), |
| 54943 | /* 155383 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 54944 | /* 155389 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 54945 | /* 155393 */ GIR_RootConstrainSelectedInstOperands, |
| 54946 | /* 155394 */ // GIR_Coverage, 897, |
| 54947 | /* 155394 */ GIR_Done, |
| 54948 | /* 155395 */ // Label 3421: @155395 |
| 54949 | /* 155395 */ GIM_Reject, |
| 54950 | /* 155396 */ // Label 3412: @155396 |
| 54951 | /* 155396 */ GIM_Reject, |
| 54952 | /* 155397 */ // Label 3363: @155397 |
| 54953 | /* 155397 */ GIM_Try, /*On fail goto*//*Label 3422*/ GIMT_Encode4(155626), |
| 54954 | /* 155402 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 54955 | /* 155405 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 54956 | /* 155408 */ GIM_Try, /*On fail goto*//*Label 3423*/ GIMT_Encode4(155470), // Rule ID 2221 // |
| 54957 | /* 155413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 54958 | /* 155416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 54959 | /* 155420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 54960 | /* 155424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54961 | /* 155428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54962 | /* 155432 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54963 | /* 155435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54964 | /* 155439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54965 | /* 155443 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54966 | /* 155445 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54967 | /* 155452 */ // (fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54968 | /* 155452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDrm), |
| 54969 | /* 155455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54970 | /* 155457 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54971 | /* 155459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54972 | /* 155463 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54973 | /* 155468 */ GIR_RootConstrainSelectedInstOperands, |
| 54974 | /* 155469 */ // GIR_Coverage, 2221, |
| 54975 | /* 155469 */ GIR_EraseRootFromParent_Done, |
| 54976 | /* 155470 */ // Label 3423: @155470 |
| 54977 | /* 155470 */ GIM_Try, /*On fail goto*//*Label 3424*/ GIMT_Encode4(155532), // Rule ID 6547 // |
| 54978 | /* 155475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 54979 | /* 155478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 54980 | /* 155482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 54981 | /* 155486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 54982 | /* 155490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 54983 | /* 155494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 54984 | /* 155497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 54985 | /* 155501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 54986 | /* 155505 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 54987 | /* 155507 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 54988 | /* 155514 */ // (fsub:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 54989 | /* 155514 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ128rm), |
| 54990 | /* 155517 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 54991 | /* 155519 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 54992 | /* 155521 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 54993 | /* 155525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 54994 | /* 155530 */ GIR_RootConstrainSelectedInstOperands, |
| 54995 | /* 155531 */ // GIR_Coverage, 6547, |
| 54996 | /* 155531 */ GIR_EraseRootFromParent_Done, |
| 54997 | /* 155532 */ // Label 3424: @155532 |
| 54998 | /* 155532 */ GIM_Try, /*On fail goto*//*Label 3425*/ GIMT_Encode4(155563), // Rule ID 2219 // |
| 54999 | /* 155537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55000 | /* 155540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55001 | /* 155544 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55002 | /* 155548 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55003 | /* 155552 */ // (fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VSUBPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 55004 | /* 155552 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDrr), |
| 55005 | /* 155557 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55006 | /* 155561 */ GIR_RootConstrainSelectedInstOperands, |
| 55007 | /* 155562 */ // GIR_Coverage, 2219, |
| 55008 | /* 155562 */ GIR_Done, |
| 55009 | /* 155563 */ // Label 3425: @155563 |
| 55010 | /* 155563 */ GIM_Try, /*On fail goto*//*Label 3426*/ GIMT_Encode4(155594), // Rule ID 2235 // |
| 55011 | /* 155568 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 55012 | /* 155571 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55013 | /* 155575 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55014 | /* 155579 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55015 | /* 155583 */ // (fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (SUBPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 55016 | /* 155583 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBPDrr), |
| 55017 | /* 155588 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55018 | /* 155592 */ GIR_RootConstrainSelectedInstOperands, |
| 55019 | /* 155593 */ // GIR_Coverage, 2235, |
| 55020 | /* 155593 */ GIR_Done, |
| 55021 | /* 155594 */ // Label 3426: @155594 |
| 55022 | /* 155594 */ GIM_Try, /*On fail goto*//*Label 3427*/ GIMT_Encode4(155625), // Rule ID 6543 // |
| 55023 | /* 155599 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55024 | /* 155602 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55025 | /* 155606 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55026 | /* 155610 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55027 | /* 155614 */ // (fsub:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VSUBPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 55028 | /* 155614 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ128rr), |
| 55029 | /* 155619 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55030 | /* 155623 */ GIR_RootConstrainSelectedInstOperands, |
| 55031 | /* 155624 */ // GIR_Coverage, 6543, |
| 55032 | /* 155624 */ GIR_Done, |
| 55033 | /* 155625 */ // Label 3427: @155625 |
| 55034 | /* 155625 */ GIM_Reject, |
| 55035 | /* 155626 */ // Label 3422: @155626 |
| 55036 | /* 155626 */ GIM_Reject, |
| 55037 | /* 155627 */ // Label 3364: @155627 |
| 55038 | /* 155627 */ GIM_Try, /*On fail goto*//*Label 3428*/ GIMT_Encode4(155856), |
| 55039 | /* 155632 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 55040 | /* 155635 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 55041 | /* 155638 */ GIM_Try, /*On fail goto*//*Label 3429*/ GIMT_Encode4(155700), // Rule ID 2217 // |
| 55042 | /* 155643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55043 | /* 155646 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55044 | /* 155650 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55045 | /* 155654 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55046 | /* 155658 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55047 | /* 155662 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55048 | /* 155665 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55049 | /* 155669 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55050 | /* 155673 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55051 | /* 155675 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55052 | /* 155682 */ // (fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55053 | /* 155682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSrm), |
| 55054 | /* 155685 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55055 | /* 155687 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55056 | /* 155689 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55057 | /* 155693 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55058 | /* 155698 */ GIR_RootConstrainSelectedInstOperands, |
| 55059 | /* 155699 */ // GIR_Coverage, 2217, |
| 55060 | /* 155699 */ GIR_EraseRootFromParent_Done, |
| 55061 | /* 155700 */ // Label 3429: @155700 |
| 55062 | /* 155700 */ GIM_Try, /*On fail goto*//*Label 3430*/ GIMT_Encode4(155762), // Rule ID 6523 // |
| 55063 | /* 155705 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55064 | /* 155708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55065 | /* 155712 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55066 | /* 155716 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55067 | /* 155720 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55068 | /* 155724 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55069 | /* 155727 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55070 | /* 155731 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55071 | /* 155735 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55072 | /* 155737 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55073 | /* 155744 */ // (fsub:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55074 | /* 155744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ128rm), |
| 55075 | /* 155747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55076 | /* 155749 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55077 | /* 155751 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55078 | /* 155755 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55079 | /* 155760 */ GIR_RootConstrainSelectedInstOperands, |
| 55080 | /* 155761 */ // GIR_Coverage, 6523, |
| 55081 | /* 155761 */ GIR_EraseRootFromParent_Done, |
| 55082 | /* 155762 */ // Label 3430: @155762 |
| 55083 | /* 155762 */ GIM_Try, /*On fail goto*//*Label 3431*/ GIMT_Encode4(155793), // Rule ID 2215 // |
| 55084 | /* 155767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55085 | /* 155770 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55086 | /* 155774 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55087 | /* 155778 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55088 | /* 155782 */ // (fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VSUBPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 55089 | /* 155782 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSrr), |
| 55090 | /* 155787 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55091 | /* 155791 */ GIR_RootConstrainSelectedInstOperands, |
| 55092 | /* 155792 */ // GIR_Coverage, 2215, |
| 55093 | /* 155792 */ GIR_Done, |
| 55094 | /* 155793 */ // Label 3431: @155793 |
| 55095 | /* 155793 */ GIM_Try, /*On fail goto*//*Label 3432*/ GIMT_Encode4(155824), // Rule ID 2231 // |
| 55096 | /* 155798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 55097 | /* 155801 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55098 | /* 155805 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55099 | /* 155809 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 55100 | /* 155813 */ // (fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (SUBPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 55101 | /* 155813 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBPSrr), |
| 55102 | /* 155818 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55103 | /* 155822 */ GIR_RootConstrainSelectedInstOperands, |
| 55104 | /* 155823 */ // GIR_Coverage, 2231, |
| 55105 | /* 155823 */ GIR_Done, |
| 55106 | /* 155824 */ // Label 3432: @155824 |
| 55107 | /* 155824 */ GIM_Try, /*On fail goto*//*Label 3433*/ GIMT_Encode4(155855), // Rule ID 6519 // |
| 55108 | /* 155829 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55109 | /* 155832 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55110 | /* 155836 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55111 | /* 155840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55112 | /* 155844 */ // (fsub:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VSUBPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 55113 | /* 155844 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ128rr), |
| 55114 | /* 155849 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55115 | /* 155853 */ GIR_RootConstrainSelectedInstOperands, |
| 55116 | /* 155854 */ // GIR_Coverage, 6519, |
| 55117 | /* 155854 */ GIR_Done, |
| 55118 | /* 155855 */ // Label 3433: @155855 |
| 55119 | /* 155855 */ GIM_Reject, |
| 55120 | /* 155856 */ // Label 3428: @155856 |
| 55121 | /* 155856 */ GIM_Reject, |
| 55122 | /* 155857 */ // Label 3365: @155857 |
| 55123 | /* 155857 */ GIM_Try, /*On fail goto*//*Label 3434*/ GIMT_Encode4(156055), |
| 55124 | /* 155862 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 55125 | /* 155865 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 55126 | /* 155868 */ GIM_Try, /*On fail goto*//*Label 3435*/ GIMT_Encode4(155930), // Rule ID 2229 // |
| 55127 | /* 155873 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55128 | /* 155876 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55129 | /* 155880 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55130 | /* 155884 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55131 | /* 155888 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55132 | /* 155892 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55133 | /* 155895 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55134 | /* 155899 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55135 | /* 155903 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55136 | /* 155905 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55137 | /* 155912 */ // (fsub:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55138 | /* 155912 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDYrm), |
| 55139 | /* 155915 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55140 | /* 155917 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55141 | /* 155919 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55142 | /* 155923 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55143 | /* 155928 */ GIR_RootConstrainSelectedInstOperands, |
| 55144 | /* 155929 */ // GIR_Coverage, 2229, |
| 55145 | /* 155929 */ GIR_EraseRootFromParent_Done, |
| 55146 | /* 155930 */ // Label 3435: @155930 |
| 55147 | /* 155930 */ GIM_Try, /*On fail goto*//*Label 3436*/ GIMT_Encode4(155992), // Rule ID 6559 // |
| 55148 | /* 155935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55149 | /* 155938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55150 | /* 155942 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55151 | /* 155946 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55152 | /* 155950 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55153 | /* 155954 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55154 | /* 155957 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55155 | /* 155961 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55156 | /* 155965 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55157 | /* 155967 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55158 | /* 155974 */ // (fsub:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55159 | /* 155974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ256rm), |
| 55160 | /* 155977 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55161 | /* 155979 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55162 | /* 155981 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55163 | /* 155985 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55164 | /* 155990 */ GIR_RootConstrainSelectedInstOperands, |
| 55165 | /* 155991 */ // GIR_Coverage, 6559, |
| 55166 | /* 155991 */ GIR_EraseRootFromParent_Done, |
| 55167 | /* 155992 */ // Label 3436: @155992 |
| 55168 | /* 155992 */ GIM_Try, /*On fail goto*//*Label 3437*/ GIMT_Encode4(156023), // Rule ID 2227 // |
| 55169 | /* 155997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55170 | /* 156000 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55171 | /* 156004 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55172 | /* 156008 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55173 | /* 156012 */ // (fsub:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VSUBPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 55174 | /* 156012 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDYrr), |
| 55175 | /* 156017 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55176 | /* 156021 */ GIR_RootConstrainSelectedInstOperands, |
| 55177 | /* 156022 */ // GIR_Coverage, 2227, |
| 55178 | /* 156022 */ GIR_Done, |
| 55179 | /* 156023 */ // Label 3437: @156023 |
| 55180 | /* 156023 */ GIM_Try, /*On fail goto*//*Label 3438*/ GIMT_Encode4(156054), // Rule ID 6555 // |
| 55181 | /* 156028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55182 | /* 156031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55183 | /* 156035 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55184 | /* 156039 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55185 | /* 156043 */ // (fsub:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VSUBPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 55186 | /* 156043 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ256rr), |
| 55187 | /* 156048 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55188 | /* 156052 */ GIR_RootConstrainSelectedInstOperands, |
| 55189 | /* 156053 */ // GIR_Coverage, 6555, |
| 55190 | /* 156053 */ GIR_Done, |
| 55191 | /* 156054 */ // Label 3438: @156054 |
| 55192 | /* 156054 */ GIM_Reject, |
| 55193 | /* 156055 */ // Label 3434: @156055 |
| 55194 | /* 156055 */ GIM_Reject, |
| 55195 | /* 156056 */ // Label 3366: @156056 |
| 55196 | /* 156056 */ GIM_Try, /*On fail goto*//*Label 3439*/ GIMT_Encode4(156153), |
| 55197 | /* 156061 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 55198 | /* 156064 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 55199 | /* 156067 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55200 | /* 156071 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55201 | /* 156075 */ GIM_Try, /*On fail goto*//*Label 3440*/ GIMT_Encode4(156129), // Rule ID 6583 // |
| 55202 | /* 156080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 55203 | /* 156083 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55204 | /* 156087 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55205 | /* 156091 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55206 | /* 156094 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55207 | /* 156098 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55208 | /* 156102 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55209 | /* 156104 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55210 | /* 156111 */ // (fsub:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55211 | /* 156111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ128rm), |
| 55212 | /* 156114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55213 | /* 156116 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55214 | /* 156118 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55215 | /* 156122 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55216 | /* 156127 */ GIR_RootConstrainSelectedInstOperands, |
| 55217 | /* 156128 */ // GIR_Coverage, 6583, |
| 55218 | /* 156128 */ GIR_EraseRootFromParent_Done, |
| 55219 | /* 156129 */ // Label 3440: @156129 |
| 55220 | /* 156129 */ GIM_Try, /*On fail goto*//*Label 3441*/ GIMT_Encode4(156152), // Rule ID 6579 // |
| 55221 | /* 156134 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 55222 | /* 156137 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 55223 | /* 156141 */ // (fsub:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VSUBPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 55224 | /* 156141 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ128rr), |
| 55225 | /* 156146 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55226 | /* 156150 */ GIR_RootConstrainSelectedInstOperands, |
| 55227 | /* 156151 */ // GIR_Coverage, 6579, |
| 55228 | /* 156151 */ GIR_Done, |
| 55229 | /* 156152 */ // Label 3441: @156152 |
| 55230 | /* 156152 */ GIM_Reject, |
| 55231 | /* 156153 */ // Label 3439: @156153 |
| 55232 | /* 156153 */ GIM_Reject, |
| 55233 | /* 156154 */ // Label 3367: @156154 |
| 55234 | /* 156154 */ GIM_Try, /*On fail goto*//*Label 3442*/ GIMT_Encode4(156352), |
| 55235 | /* 156159 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 55236 | /* 156162 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 55237 | /* 156165 */ GIM_Try, /*On fail goto*//*Label 3443*/ GIMT_Encode4(156227), // Rule ID 2225 // |
| 55238 | /* 156170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55239 | /* 156173 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55240 | /* 156177 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55241 | /* 156181 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55242 | /* 156185 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55243 | /* 156189 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55244 | /* 156192 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55245 | /* 156196 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55246 | /* 156200 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55247 | /* 156202 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55248 | /* 156209 */ // (fsub:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55249 | /* 156209 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSYrm), |
| 55250 | /* 156212 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55251 | /* 156214 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55252 | /* 156216 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55253 | /* 156220 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55254 | /* 156225 */ GIR_RootConstrainSelectedInstOperands, |
| 55255 | /* 156226 */ // GIR_Coverage, 2225, |
| 55256 | /* 156226 */ GIR_EraseRootFromParent_Done, |
| 55257 | /* 156227 */ // Label 3443: @156227 |
| 55258 | /* 156227 */ GIM_Try, /*On fail goto*//*Label 3444*/ GIMT_Encode4(156289), // Rule ID 6535 // |
| 55259 | /* 156232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55260 | /* 156235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55261 | /* 156239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55262 | /* 156243 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55263 | /* 156247 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55264 | /* 156251 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55265 | /* 156254 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55266 | /* 156258 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55267 | /* 156262 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55268 | /* 156264 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55269 | /* 156271 */ // (fsub:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55270 | /* 156271 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ256rm), |
| 55271 | /* 156274 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55272 | /* 156276 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55273 | /* 156278 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55274 | /* 156282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55275 | /* 156287 */ GIR_RootConstrainSelectedInstOperands, |
| 55276 | /* 156288 */ // GIR_Coverage, 6535, |
| 55277 | /* 156288 */ GIR_EraseRootFromParent_Done, |
| 55278 | /* 156289 */ // Label 3444: @156289 |
| 55279 | /* 156289 */ GIM_Try, /*On fail goto*//*Label 3445*/ GIMT_Encode4(156320), // Rule ID 2223 // |
| 55280 | /* 156294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 55281 | /* 156297 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55282 | /* 156301 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55283 | /* 156305 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 55284 | /* 156309 */ // (fsub:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VSUBPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 55285 | /* 156309 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSYrr), |
| 55286 | /* 156314 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55287 | /* 156318 */ GIR_RootConstrainSelectedInstOperands, |
| 55288 | /* 156319 */ // GIR_Coverage, 2223, |
| 55289 | /* 156319 */ GIR_Done, |
| 55290 | /* 156320 */ // Label 3445: @156320 |
| 55291 | /* 156320 */ GIM_Try, /*On fail goto*//*Label 3446*/ GIMT_Encode4(156351), // Rule ID 6531 // |
| 55292 | /* 156325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 55293 | /* 156328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55294 | /* 156332 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55295 | /* 156336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55296 | /* 156340 */ // (fsub:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VSUBPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 55297 | /* 156340 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ256rr), |
| 55298 | /* 156345 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55299 | /* 156349 */ GIR_RootConstrainSelectedInstOperands, |
| 55300 | /* 156350 */ // GIR_Coverage, 6531, |
| 55301 | /* 156350 */ GIR_Done, |
| 55302 | /* 156351 */ // Label 3446: @156351 |
| 55303 | /* 156351 */ GIM_Reject, |
| 55304 | /* 156352 */ // Label 3442: @156352 |
| 55305 | /* 156352 */ GIM_Reject, |
| 55306 | /* 156353 */ // Label 3368: @156353 |
| 55307 | /* 156353 */ GIM_Try, /*On fail goto*//*Label 3447*/ GIMT_Encode4(156450), |
| 55308 | /* 156358 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 55309 | /* 156361 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 55310 | /* 156364 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55311 | /* 156368 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55312 | /* 156372 */ GIM_Try, /*On fail goto*//*Label 3448*/ GIMT_Encode4(156426), // Rule ID 6511 // |
| 55313 | /* 156377 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55314 | /* 156380 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55315 | /* 156384 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55316 | /* 156388 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55317 | /* 156391 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55318 | /* 156395 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55319 | /* 156399 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55320 | /* 156401 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55321 | /* 156408 */ // (fsub:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55322 | /* 156408 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZrm), |
| 55323 | /* 156411 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55324 | /* 156413 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55325 | /* 156415 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55326 | /* 156419 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55327 | /* 156424 */ GIR_RootConstrainSelectedInstOperands, |
| 55328 | /* 156425 */ // GIR_Coverage, 6511, |
| 55329 | /* 156425 */ GIR_EraseRootFromParent_Done, |
| 55330 | /* 156426 */ // Label 3448: @156426 |
| 55331 | /* 156426 */ GIM_Try, /*On fail goto*//*Label 3449*/ GIMT_Encode4(156449), // Rule ID 6507 // |
| 55332 | /* 156431 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55333 | /* 156434 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55334 | /* 156438 */ // (fsub:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VSUBPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 55335 | /* 156438 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZrr), |
| 55336 | /* 156443 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55337 | /* 156447 */ GIR_RootConstrainSelectedInstOperands, |
| 55338 | /* 156448 */ // GIR_Coverage, 6507, |
| 55339 | /* 156448 */ GIR_Done, |
| 55340 | /* 156449 */ // Label 3449: @156449 |
| 55341 | /* 156449 */ GIM_Reject, |
| 55342 | /* 156450 */ // Label 3447: @156450 |
| 55343 | /* 156450 */ GIM_Reject, |
| 55344 | /* 156451 */ // Label 3369: @156451 |
| 55345 | /* 156451 */ GIM_Try, /*On fail goto*//*Label 3450*/ GIMT_Encode4(156548), |
| 55346 | /* 156456 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 55347 | /* 156459 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 55348 | /* 156462 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55349 | /* 156466 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55350 | /* 156470 */ GIM_Try, /*On fail goto*//*Label 3451*/ GIMT_Encode4(156524), // Rule ID 6595 // |
| 55351 | /* 156475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 55352 | /* 156478 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55353 | /* 156482 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55354 | /* 156486 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55355 | /* 156489 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55356 | /* 156493 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55357 | /* 156497 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55358 | /* 156499 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55359 | /* 156506 */ // (fsub:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55360 | /* 156506 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ256rm), |
| 55361 | /* 156509 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55362 | /* 156511 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55363 | /* 156513 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55364 | /* 156517 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55365 | /* 156522 */ GIR_RootConstrainSelectedInstOperands, |
| 55366 | /* 156523 */ // GIR_Coverage, 6595, |
| 55367 | /* 156523 */ GIR_EraseRootFromParent_Done, |
| 55368 | /* 156524 */ // Label 3451: @156524 |
| 55369 | /* 156524 */ GIM_Try, /*On fail goto*//*Label 3452*/ GIMT_Encode4(156547), // Rule ID 6591 // |
| 55370 | /* 156529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 55371 | /* 156532 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 55372 | /* 156536 */ // (fsub:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VSUBPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 55373 | /* 156536 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ256rr), |
| 55374 | /* 156541 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55375 | /* 156545 */ GIR_RootConstrainSelectedInstOperands, |
| 55376 | /* 156546 */ // GIR_Coverage, 6591, |
| 55377 | /* 156546 */ GIR_Done, |
| 55378 | /* 156547 */ // Label 3452: @156547 |
| 55379 | /* 156547 */ GIM_Reject, |
| 55380 | /* 156548 */ // Label 3450: @156548 |
| 55381 | /* 156548 */ GIM_Reject, |
| 55382 | /* 156549 */ // Label 3370: @156549 |
| 55383 | /* 156549 */ GIM_Try, /*On fail goto*//*Label 3453*/ GIMT_Encode4(156646), |
| 55384 | /* 156554 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 55385 | /* 156557 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 55386 | /* 156560 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55387 | /* 156564 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55388 | /* 156568 */ GIM_Try, /*On fail goto*//*Label 3454*/ GIMT_Encode4(156622), // Rule ID 6499 // |
| 55389 | /* 156573 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55390 | /* 156576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55391 | /* 156580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55392 | /* 156584 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55393 | /* 156587 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55394 | /* 156591 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55395 | /* 156595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55396 | /* 156597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55397 | /* 156604 */ // (fsub:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55398 | /* 156604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZrm), |
| 55399 | /* 156607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55400 | /* 156609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55401 | /* 156611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55402 | /* 156615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55403 | /* 156620 */ GIR_RootConstrainSelectedInstOperands, |
| 55404 | /* 156621 */ // GIR_Coverage, 6499, |
| 55405 | /* 156621 */ GIR_EraseRootFromParent_Done, |
| 55406 | /* 156622 */ // Label 3454: @156622 |
| 55407 | /* 156622 */ GIM_Try, /*On fail goto*//*Label 3455*/ GIMT_Encode4(156645), // Rule ID 6495 // |
| 55408 | /* 156627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55409 | /* 156630 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55410 | /* 156634 */ // (fsub:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VSUBPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 55411 | /* 156634 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZrr), |
| 55412 | /* 156639 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55413 | /* 156643 */ GIR_RootConstrainSelectedInstOperands, |
| 55414 | /* 156644 */ // GIR_Coverage, 6495, |
| 55415 | /* 156644 */ GIR_Done, |
| 55416 | /* 156645 */ // Label 3455: @156645 |
| 55417 | /* 156645 */ GIM_Reject, |
| 55418 | /* 156646 */ // Label 3453: @156646 |
| 55419 | /* 156646 */ GIM_Reject, |
| 55420 | /* 156647 */ // Label 3371: @156647 |
| 55421 | /* 156647 */ GIM_Try, /*On fail goto*//*Label 3456*/ GIMT_Encode4(156744), |
| 55422 | /* 156652 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 55423 | /* 156655 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 55424 | /* 156658 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55425 | /* 156662 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55426 | /* 156666 */ GIM_Try, /*On fail goto*//*Label 3457*/ GIMT_Encode4(156720), // Rule ID 6571 // |
| 55427 | /* 156671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55428 | /* 156674 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55429 | /* 156678 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55430 | /* 156682 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55431 | /* 156685 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55432 | /* 156689 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55433 | /* 156693 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55434 | /* 156695 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55435 | /* 156702 */ // (fsub:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSUBPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55436 | /* 156702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZrm), |
| 55437 | /* 156705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55438 | /* 156707 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55439 | /* 156709 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55440 | /* 156713 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55441 | /* 156718 */ GIR_RootConstrainSelectedInstOperands, |
| 55442 | /* 156719 */ // GIR_Coverage, 6571, |
| 55443 | /* 156719 */ GIR_EraseRootFromParent_Done, |
| 55444 | /* 156720 */ // Label 3457: @156720 |
| 55445 | /* 156720 */ GIM_Try, /*On fail goto*//*Label 3458*/ GIMT_Encode4(156743), // Rule ID 6567 // |
| 55446 | /* 156725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55447 | /* 156728 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 55448 | /* 156732 */ // (fsub:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VSUBPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 55449 | /* 156732 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZrr), |
| 55450 | /* 156737 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55451 | /* 156741 */ GIR_RootConstrainSelectedInstOperands, |
| 55452 | /* 156742 */ // GIR_Coverage, 6567, |
| 55453 | /* 156742 */ GIR_Done, |
| 55454 | /* 156743 */ // Label 3458: @156743 |
| 55455 | /* 156743 */ GIM_Reject, |
| 55456 | /* 156744 */ // Label 3456: @156744 |
| 55457 | /* 156744 */ GIM_Reject, |
| 55458 | /* 156745 */ // Label 3372: @156745 |
| 55459 | /* 156745 */ GIM_Reject, |
| 55460 | /* 156746 */ // Label 44: @156746 |
| 55461 | /* 156746 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3472*/ GIMT_Encode4(162659), |
| 55462 | /* 156757 */ /*GILLT_s16*//*Label 3459*/ GIMT_Encode4(156841), |
| 55463 | /* 156761 */ /*GILLT_s32*//*Label 3460*/ GIMT_Encode4(157001), |
| 55464 | /* 156765 */ /*GILLT_s64*//*Label 3461*/ GIMT_Encode4(158398), |
| 55465 | /* 156769 */ /*GILLT_s80*//*Label 3462*/ GIMT_Encode4(159939), GIMT_Encode4(0), GIMT_Encode4(0), |
| 55466 | /* 156781 */ /*GILLT_v2s64*//*Label 3463*/ GIMT_Encode4(160505), GIMT_Encode4(0), |
| 55467 | /* 156789 */ /*GILLT_v4s32*//*Label 3464*/ GIMT_Encode4(160859), |
| 55468 | /* 156793 */ /*GILLT_v4s64*//*Label 3465*/ GIMT_Encode4(161213), GIMT_Encode4(0), |
| 55469 | /* 156801 */ /*GILLT_v8s16*//*Label 3466*/ GIMT_Encode4(161536), |
| 55470 | /* 156805 */ /*GILLT_v8s32*//*Label 3467*/ GIMT_Encode4(161696), |
| 55471 | /* 156809 */ /*GILLT_v8s64*//*Label 3468*/ GIMT_Encode4(162019), GIMT_Encode4(0), GIMT_Encode4(0), |
| 55472 | /* 156821 */ /*GILLT_v16s16*//*Label 3469*/ GIMT_Encode4(162179), |
| 55473 | /* 156825 */ /*GILLT_v16s32*//*Label 3470*/ GIMT_Encode4(162339), GIMT_Encode4(0), GIMT_Encode4(0), |
| 55474 | /* 156837 */ /*GILLT_v32s16*//*Label 3471*/ GIMT_Encode4(162499), |
| 55475 | /* 156841 */ // Label 3459: @156841 |
| 55476 | /* 156841 */ GIM_Try, /*On fail goto*//*Label 3473*/ GIMT_Encode4(157000), |
| 55477 | /* 156846 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 55478 | /* 156849 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 55479 | /* 156852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55480 | /* 156856 */ GIM_Try, /*On fail goto*//*Label 3474*/ GIMT_Encode4(156914), // Rule ID 24338 // |
| 55481 | /* 156861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55482 | /* 156864 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55483 | /* 156868 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55484 | /* 156872 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55485 | /* 156875 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55486 | /* 156879 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55487 | /* 156883 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55488 | /* 156887 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55489 | /* 156889 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55490 | /* 156896 */ // (fmul:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR16X:{ *:[f16] }:$src1) => (VMULSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55491 | /* 156896 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSHZrm), |
| 55492 | /* 156899 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55493 | /* 156901 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55494 | /* 156903 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55495 | /* 156907 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55496 | /* 156912 */ GIR_RootConstrainSelectedInstOperands, |
| 55497 | /* 156913 */ // GIR_Coverage, 24338, |
| 55498 | /* 156913 */ GIR_EraseRootFromParent_Done, |
| 55499 | /* 156914 */ // Label 3474: @156914 |
| 55500 | /* 156914 */ GIM_Try, /*On fail goto*//*Label 3475*/ GIMT_Encode4(156972), // Rule ID 6016 // |
| 55501 | /* 156919 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55502 | /* 156922 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55503 | /* 156926 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55504 | /* 156930 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55505 | /* 156934 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55506 | /* 156937 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55507 | /* 156941 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55508 | /* 156945 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55509 | /* 156947 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55510 | /* 156954 */ // (fmul:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55511 | /* 156954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSHZrm), |
| 55512 | /* 156957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55513 | /* 156959 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55514 | /* 156961 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55515 | /* 156965 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55516 | /* 156970 */ GIR_RootConstrainSelectedInstOperands, |
| 55517 | /* 156971 */ // GIR_Coverage, 6016, |
| 55518 | /* 156971 */ GIR_EraseRootFromParent_Done, |
| 55519 | /* 156972 */ // Label 3475: @156972 |
| 55520 | /* 156972 */ GIM_Try, /*On fail goto*//*Label 3476*/ GIMT_Encode4(156999), // Rule ID 6014 // |
| 55521 | /* 156977 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 55522 | /* 156980 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55523 | /* 156984 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 55524 | /* 156988 */ // (fmul:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VMULSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 55525 | /* 156988 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSHZrr), |
| 55526 | /* 156993 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55527 | /* 156997 */ GIR_RootConstrainSelectedInstOperands, |
| 55528 | /* 156998 */ // GIR_Coverage, 6014, |
| 55529 | /* 156998 */ GIR_Done, |
| 55530 | /* 156999 */ // Label 3476: @156999 |
| 55531 | /* 156999 */ GIM_Reject, |
| 55532 | /* 157000 */ // Label 3473: @157000 |
| 55533 | /* 157000 */ GIM_Reject, |
| 55534 | /* 157001 */ // Label 3460: @157001 |
| 55535 | /* 157001 */ GIM_Try, /*On fail goto*//*Label 3477*/ GIMT_Encode4(158397), |
| 55536 | /* 157006 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 55537 | /* 157009 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 55538 | /* 157012 */ GIM_Try, /*On fail goto*//*Label 3478*/ GIMT_Encode4(157094), // Rule ID 26106 // |
| 55539 | /* 157017 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 55540 | /* 157020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55541 | /* 157024 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55542 | /* 157028 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 55543 | /* 157032 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 55544 | /* 157036 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 55545 | /* 157040 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55546 | /* 157044 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 55547 | /* 157047 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 55548 | /* 157051 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55549 | /* 157058 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 55550 | /* 157062 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55551 | /* 157066 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 55552 | /* 157068 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55553 | /* 157075 */ // (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) |
| 55554 | /* 157075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 55555 | /* 157078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55556 | /* 157080 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55557 | /* 157082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55558 | /* 157086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 55559 | /* 157092 */ GIR_RootConstrainSelectedInstOperands, |
| 55560 | /* 157093 */ // GIR_Coverage, 26106, |
| 55561 | /* 157093 */ GIR_EraseRootFromParent_Done, |
| 55562 | /* 157094 */ // Label 3478: @157094 |
| 55563 | /* 157094 */ GIM_Try, /*On fail goto*//*Label 3479*/ GIMT_Encode4(157176), // Rule ID 26107 // |
| 55564 | /* 157099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 55565 | /* 157102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55566 | /* 157106 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55567 | /* 157110 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 55568 | /* 157114 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 55569 | /* 157118 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 55570 | /* 157122 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55571 | /* 157126 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 55572 | /* 157129 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 55573 | /* 157133 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55574 | /* 157140 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 55575 | /* 157144 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55576 | /* 157148 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 55577 | /* 157150 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55578 | /* 157157 */ // (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) |
| 55579 | /* 157157 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 55580 | /* 157160 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55581 | /* 157162 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55582 | /* 157164 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55583 | /* 157168 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 55584 | /* 157174 */ GIR_RootConstrainSelectedInstOperands, |
| 55585 | /* 157175 */ // GIR_Coverage, 26107, |
| 55586 | /* 157175 */ GIR_EraseRootFromParent_Done, |
| 55587 | /* 157176 */ // Label 3479: @157176 |
| 55588 | /* 157176 */ GIM_Try, /*On fail goto*//*Label 3480*/ GIMT_Encode4(157258), // Rule ID 26108 // |
| 55589 | /* 157181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55590 | /* 157184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55591 | /* 157188 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55592 | /* 157192 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 55593 | /* 157196 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 55594 | /* 157200 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 55595 | /* 157204 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55596 | /* 157208 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 55597 | /* 157211 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 55598 | /* 157215 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55599 | /* 157222 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 55600 | /* 157226 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55601 | /* 157230 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 55602 | /* 157232 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55603 | /* 157239 */ // (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) |
| 55604 | /* 157239 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 55605 | /* 157242 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55606 | /* 157244 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55607 | /* 157246 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55608 | /* 157250 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 55609 | /* 157256 */ GIR_RootConstrainSelectedInstOperands, |
| 55610 | /* 157257 */ // GIR_Coverage, 26108, |
| 55611 | /* 157257 */ GIR_EraseRootFromParent_Done, |
| 55612 | /* 157258 */ // Label 3480: @157258 |
| 55613 | /* 157258 */ GIM_Try, /*On fail goto*//*Label 3481*/ GIMT_Encode4(157340), // Rule ID 22540 // |
| 55614 | /* 157263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 55615 | /* 157266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55616 | /* 157270 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55617 | /* 157274 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55618 | /* 157278 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 55619 | /* 157282 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 55620 | /* 157286 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 55621 | /* 157290 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55622 | /* 157294 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 55623 | /* 157297 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 55624 | /* 157301 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55625 | /* 157308 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 55626 | /* 157312 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 55627 | /* 157314 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55628 | /* 157321 */ // (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) |
| 55629 | /* 157321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 55630 | /* 157324 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55631 | /* 157326 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55632 | /* 157328 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55633 | /* 157332 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 55634 | /* 157338 */ GIR_RootConstrainSelectedInstOperands, |
| 55635 | /* 157339 */ // GIR_Coverage, 22540, |
| 55636 | /* 157339 */ GIR_EraseRootFromParent_Done, |
| 55637 | /* 157340 */ // Label 3481: @157340 |
| 55638 | /* 157340 */ GIM_Try, /*On fail goto*//*Label 3482*/ GIMT_Encode4(157422), // Rule ID 22541 // |
| 55639 | /* 157345 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 55640 | /* 157348 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55641 | /* 157352 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55642 | /* 157356 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55643 | /* 157360 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 55644 | /* 157364 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 55645 | /* 157368 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 55646 | /* 157372 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55647 | /* 157376 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 55648 | /* 157379 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 55649 | /* 157383 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55650 | /* 157390 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 55651 | /* 157394 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 55652 | /* 157396 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55653 | /* 157403 */ // (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) |
| 55654 | /* 157403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 55655 | /* 157406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55656 | /* 157408 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55657 | /* 157410 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55658 | /* 157414 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 55659 | /* 157420 */ GIR_RootConstrainSelectedInstOperands, |
| 55660 | /* 157421 */ // GIR_Coverage, 22541, |
| 55661 | /* 157421 */ GIR_EraseRootFromParent_Done, |
| 55662 | /* 157422 */ // Label 3482: @157422 |
| 55663 | /* 157422 */ GIM_Try, /*On fail goto*//*Label 3483*/ GIMT_Encode4(157504), // Rule ID 22542 // |
| 55664 | /* 157427 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55665 | /* 157430 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55666 | /* 157434 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55667 | /* 157438 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55668 | /* 157442 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 55669 | /* 157446 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 55670 | /* 157450 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 55671 | /* 157454 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55672 | /* 157458 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 55673 | /* 157461 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 55674 | /* 157465 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55675 | /* 157472 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 55676 | /* 157476 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 55677 | /* 157478 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55678 | /* 157485 */ // (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) |
| 55679 | /* 157485 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 55680 | /* 157488 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55681 | /* 157490 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55682 | /* 157492 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55683 | /* 157496 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 55684 | /* 157502 */ GIR_RootConstrainSelectedInstOperands, |
| 55685 | /* 157503 */ // GIR_Coverage, 22542, |
| 55686 | /* 157503 */ GIR_EraseRootFromParent_Done, |
| 55687 | /* 157504 */ // Label 3483: @157504 |
| 55688 | /* 157504 */ GIM_Try, /*On fail goto*//*Label 3484*/ GIMT_Encode4(157569), // Rule ID 23351 // |
| 55689 | /* 157509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 55690 | /* 157512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55691 | /* 157516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55692 | /* 157520 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55693 | /* 157524 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 55694 | /* 157531 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55695 | /* 157535 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55696 | /* 157539 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55697 | /* 157541 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55698 | /* 157548 */ // (fmul:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (MUL_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55699 | /* 157548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m32), |
| 55700 | /* 157551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55701 | /* 157553 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55702 | /* 157555 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55703 | /* 157559 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55704 | /* 157562 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55705 | /* 157567 */ GIR_RootConstrainSelectedInstOperands, |
| 55706 | /* 157568 */ // GIR_Coverage, 23351, |
| 55707 | /* 157568 */ GIR_EraseRootFromParent_Done, |
| 55708 | /* 157569 */ // Label 3484: @157569 |
| 55709 | /* 157569 */ GIM_Try, /*On fail goto*//*Label 3485*/ GIMT_Encode4(157634), // Rule ID 23353 // |
| 55710 | /* 157574 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 55711 | /* 157577 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55712 | /* 157581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55713 | /* 157585 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55714 | /* 157589 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55715 | /* 157596 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55716 | /* 157600 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55717 | /* 157604 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55718 | /* 157606 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55719 | /* 157613 */ // (fmul:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (MUL_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55720 | /* 157613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m32), |
| 55721 | /* 157616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55722 | /* 157618 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55723 | /* 157620 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55724 | /* 157624 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55725 | /* 157627 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55726 | /* 157632 */ GIR_RootConstrainSelectedInstOperands, |
| 55727 | /* 157633 */ // GIR_Coverage, 23353, |
| 55728 | /* 157633 */ GIR_EraseRootFromParent_Done, |
| 55729 | /* 157634 */ // Label 3485: @157634 |
| 55730 | /* 157634 */ GIM_Try, /*On fail goto*//*Label 3486*/ GIMT_Encode4(157699), // Rule ID 23341 // |
| 55731 | /* 157639 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 55732 | /* 157642 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55733 | /* 157646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55734 | /* 157650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55735 | /* 157654 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55736 | /* 157657 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55737 | /* 157661 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55738 | /* 157665 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55739 | /* 157669 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55740 | /* 157671 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55741 | /* 157678 */ // (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) |
| 55742 | /* 157678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32m), |
| 55743 | /* 157681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55744 | /* 157683 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55745 | /* 157685 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55746 | /* 157689 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55747 | /* 157692 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55748 | /* 157697 */ GIR_RootConstrainSelectedInstOperands, |
| 55749 | /* 157698 */ // GIR_Coverage, 23341, |
| 55750 | /* 157698 */ GIR_EraseRootFromParent_Done, |
| 55751 | /* 157699 */ // Label 3486: @157699 |
| 55752 | /* 157699 */ GIM_Try, /*On fail goto*//*Label 3487*/ GIMT_Encode4(157761), // Rule ID 23484 // |
| 55753 | /* 157704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 55754 | /* 157707 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55755 | /* 157711 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55756 | /* 157715 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55757 | /* 157719 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55758 | /* 157722 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55759 | /* 157726 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55760 | /* 157730 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55761 | /* 157734 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55762 | /* 157736 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55763 | /* 157743 */ // (fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (VMULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55764 | /* 157743 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 55765 | /* 157746 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55766 | /* 157748 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55767 | /* 157750 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55768 | /* 157754 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55769 | /* 157759 */ GIR_RootConstrainSelectedInstOperands, |
| 55770 | /* 157760 */ // GIR_Coverage, 23484, |
| 55771 | /* 157760 */ GIR_EraseRootFromParent_Done, |
| 55772 | /* 157761 */ // Label 3487: @157761 |
| 55773 | /* 157761 */ GIM_Try, /*On fail goto*//*Label 3488*/ GIMT_Encode4(157823), // Rule ID 23488 // |
| 55774 | /* 157766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 55775 | /* 157769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55776 | /* 157773 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55777 | /* 157777 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55778 | /* 157781 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55779 | /* 157784 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55780 | /* 157788 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55781 | /* 157792 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55782 | /* 157796 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55783 | /* 157798 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55784 | /* 157805 */ // (fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32:{ *:[f32] }:$src1) => (MULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55785 | /* 157805 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 55786 | /* 157808 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55787 | /* 157810 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55788 | /* 157812 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55789 | /* 157816 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55790 | /* 157821 */ GIR_RootConstrainSelectedInstOperands, |
| 55791 | /* 157822 */ // GIR_Coverage, 23488, |
| 55792 | /* 157822 */ GIR_EraseRootFromParent_Done, |
| 55793 | /* 157823 */ // Label 3488: @157823 |
| 55794 | /* 157823 */ GIM_Try, /*On fail goto*//*Label 3489*/ GIMT_Encode4(157885), // Rule ID 24334 // |
| 55795 | /* 157828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55796 | /* 157831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55797 | /* 157835 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 55798 | /* 157839 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55799 | /* 157843 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55800 | /* 157846 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55801 | /* 157850 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55802 | /* 157854 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55803 | /* 157858 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55804 | /* 157860 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55805 | /* 157867 */ // (fmul:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR32X:{ *:[f32] }:$src1) => (VMULSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55806 | /* 157867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 55807 | /* 157870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55808 | /* 157872 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 55809 | /* 157874 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55810 | /* 157878 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55811 | /* 157883 */ GIR_RootConstrainSelectedInstOperands, |
| 55812 | /* 157884 */ // GIR_Coverage, 24334, |
| 55813 | /* 157884 */ GIR_EraseRootFromParent_Done, |
| 55814 | /* 157885 */ // Label 3489: @157885 |
| 55815 | /* 157885 */ GIM_Try, /*On fail goto*//*Label 3490*/ GIMT_Encode4(157950), // Rule ID 987 // |
| 55816 | /* 157890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 55817 | /* 157893 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55818 | /* 157897 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55819 | /* 157901 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55820 | /* 157905 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55821 | /* 157909 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 55822 | /* 157916 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55823 | /* 157920 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55824 | /* 157922 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55825 | /* 157929 */ // (fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55826 | /* 157929 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m32), |
| 55827 | /* 157932 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55828 | /* 157934 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55829 | /* 157936 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55830 | /* 157940 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55831 | /* 157943 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55832 | /* 157948 */ GIR_RootConstrainSelectedInstOperands, |
| 55833 | /* 157949 */ // GIR_Coverage, 987, |
| 55834 | /* 157949 */ GIR_EraseRootFromParent_Done, |
| 55835 | /* 157950 */ // Label 3490: @157950 |
| 55836 | /* 157950 */ GIM_Try, /*On fail goto*//*Label 3491*/ GIMT_Encode4(158015), // Rule ID 989 // |
| 55837 | /* 157955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 55838 | /* 157958 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55839 | /* 157962 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55840 | /* 157966 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55841 | /* 157970 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 55842 | /* 157974 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 55843 | /* 157981 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55844 | /* 157985 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55845 | /* 157987 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55846 | /* 157994 */ // (fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55847 | /* 157994 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m32), |
| 55848 | /* 157997 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55849 | /* 157999 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55850 | /* 158001 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55851 | /* 158005 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55852 | /* 158008 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55853 | /* 158013 */ GIR_RootConstrainSelectedInstOperands, |
| 55854 | /* 158014 */ // GIR_Coverage, 989, |
| 55855 | /* 158014 */ GIR_EraseRootFromParent_Done, |
| 55856 | /* 158015 */ // Label 3491: @158015 |
| 55857 | /* 158015 */ GIM_Try, /*On fail goto*//*Label 3492*/ GIMT_Encode4(158080), // Rule ID 977 // |
| 55858 | /* 158020 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 55859 | /* 158023 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55860 | /* 158027 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55861 | /* 158031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55862 | /* 158035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55863 | /* 158039 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55864 | /* 158042 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55865 | /* 158046 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55866 | /* 158050 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55867 | /* 158052 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55868 | /* 158059 */ // (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) |
| 55869 | /* 158059 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32m), |
| 55870 | /* 158062 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55871 | /* 158064 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55872 | /* 158066 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55873 | /* 158070 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 55874 | /* 158073 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55875 | /* 158078 */ GIR_RootConstrainSelectedInstOperands, |
| 55876 | /* 158079 */ // GIR_Coverage, 977, |
| 55877 | /* 158079 */ GIR_EraseRootFromParent_Done, |
| 55878 | /* 158080 */ // Label 3492: @158080 |
| 55879 | /* 158080 */ GIM_Try, /*On fail goto*//*Label 3493*/ GIMT_Encode4(158142), // Rule ID 2201 // |
| 55880 | /* 158085 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 55881 | /* 158088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55882 | /* 158092 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55883 | /* 158096 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55884 | /* 158100 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55885 | /* 158104 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55886 | /* 158107 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55887 | /* 158111 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55888 | /* 158115 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55889 | /* 158117 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55890 | /* 158124 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55891 | /* 158124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 55892 | /* 158127 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55893 | /* 158129 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55894 | /* 158131 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55895 | /* 158135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55896 | /* 158140 */ GIR_RootConstrainSelectedInstOperands, |
| 55897 | /* 158141 */ // GIR_Coverage, 2201, |
| 55898 | /* 158141 */ GIR_EraseRootFromParent_Done, |
| 55899 | /* 158142 */ // Label 3493: @158142 |
| 55900 | /* 158142 */ GIM_Try, /*On fail goto*//*Label 3494*/ GIMT_Encode4(158204), // Rule ID 2209 // |
| 55901 | /* 158147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 55902 | /* 158150 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55903 | /* 158154 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55904 | /* 158158 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55905 | /* 158162 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55906 | /* 158166 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55907 | /* 158169 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55908 | /* 158173 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55909 | /* 158177 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55910 | /* 158179 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55911 | /* 158186 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MULSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55912 | /* 158186 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 55913 | /* 158189 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55914 | /* 158191 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55915 | /* 158193 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55916 | /* 158197 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55917 | /* 158202 */ GIR_RootConstrainSelectedInstOperands, |
| 55918 | /* 158203 */ // GIR_Coverage, 2209, |
| 55919 | /* 158203 */ GIR_EraseRootFromParent_Done, |
| 55920 | /* 158204 */ // Label 3494: @158204 |
| 55921 | /* 158204 */ GIM_Try, /*On fail goto*//*Label 3495*/ GIMT_Encode4(158266), // Rule ID 5978 // |
| 55922 | /* 158209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55923 | /* 158212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55924 | /* 158216 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55925 | /* 158220 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 55926 | /* 158224 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 55927 | /* 158228 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 55928 | /* 158231 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 55929 | /* 158235 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 55930 | /* 158239 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 55931 | /* 158241 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 55932 | /* 158248 */ // (fmul:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 55933 | /* 158248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 55934 | /* 158251 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 55935 | /* 158253 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 55936 | /* 158255 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 55937 | /* 158259 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 55938 | /* 158264 */ GIR_RootConstrainSelectedInstOperands, |
| 55939 | /* 158265 */ // GIR_Coverage, 5978, |
| 55940 | /* 158265 */ GIR_EraseRootFromParent_Done, |
| 55941 | /* 158266 */ // Label 3495: @158266 |
| 55942 | /* 158266 */ GIM_Try, /*On fail goto*//*Label 3496*/ GIMT_Encode4(158303), // Rule ID 899 // |
| 55943 | /* 158271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 55944 | /* 158274 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55945 | /* 158278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55946 | /* 158282 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 55947 | /* 158286 */ // (fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (MUL_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 55948 | /* 158286 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32), |
| 55949 | /* 158291 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 55950 | /* 158297 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 55951 | /* 158301 */ GIR_RootConstrainSelectedInstOperands, |
| 55952 | /* 158302 */ // GIR_Coverage, 899, |
| 55953 | /* 158302 */ GIR_Done, |
| 55954 | /* 158303 */ // Label 3496: @158303 |
| 55955 | /* 158303 */ GIM_Try, /*On fail goto*//*Label 3497*/ GIMT_Encode4(158334), // Rule ID 2199 // |
| 55956 | /* 158308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 55957 | /* 158311 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55958 | /* 158315 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55959 | /* 158319 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55960 | /* 158323 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VMULSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 55961 | /* 158323 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSSrr), |
| 55962 | /* 158328 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55963 | /* 158332 */ GIR_RootConstrainSelectedInstOperands, |
| 55964 | /* 158333 */ // GIR_Coverage, 2199, |
| 55965 | /* 158333 */ GIR_Done, |
| 55966 | /* 158334 */ // Label 3497: @158334 |
| 55967 | /* 158334 */ GIM_Try, /*On fail goto*//*Label 3498*/ GIMT_Encode4(158365), // Rule ID 2207 // |
| 55968 | /* 158339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 55969 | /* 158342 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55970 | /* 158346 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55971 | /* 158350 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 55972 | /* 158354 */ // (fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (MULSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 55973 | /* 158354 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULSSrr), |
| 55974 | /* 158359 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55975 | /* 158363 */ GIR_RootConstrainSelectedInstOperands, |
| 55976 | /* 158364 */ // GIR_Coverage, 2207, |
| 55977 | /* 158364 */ GIR_Done, |
| 55978 | /* 158365 */ // Label 3498: @158365 |
| 55979 | /* 158365 */ GIM_Try, /*On fail goto*//*Label 3499*/ GIMT_Encode4(158396), // Rule ID 5976 // |
| 55980 | /* 158370 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 55981 | /* 158373 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55982 | /* 158377 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55983 | /* 158381 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 55984 | /* 158385 */ // (fmul:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VMULSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 55985 | /* 158385 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSSZrr), |
| 55986 | /* 158390 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 55987 | /* 158394 */ GIR_RootConstrainSelectedInstOperands, |
| 55988 | /* 158395 */ // GIR_Coverage, 5976, |
| 55989 | /* 158395 */ GIR_Done, |
| 55990 | /* 158396 */ // Label 3499: @158396 |
| 55991 | /* 158396 */ GIM_Reject, |
| 55992 | /* 158397 */ // Label 3477: @158397 |
| 55993 | /* 158397 */ GIM_Reject, |
| 55994 | /* 158398 */ // Label 3461: @158398 |
| 55995 | /* 158398 */ GIM_Try, /*On fail goto*//*Label 3500*/ GIMT_Encode4(159938), |
| 55996 | /* 158403 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 55997 | /* 158406 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 55998 | /* 158409 */ GIM_Try, /*On fail goto*//*Label 3501*/ GIMT_Encode4(158491), // Rule ID 26109 // |
| 55999 | /* 158414 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56000 | /* 158417 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56001 | /* 158421 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56002 | /* 158425 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56003 | /* 158429 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56004 | /* 158433 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56005 | /* 158437 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56006 | /* 158441 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56007 | /* 158444 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56008 | /* 158448 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56009 | /* 158455 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56010 | /* 158459 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56011 | /* 158463 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56012 | /* 158465 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56013 | /* 158472 */ // (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) |
| 56014 | /* 158472 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 56015 | /* 158475 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56016 | /* 158477 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56017 | /* 158479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56018 | /* 158483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56019 | /* 158489 */ GIR_RootConstrainSelectedInstOperands, |
| 56020 | /* 158490 */ // GIR_Coverage, 26109, |
| 56021 | /* 158490 */ GIR_EraseRootFromParent_Done, |
| 56022 | /* 158491 */ // Label 3501: @158491 |
| 56023 | /* 158491 */ GIM_Try, /*On fail goto*//*Label 3502*/ GIMT_Encode4(158573), // Rule ID 26110 // |
| 56024 | /* 158496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56025 | /* 158499 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56026 | /* 158503 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56027 | /* 158507 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56028 | /* 158511 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56029 | /* 158515 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56030 | /* 158519 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56031 | /* 158523 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56032 | /* 158526 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56033 | /* 158530 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56034 | /* 158537 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56035 | /* 158541 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56036 | /* 158545 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56037 | /* 158547 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56038 | /* 158554 */ // (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) |
| 56039 | /* 158554 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 56040 | /* 158557 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56041 | /* 158559 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56042 | /* 158561 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56043 | /* 158565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56044 | /* 158571 */ GIR_RootConstrainSelectedInstOperands, |
| 56045 | /* 158572 */ // GIR_Coverage, 26110, |
| 56046 | /* 158572 */ GIR_EraseRootFromParent_Done, |
| 56047 | /* 158573 */ // Label 3502: @158573 |
| 56048 | /* 158573 */ GIM_Try, /*On fail goto*//*Label 3503*/ GIMT_Encode4(158655), // Rule ID 26111 // |
| 56049 | /* 158578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56050 | /* 158581 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56051 | /* 158585 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56052 | /* 158589 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56053 | /* 158593 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56054 | /* 158597 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56055 | /* 158601 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56056 | /* 158605 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56057 | /* 158608 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56058 | /* 158612 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56059 | /* 158619 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56060 | /* 158623 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56061 | /* 158627 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56062 | /* 158629 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56063 | /* 158636 */ // (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) |
| 56064 | /* 158636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 56065 | /* 158639 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56066 | /* 158641 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56067 | /* 158643 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56068 | /* 158647 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56069 | /* 158653 */ GIR_RootConstrainSelectedInstOperands, |
| 56070 | /* 158654 */ // GIR_Coverage, 26111, |
| 56071 | /* 158654 */ GIR_EraseRootFromParent_Done, |
| 56072 | /* 158655 */ // Label 3503: @158655 |
| 56073 | /* 158655 */ GIM_Try, /*On fail goto*//*Label 3504*/ GIMT_Encode4(158737), // Rule ID 22543 // |
| 56074 | /* 158660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56075 | /* 158663 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56076 | /* 158667 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56077 | /* 158671 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56078 | /* 158675 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56079 | /* 158679 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56080 | /* 158683 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56081 | /* 158687 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56082 | /* 158691 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56083 | /* 158694 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56084 | /* 158698 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56085 | /* 158705 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56086 | /* 158709 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56087 | /* 158711 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56088 | /* 158718 */ // (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) |
| 56089 | /* 158718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 56090 | /* 158721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56091 | /* 158723 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56092 | /* 158725 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56093 | /* 158729 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56094 | /* 158735 */ GIR_RootConstrainSelectedInstOperands, |
| 56095 | /* 158736 */ // GIR_Coverage, 22543, |
| 56096 | /* 158736 */ GIR_EraseRootFromParent_Done, |
| 56097 | /* 158737 */ // Label 3504: @158737 |
| 56098 | /* 158737 */ GIM_Try, /*On fail goto*//*Label 3505*/ GIMT_Encode4(158819), // Rule ID 22544 // |
| 56099 | /* 158742 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56100 | /* 158745 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56101 | /* 158749 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56102 | /* 158753 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56103 | /* 158757 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56104 | /* 158761 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56105 | /* 158765 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56106 | /* 158769 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56107 | /* 158773 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56108 | /* 158776 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56109 | /* 158780 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56110 | /* 158787 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56111 | /* 158791 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56112 | /* 158793 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56113 | /* 158800 */ // (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) |
| 56114 | /* 158800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 56115 | /* 158803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56116 | /* 158805 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56117 | /* 158807 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56118 | /* 158811 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56119 | /* 158817 */ GIR_RootConstrainSelectedInstOperands, |
| 56120 | /* 158818 */ // GIR_Coverage, 22544, |
| 56121 | /* 158818 */ GIR_EraseRootFromParent_Done, |
| 56122 | /* 158819 */ // Label 3505: @158819 |
| 56123 | /* 158819 */ GIM_Try, /*On fail goto*//*Label 3506*/ GIMT_Encode4(158901), // Rule ID 22545 // |
| 56124 | /* 158824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56125 | /* 158827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56126 | /* 158831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56127 | /* 158835 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56128 | /* 158839 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 56129 | /* 158843 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 56130 | /* 158847 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 56131 | /* 158851 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56132 | /* 158855 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 56133 | /* 158858 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 56134 | /* 158862 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56135 | /* 158869 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 56136 | /* 158873 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 56137 | /* 158875 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56138 | /* 158882 */ // (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) |
| 56139 | /* 158882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 56140 | /* 158885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56141 | /* 158887 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56142 | /* 158889 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56143 | /* 158893 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 56144 | /* 158899 */ GIR_RootConstrainSelectedInstOperands, |
| 56145 | /* 158900 */ // GIR_Coverage, 22545, |
| 56146 | /* 158900 */ GIR_EraseRootFromParent_Done, |
| 56147 | /* 158901 */ // Label 3506: @158901 |
| 56148 | /* 158901 */ GIM_Try, /*On fail goto*//*Label 3507*/ GIMT_Encode4(158966), // Rule ID 23355 // |
| 56149 | /* 158906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56150 | /* 158909 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56151 | /* 158913 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56152 | /* 158917 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56153 | /* 158921 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56154 | /* 158928 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56155 | /* 158932 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56156 | /* 158936 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56157 | /* 158938 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56158 | /* 158945 */ // (fmul:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (MUL_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56159 | /* 158945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m64), |
| 56160 | /* 158948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56161 | /* 158950 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56162 | /* 158952 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56163 | /* 158956 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56164 | /* 158959 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56165 | /* 158964 */ GIR_RootConstrainSelectedInstOperands, |
| 56166 | /* 158965 */ // GIR_Coverage, 23355, |
| 56167 | /* 158965 */ GIR_EraseRootFromParent_Done, |
| 56168 | /* 158966 */ // Label 3507: @158966 |
| 56169 | /* 158966 */ GIM_Try, /*On fail goto*//*Label 3508*/ GIMT_Encode4(159031), // Rule ID 23357 // |
| 56170 | /* 158971 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56171 | /* 158974 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56172 | /* 158978 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56173 | /* 158982 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56174 | /* 158986 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56175 | /* 158993 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56176 | /* 158997 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56177 | /* 159001 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56178 | /* 159003 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56179 | /* 159010 */ // (fmul:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (MUL_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56180 | /* 159010 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m64), |
| 56181 | /* 159013 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56182 | /* 159015 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56183 | /* 159017 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56184 | /* 159021 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56185 | /* 159024 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56186 | /* 159029 */ GIR_RootConstrainSelectedInstOperands, |
| 56187 | /* 159030 */ // GIR_Coverage, 23357, |
| 56188 | /* 159030 */ GIR_EraseRootFromParent_Done, |
| 56189 | /* 159031 */ // Label 3508: @159031 |
| 56190 | /* 159031 */ GIM_Try, /*On fail goto*//*Label 3509*/ GIMT_Encode4(159096), // Rule ID 23343 // |
| 56191 | /* 159036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56192 | /* 159039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56193 | /* 159043 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56194 | /* 159047 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56195 | /* 159051 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56196 | /* 159054 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56197 | /* 159058 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56198 | /* 159062 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56199 | /* 159066 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56200 | /* 159068 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56201 | /* 159075 */ // (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) |
| 56202 | /* 159075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m), |
| 56203 | /* 159078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56204 | /* 159080 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56205 | /* 159082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56206 | /* 159086 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56207 | /* 159089 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56208 | /* 159094 */ GIR_RootConstrainSelectedInstOperands, |
| 56209 | /* 159095 */ // GIR_Coverage, 23343, |
| 56210 | /* 159095 */ GIR_EraseRootFromParent_Done, |
| 56211 | /* 159096 */ // Label 3509: @159096 |
| 56212 | /* 159096 */ GIM_Try, /*On fail goto*//*Label 3510*/ GIMT_Encode4(159168), // Rule ID 23345 // |
| 56213 | /* 159101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56214 | /* 159104 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56215 | /* 159108 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56216 | /* 159112 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56217 | /* 159116 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56218 | /* 159119 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56219 | /* 159123 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56220 | /* 159130 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56221 | /* 159134 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56222 | /* 159138 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56223 | /* 159140 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56224 | /* 159147 */ // (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) |
| 56225 | /* 159147 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m32), |
| 56226 | /* 159150 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56227 | /* 159152 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56228 | /* 159154 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56229 | /* 159158 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56230 | /* 159161 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56231 | /* 159166 */ GIR_RootConstrainSelectedInstOperands, |
| 56232 | /* 159167 */ // GIR_Coverage, 23345, |
| 56233 | /* 159167 */ GIR_EraseRootFromParent_Done, |
| 56234 | /* 159168 */ // Label 3510: @159168 |
| 56235 | /* 159168 */ GIM_Try, /*On fail goto*//*Label 3511*/ GIMT_Encode4(159230), // Rule ID 23486 // |
| 56236 | /* 159173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56237 | /* 159176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56238 | /* 159180 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56239 | /* 159184 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56240 | /* 159188 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56241 | /* 159191 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56242 | /* 159195 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56243 | /* 159199 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56244 | /* 159203 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56245 | /* 159205 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56246 | /* 159212 */ // (fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (VMULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56247 | /* 159212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 56248 | /* 159215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56249 | /* 159217 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56250 | /* 159219 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56251 | /* 159223 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56252 | /* 159228 */ GIR_RootConstrainSelectedInstOperands, |
| 56253 | /* 159229 */ // GIR_Coverage, 23486, |
| 56254 | /* 159229 */ GIR_EraseRootFromParent_Done, |
| 56255 | /* 159230 */ // Label 3511: @159230 |
| 56256 | /* 159230 */ GIM_Try, /*On fail goto*//*Label 3512*/ GIMT_Encode4(159292), // Rule ID 23490 // |
| 56257 | /* 159235 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 56258 | /* 159238 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56259 | /* 159242 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56260 | /* 159246 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56261 | /* 159250 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56262 | /* 159253 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56263 | /* 159257 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56264 | /* 159261 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56265 | /* 159265 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56266 | /* 159267 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56267 | /* 159274 */ // (fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64:{ *:[f64] }:$src1) => (MULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56268 | /* 159274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 56269 | /* 159277 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56270 | /* 159279 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56271 | /* 159281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56272 | /* 159285 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56273 | /* 159290 */ GIR_RootConstrainSelectedInstOperands, |
| 56274 | /* 159291 */ // GIR_Coverage, 23490, |
| 56275 | /* 159291 */ GIR_EraseRootFromParent_Done, |
| 56276 | /* 159292 */ // Label 3512: @159292 |
| 56277 | /* 159292 */ GIM_Try, /*On fail goto*//*Label 3513*/ GIMT_Encode4(159354), // Rule ID 24336 // |
| 56278 | /* 159297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56279 | /* 159300 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56280 | /* 159304 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56281 | /* 159308 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56282 | /* 159312 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56283 | /* 159315 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56284 | /* 159319 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56285 | /* 159323 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56286 | /* 159327 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56287 | /* 159329 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56288 | /* 159336 */ // (fmul:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, FR64X:{ *:[f64] }:$src1) => (VMULSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56289 | /* 159336 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 56290 | /* 159339 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56291 | /* 159341 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56292 | /* 159343 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56293 | /* 159347 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56294 | /* 159352 */ GIR_RootConstrainSelectedInstOperands, |
| 56295 | /* 159353 */ // GIR_Coverage, 24336, |
| 56296 | /* 159353 */ GIR_EraseRootFromParent_Done, |
| 56297 | /* 159354 */ // Label 3513: @159354 |
| 56298 | /* 159354 */ GIM_Try, /*On fail goto*//*Label 3514*/ GIMT_Encode4(159419), // Rule ID 991 // |
| 56299 | /* 159359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56300 | /* 159362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56301 | /* 159366 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56302 | /* 159370 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56303 | /* 159374 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56304 | /* 159378 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56305 | /* 159385 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56306 | /* 159389 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56307 | /* 159391 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56308 | /* 159398 */ // (fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56309 | /* 159398 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m64), |
| 56310 | /* 159401 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56311 | /* 159403 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56312 | /* 159405 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56313 | /* 159409 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56314 | /* 159412 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56315 | /* 159417 */ GIR_RootConstrainSelectedInstOperands, |
| 56316 | /* 159418 */ // GIR_Coverage, 991, |
| 56317 | /* 159418 */ GIR_EraseRootFromParent_Done, |
| 56318 | /* 159419 */ // Label 3514: @159419 |
| 56319 | /* 159419 */ GIM_Try, /*On fail goto*//*Label 3515*/ GIMT_Encode4(159484), // Rule ID 993 // |
| 56320 | /* 159424 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56321 | /* 159427 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56322 | /* 159431 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56323 | /* 159435 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56324 | /* 159439 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56325 | /* 159443 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56326 | /* 159450 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56327 | /* 159454 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56328 | /* 159456 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56329 | /* 159463 */ // (fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56330 | /* 159463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m64), |
| 56331 | /* 159466 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56332 | /* 159468 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56333 | /* 159470 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56334 | /* 159474 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56335 | /* 159477 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56336 | /* 159482 */ GIR_RootConstrainSelectedInstOperands, |
| 56337 | /* 159483 */ // GIR_Coverage, 993, |
| 56338 | /* 159483 */ GIR_EraseRootFromParent_Done, |
| 56339 | /* 159484 */ // Label 3515: @159484 |
| 56340 | /* 159484 */ GIM_Try, /*On fail goto*//*Label 3516*/ GIMT_Encode4(159549), // Rule ID 979 // |
| 56341 | /* 159489 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56342 | /* 159492 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56343 | /* 159496 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56344 | /* 159500 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56345 | /* 159504 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56346 | /* 159508 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56347 | /* 159511 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56348 | /* 159515 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56349 | /* 159519 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56350 | /* 159521 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56351 | /* 159528 */ // (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) |
| 56352 | /* 159528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m), |
| 56353 | /* 159531 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56354 | /* 159533 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56355 | /* 159535 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56356 | /* 159539 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56357 | /* 159542 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56358 | /* 159547 */ GIR_RootConstrainSelectedInstOperands, |
| 56359 | /* 159548 */ // GIR_Coverage, 979, |
| 56360 | /* 159548 */ GIR_EraseRootFromParent_Done, |
| 56361 | /* 159549 */ // Label 3516: @159549 |
| 56362 | /* 159549 */ GIM_Try, /*On fail goto*//*Label 3517*/ GIMT_Encode4(159621), // Rule ID 981 // |
| 56363 | /* 159554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56364 | /* 159557 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56365 | /* 159561 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56366 | /* 159565 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56367 | /* 159569 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56368 | /* 159573 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56369 | /* 159576 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56370 | /* 159580 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56371 | /* 159587 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56372 | /* 159591 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56373 | /* 159593 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56374 | /* 159600 */ // (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) |
| 56375 | /* 159600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m32), |
| 56376 | /* 159603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56377 | /* 159605 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56378 | /* 159607 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56379 | /* 159611 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56380 | /* 159614 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56381 | /* 159619 */ GIR_RootConstrainSelectedInstOperands, |
| 56382 | /* 159620 */ // GIR_Coverage, 981, |
| 56383 | /* 159620 */ GIR_EraseRootFromParent_Done, |
| 56384 | /* 159621 */ // Label 3517: @159621 |
| 56385 | /* 159621 */ GIM_Try, /*On fail goto*//*Label 3518*/ GIMT_Encode4(159683), // Rule ID 2205 // |
| 56386 | /* 159626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56387 | /* 159629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56388 | /* 159633 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56389 | /* 159637 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56390 | /* 159641 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56391 | /* 159645 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56392 | /* 159648 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56393 | /* 159652 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56394 | /* 159656 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56395 | /* 159658 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56396 | /* 159665 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56397 | /* 159665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 56398 | /* 159668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56399 | /* 159670 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56400 | /* 159672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56401 | /* 159676 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56402 | /* 159681 */ GIR_RootConstrainSelectedInstOperands, |
| 56403 | /* 159682 */ // GIR_Coverage, 2205, |
| 56404 | /* 159682 */ GIR_EraseRootFromParent_Done, |
| 56405 | /* 159683 */ // Label 3518: @159683 |
| 56406 | /* 159683 */ GIM_Try, /*On fail goto*//*Label 3519*/ GIMT_Encode4(159745), // Rule ID 2213 // |
| 56407 | /* 159688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 56408 | /* 159691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56409 | /* 159695 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56410 | /* 159699 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56411 | /* 159703 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56412 | /* 159707 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56413 | /* 159710 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56414 | /* 159714 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56415 | /* 159718 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56416 | /* 159720 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56417 | /* 159727 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MULSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56418 | /* 159727 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 56419 | /* 159730 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56420 | /* 159732 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56421 | /* 159734 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56422 | /* 159738 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56423 | /* 159743 */ GIR_RootConstrainSelectedInstOperands, |
| 56424 | /* 159744 */ // GIR_Coverage, 2213, |
| 56425 | /* 159744 */ GIR_EraseRootFromParent_Done, |
| 56426 | /* 159745 */ // Label 3519: @159745 |
| 56427 | /* 159745 */ GIM_Try, /*On fail goto*//*Label 3520*/ GIMT_Encode4(159807), // Rule ID 5997 // |
| 56428 | /* 159750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56429 | /* 159753 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56430 | /* 159757 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56431 | /* 159761 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56432 | /* 159765 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56433 | /* 159769 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56434 | /* 159772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56435 | /* 159776 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56436 | /* 159780 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56437 | /* 159782 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56438 | /* 159789 */ // (fmul:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56439 | /* 159789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 56440 | /* 159792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56441 | /* 159794 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56442 | /* 159796 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56443 | /* 159800 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56444 | /* 159805 */ GIR_RootConstrainSelectedInstOperands, |
| 56445 | /* 159806 */ // GIR_Coverage, 5997, |
| 56446 | /* 159806 */ GIR_EraseRootFromParent_Done, |
| 56447 | /* 159807 */ // Label 3520: @159807 |
| 56448 | /* 159807 */ GIM_Try, /*On fail goto*//*Label 3521*/ GIMT_Encode4(159844), // Rule ID 901 // |
| 56449 | /* 159812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 56450 | /* 159815 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56451 | /* 159819 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56452 | /* 159823 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 56453 | /* 159827 */ // (fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (MUL_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 56454 | /* 159827 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64), |
| 56455 | /* 159832 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 56456 | /* 159838 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 56457 | /* 159842 */ GIR_RootConstrainSelectedInstOperands, |
| 56458 | /* 159843 */ // GIR_Coverage, 901, |
| 56459 | /* 159843 */ GIR_Done, |
| 56460 | /* 159844 */ // Label 3521: @159844 |
| 56461 | /* 159844 */ GIM_Try, /*On fail goto*//*Label 3522*/ GIMT_Encode4(159875), // Rule ID 2203 // |
| 56462 | /* 159849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 56463 | /* 159852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56464 | /* 159856 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56465 | /* 159860 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56466 | /* 159864 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VMULSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 56467 | /* 159864 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSDrr), |
| 56468 | /* 159869 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56469 | /* 159873 */ GIR_RootConstrainSelectedInstOperands, |
| 56470 | /* 159874 */ // GIR_Coverage, 2203, |
| 56471 | /* 159874 */ GIR_Done, |
| 56472 | /* 159875 */ // Label 3522: @159875 |
| 56473 | /* 159875 */ GIM_Try, /*On fail goto*//*Label 3523*/ GIMT_Encode4(159906), // Rule ID 2211 // |
| 56474 | /* 159880 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 56475 | /* 159883 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56476 | /* 159887 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56477 | /* 159891 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 56478 | /* 159895 */ // (fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (MULSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 56479 | /* 159895 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULSDrr), |
| 56480 | /* 159900 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56481 | /* 159904 */ GIR_RootConstrainSelectedInstOperands, |
| 56482 | /* 159905 */ // GIR_Coverage, 2211, |
| 56483 | /* 159905 */ GIR_Done, |
| 56484 | /* 159906 */ // Label 3523: @159906 |
| 56485 | /* 159906 */ GIM_Try, /*On fail goto*//*Label 3524*/ GIMT_Encode4(159937), // Rule ID 5995 // |
| 56486 | /* 159911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 56487 | /* 159914 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56488 | /* 159918 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56489 | /* 159922 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 56490 | /* 159926 */ // (fmul:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VMULSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 56491 | /* 159926 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSDZrr), |
| 56492 | /* 159931 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56493 | /* 159935 */ GIR_RootConstrainSelectedInstOperands, |
| 56494 | /* 159936 */ // GIR_Coverage, 5995, |
| 56495 | /* 159936 */ GIR_Done, |
| 56496 | /* 159937 */ // Label 3524: @159937 |
| 56497 | /* 159937 */ GIM_Reject, |
| 56498 | /* 159938 */ // Label 3500: @159938 |
| 56499 | /* 159938 */ GIM_Reject, |
| 56500 | /* 159939 */ // Label 3462: @159939 |
| 56501 | /* 159939 */ GIM_Try, /*On fail goto*//*Label 3525*/ GIMT_Encode4(160504), |
| 56502 | /* 159944 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 56503 | /* 159947 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 56504 | /* 159950 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56505 | /* 159954 */ GIM_Try, /*On fail goto*//*Label 3526*/ GIMT_Encode4(160015), // Rule ID 23359 // |
| 56506 | /* 159959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56507 | /* 159962 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56508 | /* 159966 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56509 | /* 159970 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56510 | /* 159977 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56511 | /* 159981 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56512 | /* 159985 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56513 | /* 159987 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56514 | /* 159994 */ // (fmul:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (MUL_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56515 | /* 159994 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m80), |
| 56516 | /* 159997 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56517 | /* 159999 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56518 | /* 160001 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56519 | /* 160005 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56520 | /* 160008 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56521 | /* 160013 */ GIR_RootConstrainSelectedInstOperands, |
| 56522 | /* 160014 */ // GIR_Coverage, 23359, |
| 56523 | /* 160014 */ GIR_EraseRootFromParent_Done, |
| 56524 | /* 160015 */ // Label 3526: @160015 |
| 56525 | /* 160015 */ GIM_Try, /*On fail goto*//*Label 3527*/ GIMT_Encode4(160076), // Rule ID 23361 // |
| 56526 | /* 160020 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56527 | /* 160023 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56528 | /* 160027 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56529 | /* 160031 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56530 | /* 160038 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56531 | /* 160042 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56532 | /* 160046 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56533 | /* 160048 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56534 | /* 160055 */ // (fmul:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (MUL_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56535 | /* 160055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m80), |
| 56536 | /* 160058 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56537 | /* 160060 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56538 | /* 160062 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56539 | /* 160066 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56540 | /* 160069 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56541 | /* 160074 */ GIR_RootConstrainSelectedInstOperands, |
| 56542 | /* 160075 */ // GIR_Coverage, 23361, |
| 56543 | /* 160075 */ GIR_EraseRootFromParent_Done, |
| 56544 | /* 160076 */ // Label 3527: @160076 |
| 56545 | /* 160076 */ GIM_Try, /*On fail goto*//*Label 3528*/ GIMT_Encode4(160144), // Rule ID 23347 // |
| 56546 | /* 160081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56547 | /* 160084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56548 | /* 160088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56549 | /* 160092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56550 | /* 160095 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56551 | /* 160099 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56552 | /* 160106 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56553 | /* 160110 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56554 | /* 160114 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56555 | /* 160116 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56556 | /* 160123 */ // (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) |
| 56557 | /* 160123 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m32), |
| 56558 | /* 160126 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56559 | /* 160128 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56560 | /* 160130 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56561 | /* 160134 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56562 | /* 160137 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56563 | /* 160142 */ GIR_RootConstrainSelectedInstOperands, |
| 56564 | /* 160143 */ // GIR_Coverage, 23347, |
| 56565 | /* 160143 */ GIR_EraseRootFromParent_Done, |
| 56566 | /* 160144 */ // Label 3528: @160144 |
| 56567 | /* 160144 */ GIM_Try, /*On fail goto*//*Label 3529*/ GIMT_Encode4(160212), // Rule ID 23349 // |
| 56568 | /* 160149 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56569 | /* 160152 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56570 | /* 160156 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56571 | /* 160160 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56572 | /* 160163 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56573 | /* 160167 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56574 | /* 160174 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56575 | /* 160178 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56576 | /* 160182 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56577 | /* 160184 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56578 | /* 160191 */ // (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) |
| 56579 | /* 160191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m64), |
| 56580 | /* 160194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56581 | /* 160196 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56582 | /* 160198 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56583 | /* 160202 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56584 | /* 160205 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56585 | /* 160210 */ GIR_RootConstrainSelectedInstOperands, |
| 56586 | /* 160211 */ // GIR_Coverage, 23349, |
| 56587 | /* 160211 */ GIR_EraseRootFromParent_Done, |
| 56588 | /* 160212 */ // Label 3529: @160212 |
| 56589 | /* 160212 */ GIM_Try, /*On fail goto*//*Label 3530*/ GIMT_Encode4(160273), // Rule ID 995 // |
| 56590 | /* 160217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56591 | /* 160220 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56592 | /* 160224 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56593 | /* 160228 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56594 | /* 160232 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 56595 | /* 160239 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56596 | /* 160243 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56597 | /* 160245 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56598 | /* 160252 */ // (fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56599 | /* 160252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m80), |
| 56600 | /* 160255 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56601 | /* 160257 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56602 | /* 160259 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56603 | /* 160263 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56604 | /* 160266 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56605 | /* 160271 */ GIR_RootConstrainSelectedInstOperands, |
| 56606 | /* 160272 */ // GIR_Coverage, 995, |
| 56607 | /* 160272 */ GIR_EraseRootFromParent_Done, |
| 56608 | /* 160273 */ // Label 3530: @160273 |
| 56609 | /* 160273 */ GIM_Try, /*On fail goto*//*Label 3531*/ GIMT_Encode4(160334), // Rule ID 997 // |
| 56610 | /* 160278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56611 | /* 160281 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56612 | /* 160285 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56613 | /* 160289 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 56614 | /* 160293 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56615 | /* 160300 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56616 | /* 160304 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56617 | /* 160306 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56618 | /* 160313 */ // (fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56619 | /* 160313 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m80), |
| 56620 | /* 160316 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56621 | /* 160318 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56622 | /* 160320 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56623 | /* 160324 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56624 | /* 160327 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56625 | /* 160332 */ GIR_RootConstrainSelectedInstOperands, |
| 56626 | /* 160333 */ // GIR_Coverage, 997, |
| 56627 | /* 160333 */ GIR_EraseRootFromParent_Done, |
| 56628 | /* 160334 */ // Label 3531: @160334 |
| 56629 | /* 160334 */ GIM_Try, /*On fail goto*//*Label 3532*/ GIMT_Encode4(160402), // Rule ID 983 // |
| 56630 | /* 160339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56631 | /* 160342 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56632 | /* 160346 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56633 | /* 160350 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56634 | /* 160354 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56635 | /* 160357 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56636 | /* 160361 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 56637 | /* 160368 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56638 | /* 160372 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56639 | /* 160374 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56640 | /* 160381 */ // (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) |
| 56641 | /* 160381 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m32), |
| 56642 | /* 160384 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56643 | /* 160386 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56644 | /* 160388 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56645 | /* 160392 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56646 | /* 160395 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56647 | /* 160400 */ GIR_RootConstrainSelectedInstOperands, |
| 56648 | /* 160401 */ // GIR_Coverage, 983, |
| 56649 | /* 160401 */ GIR_EraseRootFromParent_Done, |
| 56650 | /* 160402 */ // Label 3532: @160402 |
| 56651 | /* 160402 */ GIM_Try, /*On fail goto*//*Label 3533*/ GIMT_Encode4(160470), // Rule ID 985 // |
| 56652 | /* 160407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56653 | /* 160410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56654 | /* 160414 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56655 | /* 160418 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56656 | /* 160422 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56657 | /* 160425 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56658 | /* 160429 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 56659 | /* 160436 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56660 | /* 160440 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56661 | /* 160442 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56662 | /* 160449 */ // (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) |
| 56663 | /* 160449 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m64), |
| 56664 | /* 160452 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56665 | /* 160454 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56666 | /* 160456 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56667 | /* 160460 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 56668 | /* 160463 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56669 | /* 160468 */ GIR_RootConstrainSelectedInstOperands, |
| 56670 | /* 160469 */ // GIR_Coverage, 985, |
| 56671 | /* 160469 */ GIR_EraseRootFromParent_Done, |
| 56672 | /* 160470 */ // Label 3533: @160470 |
| 56673 | /* 160470 */ GIM_Try, /*On fail goto*//*Label 3534*/ GIMT_Encode4(160503), // Rule ID 903 // |
| 56674 | /* 160475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 56675 | /* 160478 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56676 | /* 160482 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 56677 | /* 160486 */ // (fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (MUL_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 56678 | /* 160486 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80), |
| 56679 | /* 160491 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 56680 | /* 160497 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 56681 | /* 160501 */ GIR_RootConstrainSelectedInstOperands, |
| 56682 | /* 160502 */ // GIR_Coverage, 903, |
| 56683 | /* 160502 */ GIR_Done, |
| 56684 | /* 160503 */ // Label 3534: @160503 |
| 56685 | /* 160503 */ GIM_Reject, |
| 56686 | /* 160504 */ // Label 3525: @160504 |
| 56687 | /* 160504 */ GIM_Reject, |
| 56688 | /* 160505 */ // Label 3463: @160505 |
| 56689 | /* 160505 */ GIM_Try, /*On fail goto*//*Label 3535*/ GIMT_Encode4(160858), |
| 56690 | /* 160510 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 56691 | /* 160513 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 56692 | /* 160516 */ GIM_Try, /*On fail goto*//*Label 3536*/ GIMT_Encode4(160578), // Rule ID 23474 // |
| 56693 | /* 160521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 56694 | /* 160524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56695 | /* 160528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56696 | /* 160532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56697 | /* 160536 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56698 | /* 160539 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56699 | /* 160543 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56700 | /* 160547 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56701 | /* 160551 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56702 | /* 160553 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56703 | /* 160560 */ // (fmul:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v2f64] }:$src1) => (VMULPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56704 | /* 160560 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDrm), |
| 56705 | /* 160563 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56706 | /* 160565 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56707 | /* 160567 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56708 | /* 160571 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56709 | /* 160576 */ GIR_RootConstrainSelectedInstOperands, |
| 56710 | /* 160577 */ // GIR_Coverage, 23474, |
| 56711 | /* 160577 */ GIR_EraseRootFromParent_Done, |
| 56712 | /* 160578 */ // Label 3536: @160578 |
| 56713 | /* 160578 */ GIM_Try, /*On fail goto*//*Label 3537*/ GIMT_Encode4(160640), // Rule ID 24450 // |
| 56714 | /* 160583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 56715 | /* 160586 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56716 | /* 160590 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56717 | /* 160594 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56718 | /* 160598 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56719 | /* 160601 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56720 | /* 160605 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56721 | /* 160609 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56722 | /* 160613 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56723 | /* 160615 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56724 | /* 160622 */ // (fmul:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2f64] }:$src1) => (VMULPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56725 | /* 160622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rm), |
| 56726 | /* 160625 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56727 | /* 160627 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56728 | /* 160629 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56729 | /* 160633 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56730 | /* 160638 */ GIR_RootConstrainSelectedInstOperands, |
| 56731 | /* 160639 */ // GIR_Coverage, 24450, |
| 56732 | /* 160639 */ GIR_EraseRootFromParent_Done, |
| 56733 | /* 160640 */ // Label 3537: @160640 |
| 56734 | /* 160640 */ GIM_Try, /*On fail goto*//*Label 3538*/ GIMT_Encode4(160702), // Rule ID 2181 // |
| 56735 | /* 160645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 56736 | /* 160648 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56737 | /* 160652 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56738 | /* 160656 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56739 | /* 160660 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56740 | /* 160664 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56741 | /* 160667 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56742 | /* 160671 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56743 | /* 160675 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56744 | /* 160677 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56745 | /* 160684 */ // (fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56746 | /* 160684 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDrm), |
| 56747 | /* 160687 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56748 | /* 160689 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56749 | /* 160691 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56750 | /* 160695 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56751 | /* 160700 */ GIR_RootConstrainSelectedInstOperands, |
| 56752 | /* 160701 */ // GIR_Coverage, 2181, |
| 56753 | /* 160701 */ GIR_EraseRootFromParent_Done, |
| 56754 | /* 160702 */ // Label 3538: @160702 |
| 56755 | /* 160702 */ GIM_Try, /*On fail goto*//*Label 3539*/ GIMT_Encode4(160764), // Rule ID 6430 // |
| 56756 | /* 160707 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 56757 | /* 160710 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56758 | /* 160714 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56759 | /* 160718 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56760 | /* 160722 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56761 | /* 160726 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56762 | /* 160729 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56763 | /* 160733 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56764 | /* 160737 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56765 | /* 160739 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56766 | /* 160746 */ // (fmul:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56767 | /* 160746 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rm), |
| 56768 | /* 160749 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56769 | /* 160751 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56770 | /* 160753 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56771 | /* 160757 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56772 | /* 160762 */ GIR_RootConstrainSelectedInstOperands, |
| 56773 | /* 160763 */ // GIR_Coverage, 6430, |
| 56774 | /* 160763 */ GIR_EraseRootFromParent_Done, |
| 56775 | /* 160764 */ // Label 3539: @160764 |
| 56776 | /* 160764 */ GIM_Try, /*On fail goto*//*Label 3540*/ GIMT_Encode4(160795), // Rule ID 2179 // |
| 56777 | /* 160769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 56778 | /* 160772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56779 | /* 160776 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56780 | /* 160780 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56781 | /* 160784 */ // (fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VMULPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 56782 | /* 160784 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDrr), |
| 56783 | /* 160789 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56784 | /* 160793 */ GIR_RootConstrainSelectedInstOperands, |
| 56785 | /* 160794 */ // GIR_Coverage, 2179, |
| 56786 | /* 160794 */ GIR_Done, |
| 56787 | /* 160795 */ // Label 3540: @160795 |
| 56788 | /* 160795 */ GIM_Try, /*On fail goto*//*Label 3541*/ GIMT_Encode4(160826), // Rule ID 2195 // |
| 56789 | /* 160800 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 56790 | /* 160803 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56791 | /* 160807 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56792 | /* 160811 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56793 | /* 160815 */ // (fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (MULPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 56794 | /* 160815 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULPDrr), |
| 56795 | /* 160820 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56796 | /* 160824 */ GIR_RootConstrainSelectedInstOperands, |
| 56797 | /* 160825 */ // GIR_Coverage, 2195, |
| 56798 | /* 160825 */ GIR_Done, |
| 56799 | /* 160826 */ // Label 3541: @160826 |
| 56800 | /* 160826 */ GIM_Try, /*On fail goto*//*Label 3542*/ GIMT_Encode4(160857), // Rule ID 6426 // |
| 56801 | /* 160831 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 56802 | /* 160834 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56803 | /* 160838 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56804 | /* 160842 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56805 | /* 160846 */ // (fmul:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VMULPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 56806 | /* 160846 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rr), |
| 56807 | /* 160851 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56808 | /* 160855 */ GIR_RootConstrainSelectedInstOperands, |
| 56809 | /* 160856 */ // GIR_Coverage, 6426, |
| 56810 | /* 160856 */ GIR_Done, |
| 56811 | /* 160857 */ // Label 3542: @160857 |
| 56812 | /* 160857 */ GIM_Reject, |
| 56813 | /* 160858 */ // Label 3535: @160858 |
| 56814 | /* 160858 */ GIM_Reject, |
| 56815 | /* 160859 */ // Label 3464: @160859 |
| 56816 | /* 160859 */ GIM_Try, /*On fail goto*//*Label 3543*/ GIMT_Encode4(161212), |
| 56817 | /* 160864 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 56818 | /* 160867 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 56819 | /* 160870 */ GIM_Try, /*On fail goto*//*Label 3544*/ GIMT_Encode4(160932), // Rule ID 23472 // |
| 56820 | /* 160875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 56821 | /* 160878 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56822 | /* 160882 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56823 | /* 160886 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56824 | /* 160890 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56825 | /* 160893 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56826 | /* 160897 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56827 | /* 160901 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56828 | /* 160905 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56829 | /* 160907 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56830 | /* 160914 */ // (fmul:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4f32] }:$src1) => (VMULPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56831 | /* 160914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSrm), |
| 56832 | /* 160917 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56833 | /* 160919 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56834 | /* 160921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56835 | /* 160925 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56836 | /* 160930 */ GIR_RootConstrainSelectedInstOperands, |
| 56837 | /* 160931 */ // GIR_Coverage, 23472, |
| 56838 | /* 160931 */ GIR_EraseRootFromParent_Done, |
| 56839 | /* 160932 */ // Label 3544: @160932 |
| 56840 | /* 160932 */ GIM_Try, /*On fail goto*//*Label 3545*/ GIMT_Encode4(160994), // Rule ID 24434 // |
| 56841 | /* 160937 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 56842 | /* 160940 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56843 | /* 160944 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56844 | /* 160948 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56845 | /* 160952 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56846 | /* 160955 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56847 | /* 160959 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56848 | /* 160963 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56849 | /* 160967 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56850 | /* 160969 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56851 | /* 160976 */ // (fmul:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4f32] }:$src1) => (VMULPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56852 | /* 160976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rm), |
| 56853 | /* 160979 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56854 | /* 160981 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56855 | /* 160983 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56856 | /* 160987 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56857 | /* 160992 */ GIR_RootConstrainSelectedInstOperands, |
| 56858 | /* 160993 */ // GIR_Coverage, 24434, |
| 56859 | /* 160993 */ GIR_EraseRootFromParent_Done, |
| 56860 | /* 160994 */ // Label 3545: @160994 |
| 56861 | /* 160994 */ GIM_Try, /*On fail goto*//*Label 3546*/ GIMT_Encode4(161056), // Rule ID 2177 // |
| 56862 | /* 160999 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 56863 | /* 161002 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56864 | /* 161006 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56865 | /* 161010 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56866 | /* 161014 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56867 | /* 161018 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56868 | /* 161021 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56869 | /* 161025 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56870 | /* 161029 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56871 | /* 161031 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56872 | /* 161038 */ // (fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56873 | /* 161038 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSrm), |
| 56874 | /* 161041 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56875 | /* 161043 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56876 | /* 161045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56877 | /* 161049 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56878 | /* 161054 */ GIR_RootConstrainSelectedInstOperands, |
| 56879 | /* 161055 */ // GIR_Coverage, 2177, |
| 56880 | /* 161055 */ GIR_EraseRootFromParent_Done, |
| 56881 | /* 161056 */ // Label 3546: @161056 |
| 56882 | /* 161056 */ GIM_Try, /*On fail goto*//*Label 3547*/ GIMT_Encode4(161118), // Rule ID 6406 // |
| 56883 | /* 161061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 56884 | /* 161064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56885 | /* 161068 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56886 | /* 161072 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56887 | /* 161076 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56888 | /* 161080 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56889 | /* 161083 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56890 | /* 161087 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56891 | /* 161091 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56892 | /* 161093 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56893 | /* 161100 */ // (fmul:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56894 | /* 161100 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rm), |
| 56895 | /* 161103 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56896 | /* 161105 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 56897 | /* 161107 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56898 | /* 161111 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56899 | /* 161116 */ GIR_RootConstrainSelectedInstOperands, |
| 56900 | /* 161117 */ // GIR_Coverage, 6406, |
| 56901 | /* 161117 */ GIR_EraseRootFromParent_Done, |
| 56902 | /* 161118 */ // Label 3547: @161118 |
| 56903 | /* 161118 */ GIM_Try, /*On fail goto*//*Label 3548*/ GIMT_Encode4(161149), // Rule ID 2175 // |
| 56904 | /* 161123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 56905 | /* 161126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56906 | /* 161130 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56907 | /* 161134 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56908 | /* 161138 */ // (fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VMULPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 56909 | /* 161138 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSrr), |
| 56910 | /* 161143 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56911 | /* 161147 */ GIR_RootConstrainSelectedInstOperands, |
| 56912 | /* 161148 */ // GIR_Coverage, 2175, |
| 56913 | /* 161148 */ GIR_Done, |
| 56914 | /* 161149 */ // Label 3548: @161149 |
| 56915 | /* 161149 */ GIM_Try, /*On fail goto*//*Label 3549*/ GIMT_Encode4(161180), // Rule ID 2191 // |
| 56916 | /* 161154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 56917 | /* 161157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56918 | /* 161161 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56919 | /* 161165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 56920 | /* 161169 */ // (fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (MULPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 56921 | /* 161169 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULPSrr), |
| 56922 | /* 161174 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56923 | /* 161178 */ GIR_RootConstrainSelectedInstOperands, |
| 56924 | /* 161179 */ // GIR_Coverage, 2191, |
| 56925 | /* 161179 */ GIR_Done, |
| 56926 | /* 161180 */ // Label 3549: @161180 |
| 56927 | /* 161180 */ GIM_Try, /*On fail goto*//*Label 3550*/ GIMT_Encode4(161211), // Rule ID 6402 // |
| 56928 | /* 161185 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 56929 | /* 161188 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56930 | /* 161192 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56931 | /* 161196 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 56932 | /* 161200 */ // (fmul:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VMULPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 56933 | /* 161200 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rr), |
| 56934 | /* 161205 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 56935 | /* 161209 */ GIR_RootConstrainSelectedInstOperands, |
| 56936 | /* 161210 */ // GIR_Coverage, 6402, |
| 56937 | /* 161210 */ GIR_Done, |
| 56938 | /* 161211 */ // Label 3550: @161211 |
| 56939 | /* 161211 */ GIM_Reject, |
| 56940 | /* 161212 */ // Label 3543: @161212 |
| 56941 | /* 161212 */ GIM_Reject, |
| 56942 | /* 161213 */ // Label 3465: @161213 |
| 56943 | /* 161213 */ GIM_Try, /*On fail goto*//*Label 3551*/ GIMT_Encode4(161535), |
| 56944 | /* 161218 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 56945 | /* 161221 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 56946 | /* 161224 */ GIM_Try, /*On fail goto*//*Label 3552*/ GIMT_Encode4(161286), // Rule ID 23478 // |
| 56947 | /* 161229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 56948 | /* 161232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 56949 | /* 161236 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56950 | /* 161240 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56951 | /* 161244 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56952 | /* 161247 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56953 | /* 161251 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56954 | /* 161255 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 56955 | /* 161259 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56956 | /* 161261 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56957 | /* 161268 */ // (fmul:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v4f64] }:$src1) => (VMULPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56958 | /* 161268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDYrm), |
| 56959 | /* 161271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56960 | /* 161273 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56961 | /* 161275 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56962 | /* 161279 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56963 | /* 161284 */ GIR_RootConstrainSelectedInstOperands, |
| 56964 | /* 161285 */ // GIR_Coverage, 23478, |
| 56965 | /* 161285 */ GIR_EraseRootFromParent_Done, |
| 56966 | /* 161286 */ // Label 3552: @161286 |
| 56967 | /* 161286 */ GIM_Try, /*On fail goto*//*Label 3553*/ GIMT_Encode4(161348), // Rule ID 24458 // |
| 56968 | /* 161291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 56969 | /* 161294 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 56970 | /* 161298 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 56971 | /* 161302 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56972 | /* 161306 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56973 | /* 161309 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56974 | /* 161313 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56975 | /* 161317 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 56976 | /* 161321 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56977 | /* 161323 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56978 | /* 161330 */ // (fmul:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4f64] }:$src1) => (VMULPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 56979 | /* 161330 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rm), |
| 56980 | /* 161333 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 56981 | /* 161335 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 56982 | /* 161337 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 56983 | /* 161341 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 56984 | /* 161346 */ GIR_RootConstrainSelectedInstOperands, |
| 56985 | /* 161347 */ // GIR_Coverage, 24458, |
| 56986 | /* 161347 */ GIR_EraseRootFromParent_Done, |
| 56987 | /* 161348 */ // Label 3553: @161348 |
| 56988 | /* 161348 */ GIM_Try, /*On fail goto*//*Label 3554*/ GIMT_Encode4(161410), // Rule ID 2189 // |
| 56989 | /* 161353 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 56990 | /* 161356 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 56991 | /* 161360 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 56992 | /* 161364 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 56993 | /* 161368 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 56994 | /* 161372 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 56995 | /* 161375 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 56996 | /* 161379 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 56997 | /* 161383 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 56998 | /* 161385 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 56999 | /* 161392 */ // (fmul:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57000 | /* 161392 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDYrm), |
| 57001 | /* 161395 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57002 | /* 161397 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57003 | /* 161399 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57004 | /* 161403 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57005 | /* 161408 */ GIR_RootConstrainSelectedInstOperands, |
| 57006 | /* 161409 */ // GIR_Coverage, 2189, |
| 57007 | /* 161409 */ GIR_EraseRootFromParent_Done, |
| 57008 | /* 161410 */ // Label 3554: @161410 |
| 57009 | /* 161410 */ GIM_Try, /*On fail goto*//*Label 3555*/ GIMT_Encode4(161472), // Rule ID 6442 // |
| 57010 | /* 161415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57011 | /* 161418 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57012 | /* 161422 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57013 | /* 161426 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57014 | /* 161430 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57015 | /* 161434 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57016 | /* 161437 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57017 | /* 161441 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57018 | /* 161445 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57019 | /* 161447 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57020 | /* 161454 */ // (fmul:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57021 | /* 161454 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rm), |
| 57022 | /* 161457 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57023 | /* 161459 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57024 | /* 161461 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57025 | /* 161465 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57026 | /* 161470 */ GIR_RootConstrainSelectedInstOperands, |
| 57027 | /* 161471 */ // GIR_Coverage, 6442, |
| 57028 | /* 161471 */ GIR_EraseRootFromParent_Done, |
| 57029 | /* 161472 */ // Label 3555: @161472 |
| 57030 | /* 161472 */ GIM_Try, /*On fail goto*//*Label 3556*/ GIMT_Encode4(161503), // Rule ID 2187 // |
| 57031 | /* 161477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57032 | /* 161480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57033 | /* 161484 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57034 | /* 161488 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57035 | /* 161492 */ // (fmul:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VMULPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 57036 | /* 161492 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDYrr), |
| 57037 | /* 161497 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57038 | /* 161501 */ GIR_RootConstrainSelectedInstOperands, |
| 57039 | /* 161502 */ // GIR_Coverage, 2187, |
| 57040 | /* 161502 */ GIR_Done, |
| 57041 | /* 161503 */ // Label 3556: @161503 |
| 57042 | /* 161503 */ GIM_Try, /*On fail goto*//*Label 3557*/ GIMT_Encode4(161534), // Rule ID 6438 // |
| 57043 | /* 161508 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57044 | /* 161511 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57045 | /* 161515 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57046 | /* 161519 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57047 | /* 161523 */ // (fmul:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VMULPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 57048 | /* 161523 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rr), |
| 57049 | /* 161528 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57050 | /* 161532 */ GIR_RootConstrainSelectedInstOperands, |
| 57051 | /* 161533 */ // GIR_Coverage, 6438, |
| 57052 | /* 161533 */ GIR_Done, |
| 57053 | /* 161534 */ // Label 3557: @161534 |
| 57054 | /* 161534 */ GIM_Reject, |
| 57055 | /* 161535 */ // Label 3551: @161535 |
| 57056 | /* 161535 */ GIM_Reject, |
| 57057 | /* 161536 */ // Label 3466: @161536 |
| 57058 | /* 161536 */ GIM_Try, /*On fail goto*//*Label 3558*/ GIMT_Encode4(161695), |
| 57059 | /* 161541 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 57060 | /* 161544 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 57061 | /* 161547 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57062 | /* 161551 */ GIM_Try, /*On fail goto*//*Label 3559*/ GIMT_Encode4(161609), // Rule ID 24474 // |
| 57063 | /* 161556 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57064 | /* 161559 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57065 | /* 161563 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57066 | /* 161567 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57067 | /* 161570 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57068 | /* 161574 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57069 | /* 161578 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57070 | /* 161582 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57071 | /* 161584 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57072 | /* 161591 */ // (fmul:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8f16] }:$src1) => (VMULPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57073 | /* 161591 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rm), |
| 57074 | /* 161594 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57075 | /* 161596 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57076 | /* 161598 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57077 | /* 161602 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57078 | /* 161607 */ GIR_RootConstrainSelectedInstOperands, |
| 57079 | /* 161608 */ // GIR_Coverage, 24474, |
| 57080 | /* 161608 */ GIR_EraseRootFromParent_Done, |
| 57081 | /* 161609 */ // Label 3559: @161609 |
| 57082 | /* 161609 */ GIM_Try, /*On fail goto*//*Label 3560*/ GIMT_Encode4(161667), // Rule ID 6466 // |
| 57083 | /* 161614 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57084 | /* 161617 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57085 | /* 161621 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57086 | /* 161625 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57087 | /* 161629 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57088 | /* 161632 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57089 | /* 161636 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57090 | /* 161640 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57091 | /* 161642 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57092 | /* 161649 */ // (fmul:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57093 | /* 161649 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rm), |
| 57094 | /* 161652 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57095 | /* 161654 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57096 | /* 161656 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57097 | /* 161660 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57098 | /* 161665 */ GIR_RootConstrainSelectedInstOperands, |
| 57099 | /* 161666 */ // GIR_Coverage, 6466, |
| 57100 | /* 161666 */ GIR_EraseRootFromParent_Done, |
| 57101 | /* 161667 */ // Label 3560: @161667 |
| 57102 | /* 161667 */ GIM_Try, /*On fail goto*//*Label 3561*/ GIMT_Encode4(161694), // Rule ID 6462 // |
| 57103 | /* 161672 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57104 | /* 161675 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57105 | /* 161679 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 57106 | /* 161683 */ // (fmul:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VMULPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 57107 | /* 161683 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rr), |
| 57108 | /* 161688 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57109 | /* 161692 */ GIR_RootConstrainSelectedInstOperands, |
| 57110 | /* 161693 */ // GIR_Coverage, 6462, |
| 57111 | /* 161693 */ GIR_Done, |
| 57112 | /* 161694 */ // Label 3561: @161694 |
| 57113 | /* 161694 */ GIM_Reject, |
| 57114 | /* 161695 */ // Label 3558: @161695 |
| 57115 | /* 161695 */ GIM_Reject, |
| 57116 | /* 161696 */ // Label 3467: @161696 |
| 57117 | /* 161696 */ GIM_Try, /*On fail goto*//*Label 3562*/ GIMT_Encode4(162018), |
| 57118 | /* 161701 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 57119 | /* 161704 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 57120 | /* 161707 */ GIM_Try, /*On fail goto*//*Label 3563*/ GIMT_Encode4(161769), // Rule ID 23476 // |
| 57121 | /* 161712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57122 | /* 161715 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57123 | /* 161719 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57124 | /* 161723 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57125 | /* 161727 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57126 | /* 161730 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57127 | /* 161734 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57128 | /* 161738 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57129 | /* 161742 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57130 | /* 161744 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57131 | /* 161751 */ // (fmul:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8f32] }:$src1) => (VMULPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57132 | /* 161751 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSYrm), |
| 57133 | /* 161754 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57134 | /* 161756 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57135 | /* 161758 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57136 | /* 161762 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57137 | /* 161767 */ GIR_RootConstrainSelectedInstOperands, |
| 57138 | /* 161768 */ // GIR_Coverage, 23476, |
| 57139 | /* 161768 */ GIR_EraseRootFromParent_Done, |
| 57140 | /* 161769 */ // Label 3563: @161769 |
| 57141 | /* 161769 */ GIM_Try, /*On fail goto*//*Label 3564*/ GIMT_Encode4(161831), // Rule ID 24442 // |
| 57142 | /* 161774 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57143 | /* 161777 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57144 | /* 161781 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57145 | /* 161785 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57146 | /* 161789 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57147 | /* 161792 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57148 | /* 161796 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57149 | /* 161800 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57150 | /* 161804 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57151 | /* 161806 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57152 | /* 161813 */ // (fmul:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8f32] }:$src1) => (VMULPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57153 | /* 161813 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rm), |
| 57154 | /* 161816 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57155 | /* 161818 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57156 | /* 161820 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57157 | /* 161824 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57158 | /* 161829 */ GIR_RootConstrainSelectedInstOperands, |
| 57159 | /* 161830 */ // GIR_Coverage, 24442, |
| 57160 | /* 161830 */ GIR_EraseRootFromParent_Done, |
| 57161 | /* 161831 */ // Label 3564: @161831 |
| 57162 | /* 161831 */ GIM_Try, /*On fail goto*//*Label 3565*/ GIMT_Encode4(161893), // Rule ID 2185 // |
| 57163 | /* 161836 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57164 | /* 161839 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57165 | /* 161843 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57166 | /* 161847 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57167 | /* 161851 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57168 | /* 161855 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57169 | /* 161858 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57170 | /* 161862 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57171 | /* 161866 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57172 | /* 161868 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57173 | /* 161875 */ // (fmul:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57174 | /* 161875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSYrm), |
| 57175 | /* 161878 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57176 | /* 161880 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57177 | /* 161882 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57178 | /* 161886 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57179 | /* 161891 */ GIR_RootConstrainSelectedInstOperands, |
| 57180 | /* 161892 */ // GIR_Coverage, 2185, |
| 57181 | /* 161892 */ GIR_EraseRootFromParent_Done, |
| 57182 | /* 161893 */ // Label 3565: @161893 |
| 57183 | /* 161893 */ GIM_Try, /*On fail goto*//*Label 3566*/ GIMT_Encode4(161955), // Rule ID 6418 // |
| 57184 | /* 161898 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57185 | /* 161901 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57186 | /* 161905 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57187 | /* 161909 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57188 | /* 161913 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57189 | /* 161917 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57190 | /* 161920 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57191 | /* 161924 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57192 | /* 161928 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57193 | /* 161930 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57194 | /* 161937 */ // (fmul:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57195 | /* 161937 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rm), |
| 57196 | /* 161940 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57197 | /* 161942 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57198 | /* 161944 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57199 | /* 161948 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57200 | /* 161953 */ GIR_RootConstrainSelectedInstOperands, |
| 57201 | /* 161954 */ // GIR_Coverage, 6418, |
| 57202 | /* 161954 */ GIR_EraseRootFromParent_Done, |
| 57203 | /* 161955 */ // Label 3566: @161955 |
| 57204 | /* 161955 */ GIM_Try, /*On fail goto*//*Label 3567*/ GIMT_Encode4(161986), // Rule ID 2183 // |
| 57205 | /* 161960 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 57206 | /* 161963 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57207 | /* 161967 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57208 | /* 161971 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 57209 | /* 161975 */ // (fmul:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VMULPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 57210 | /* 161975 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSYrr), |
| 57211 | /* 161980 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57212 | /* 161984 */ GIR_RootConstrainSelectedInstOperands, |
| 57213 | /* 161985 */ // GIR_Coverage, 2183, |
| 57214 | /* 161985 */ GIR_Done, |
| 57215 | /* 161986 */ // Label 3567: @161986 |
| 57216 | /* 161986 */ GIM_Try, /*On fail goto*//*Label 3568*/ GIMT_Encode4(162017), // Rule ID 6414 // |
| 57217 | /* 161991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 57218 | /* 161994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57219 | /* 161998 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57220 | /* 162002 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57221 | /* 162006 */ // (fmul:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VMULPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 57222 | /* 162006 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rr), |
| 57223 | /* 162011 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57224 | /* 162015 */ GIR_RootConstrainSelectedInstOperands, |
| 57225 | /* 162016 */ // GIR_Coverage, 6414, |
| 57226 | /* 162016 */ GIR_Done, |
| 57227 | /* 162017 */ // Label 3568: @162017 |
| 57228 | /* 162017 */ GIM_Reject, |
| 57229 | /* 162018 */ // Label 3562: @162018 |
| 57230 | /* 162018 */ GIM_Reject, |
| 57231 | /* 162019 */ // Label 3468: @162019 |
| 57232 | /* 162019 */ GIM_Try, /*On fail goto*//*Label 3569*/ GIMT_Encode4(162178), |
| 57233 | /* 162024 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 57234 | /* 162027 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 57235 | /* 162030 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57236 | /* 162034 */ GIM_Try, /*On fail goto*//*Label 3570*/ GIMT_Encode4(162092), // Rule ID 24426 // |
| 57237 | /* 162039 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57238 | /* 162042 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57239 | /* 162046 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57240 | /* 162050 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57241 | /* 162053 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57242 | /* 162057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57243 | /* 162061 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57244 | /* 162065 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57245 | /* 162067 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57246 | /* 162074 */ // (fmul:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8f64] }:$src1) => (VMULPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57247 | /* 162074 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZrm), |
| 57248 | /* 162077 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57249 | /* 162079 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57250 | /* 162081 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57251 | /* 162085 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57252 | /* 162090 */ GIR_RootConstrainSelectedInstOperands, |
| 57253 | /* 162091 */ // GIR_Coverage, 24426, |
| 57254 | /* 162091 */ GIR_EraseRootFromParent_Done, |
| 57255 | /* 162092 */ // Label 3570: @162092 |
| 57256 | /* 162092 */ GIM_Try, /*On fail goto*//*Label 3571*/ GIMT_Encode4(162150), // Rule ID 6394 // |
| 57257 | /* 162097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57258 | /* 162100 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57259 | /* 162104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57260 | /* 162108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57261 | /* 162112 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57262 | /* 162115 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57263 | /* 162119 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57264 | /* 162123 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57265 | /* 162125 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57266 | /* 162132 */ // (fmul:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57267 | /* 162132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZrm), |
| 57268 | /* 162135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57269 | /* 162137 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57270 | /* 162139 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57271 | /* 162143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57272 | /* 162148 */ GIR_RootConstrainSelectedInstOperands, |
| 57273 | /* 162149 */ // GIR_Coverage, 6394, |
| 57274 | /* 162149 */ GIR_EraseRootFromParent_Done, |
| 57275 | /* 162150 */ // Label 3571: @162150 |
| 57276 | /* 162150 */ GIM_Try, /*On fail goto*//*Label 3572*/ GIMT_Encode4(162177), // Rule ID 6390 // |
| 57277 | /* 162155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57278 | /* 162158 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57279 | /* 162162 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57280 | /* 162166 */ // (fmul:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VMULPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 57281 | /* 162166 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZrr), |
| 57282 | /* 162171 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57283 | /* 162175 */ GIR_RootConstrainSelectedInstOperands, |
| 57284 | /* 162176 */ // GIR_Coverage, 6390, |
| 57285 | /* 162176 */ GIR_Done, |
| 57286 | /* 162177 */ // Label 3572: @162177 |
| 57287 | /* 162177 */ GIM_Reject, |
| 57288 | /* 162178 */ // Label 3569: @162178 |
| 57289 | /* 162178 */ GIM_Reject, |
| 57290 | /* 162179 */ // Label 3469: @162179 |
| 57291 | /* 162179 */ GIM_Try, /*On fail goto*//*Label 3573*/ GIMT_Encode4(162338), |
| 57292 | /* 162184 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 57293 | /* 162187 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 57294 | /* 162190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57295 | /* 162194 */ GIM_Try, /*On fail goto*//*Label 3574*/ GIMT_Encode4(162252), // Rule ID 24482 // |
| 57296 | /* 162199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57297 | /* 162202 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57298 | /* 162206 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57299 | /* 162210 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57300 | /* 162213 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57301 | /* 162217 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57302 | /* 162221 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57303 | /* 162225 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57304 | /* 162227 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57305 | /* 162234 */ // (fmul:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16f16] }:$src1) => (VMULPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57306 | /* 162234 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rm), |
| 57307 | /* 162237 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57308 | /* 162239 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57309 | /* 162241 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57310 | /* 162245 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57311 | /* 162250 */ GIR_RootConstrainSelectedInstOperands, |
| 57312 | /* 162251 */ // GIR_Coverage, 24482, |
| 57313 | /* 162251 */ GIR_EraseRootFromParent_Done, |
| 57314 | /* 162252 */ // Label 3574: @162252 |
| 57315 | /* 162252 */ GIM_Try, /*On fail goto*//*Label 3575*/ GIMT_Encode4(162310), // Rule ID 6478 // |
| 57316 | /* 162257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57317 | /* 162260 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57318 | /* 162264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57319 | /* 162268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57320 | /* 162272 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57321 | /* 162275 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57322 | /* 162279 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57323 | /* 162283 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57324 | /* 162285 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57325 | /* 162292 */ // (fmul:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57326 | /* 162292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rm), |
| 57327 | /* 162295 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57328 | /* 162297 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57329 | /* 162299 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57330 | /* 162303 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57331 | /* 162308 */ GIR_RootConstrainSelectedInstOperands, |
| 57332 | /* 162309 */ // GIR_Coverage, 6478, |
| 57333 | /* 162309 */ GIR_EraseRootFromParent_Done, |
| 57334 | /* 162310 */ // Label 3575: @162310 |
| 57335 | /* 162310 */ GIM_Try, /*On fail goto*//*Label 3576*/ GIMT_Encode4(162337), // Rule ID 6474 // |
| 57336 | /* 162315 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 57337 | /* 162318 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57338 | /* 162322 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 57339 | /* 162326 */ // (fmul:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VMULPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 57340 | /* 162326 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rr), |
| 57341 | /* 162331 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57342 | /* 162335 */ GIR_RootConstrainSelectedInstOperands, |
| 57343 | /* 162336 */ // GIR_Coverage, 6474, |
| 57344 | /* 162336 */ GIR_Done, |
| 57345 | /* 162337 */ // Label 3576: @162337 |
| 57346 | /* 162337 */ GIM_Reject, |
| 57347 | /* 162338 */ // Label 3573: @162338 |
| 57348 | /* 162338 */ GIM_Reject, |
| 57349 | /* 162339 */ // Label 3470: @162339 |
| 57350 | /* 162339 */ GIM_Try, /*On fail goto*//*Label 3577*/ GIMT_Encode4(162498), |
| 57351 | /* 162344 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 57352 | /* 162347 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 57353 | /* 162350 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57354 | /* 162354 */ GIM_Try, /*On fail goto*//*Label 3578*/ GIMT_Encode4(162412), // Rule ID 24418 // |
| 57355 | /* 162359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57356 | /* 162362 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57357 | /* 162366 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57358 | /* 162370 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57359 | /* 162373 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57360 | /* 162377 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57361 | /* 162381 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57362 | /* 162385 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57363 | /* 162387 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57364 | /* 162394 */ // (fmul:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16f32] }:$src1) => (VMULPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57365 | /* 162394 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZrm), |
| 57366 | /* 162397 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57367 | /* 162399 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57368 | /* 162401 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57369 | /* 162405 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57370 | /* 162410 */ GIR_RootConstrainSelectedInstOperands, |
| 57371 | /* 162411 */ // GIR_Coverage, 24418, |
| 57372 | /* 162411 */ GIR_EraseRootFromParent_Done, |
| 57373 | /* 162412 */ // Label 3578: @162412 |
| 57374 | /* 162412 */ GIM_Try, /*On fail goto*//*Label 3579*/ GIMT_Encode4(162470), // Rule ID 6382 // |
| 57375 | /* 162417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57376 | /* 162420 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57377 | /* 162424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57378 | /* 162428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57379 | /* 162432 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57380 | /* 162435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57381 | /* 162439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57382 | /* 162443 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57383 | /* 162445 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57384 | /* 162452 */ // (fmul:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57385 | /* 162452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZrm), |
| 57386 | /* 162455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57387 | /* 162457 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57388 | /* 162459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57389 | /* 162463 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57390 | /* 162468 */ GIR_RootConstrainSelectedInstOperands, |
| 57391 | /* 162469 */ // GIR_Coverage, 6382, |
| 57392 | /* 162469 */ GIR_EraseRootFromParent_Done, |
| 57393 | /* 162470 */ // Label 3579: @162470 |
| 57394 | /* 162470 */ GIM_Try, /*On fail goto*//*Label 3580*/ GIMT_Encode4(162497), // Rule ID 6378 // |
| 57395 | /* 162475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57396 | /* 162478 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57397 | /* 162482 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57398 | /* 162486 */ // (fmul:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VMULPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 57399 | /* 162486 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZrr), |
| 57400 | /* 162491 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57401 | /* 162495 */ GIR_RootConstrainSelectedInstOperands, |
| 57402 | /* 162496 */ // GIR_Coverage, 6378, |
| 57403 | /* 162496 */ GIR_Done, |
| 57404 | /* 162497 */ // Label 3580: @162497 |
| 57405 | /* 162497 */ GIM_Reject, |
| 57406 | /* 162498 */ // Label 3577: @162498 |
| 57407 | /* 162498 */ GIM_Reject, |
| 57408 | /* 162499 */ // Label 3471: @162499 |
| 57409 | /* 162499 */ GIM_Try, /*On fail goto*//*Label 3581*/ GIMT_Encode4(162658), |
| 57410 | /* 162504 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 57411 | /* 162507 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 57412 | /* 162510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57413 | /* 162514 */ GIM_Try, /*On fail goto*//*Label 3582*/ GIMT_Encode4(162572), // Rule ID 24466 // |
| 57414 | /* 162519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57415 | /* 162522 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57416 | /* 162526 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57417 | /* 162530 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57418 | /* 162533 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57419 | /* 162537 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57420 | /* 162541 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57421 | /* 162545 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57422 | /* 162547 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57423 | /* 162554 */ // (fmul:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32f16] }:$src1) => (VMULPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57424 | /* 162554 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZrm), |
| 57425 | /* 162557 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57426 | /* 162559 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57427 | /* 162561 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57428 | /* 162565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57429 | /* 162570 */ GIR_RootConstrainSelectedInstOperands, |
| 57430 | /* 162571 */ // GIR_Coverage, 24466, |
| 57431 | /* 162571 */ GIR_EraseRootFromParent_Done, |
| 57432 | /* 162572 */ // Label 3582: @162572 |
| 57433 | /* 162572 */ GIM_Try, /*On fail goto*//*Label 3583*/ GIMT_Encode4(162630), // Rule ID 6454 // |
| 57434 | /* 162577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57435 | /* 162580 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57436 | /* 162584 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57437 | /* 162588 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57438 | /* 162592 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57439 | /* 162595 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57440 | /* 162599 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57441 | /* 162603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57442 | /* 162605 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57443 | /* 162612 */ // (fmul:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VMULPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 57444 | /* 162612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZrm), |
| 57445 | /* 162615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57446 | /* 162617 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57447 | /* 162619 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57448 | /* 162623 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57449 | /* 162628 */ GIR_RootConstrainSelectedInstOperands, |
| 57450 | /* 162629 */ // GIR_Coverage, 6454, |
| 57451 | /* 162629 */ GIR_EraseRootFromParent_Done, |
| 57452 | /* 162630 */ // Label 3583: @162630 |
| 57453 | /* 162630 */ GIM_Try, /*On fail goto*//*Label 3584*/ GIMT_Encode4(162657), // Rule ID 6450 // |
| 57454 | /* 162635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57455 | /* 162638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57456 | /* 162642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 57457 | /* 162646 */ // (fmul:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VMULPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 57458 | /* 162646 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZrr), |
| 57459 | /* 162651 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57460 | /* 162655 */ GIR_RootConstrainSelectedInstOperands, |
| 57461 | /* 162656 */ // GIR_Coverage, 6450, |
| 57462 | /* 162656 */ GIR_Done, |
| 57463 | /* 162657 */ // Label 3584: @162657 |
| 57464 | /* 162657 */ GIM_Reject, |
| 57465 | /* 162658 */ // Label 3581: @162658 |
| 57466 | /* 162658 */ GIM_Reject, |
| 57467 | /* 162659 */ // Label 3472: @162659 |
| 57468 | /* 162659 */ GIM_Reject, |
| 57469 | /* 162660 */ // Label 45: @162660 |
| 57470 | /* 162660 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3597*/ GIMT_Encode4(168647), |
| 57471 | /* 162671 */ /*GILLT_s16*//*Label 3585*/ GIMT_Encode4(162755), |
| 57472 | /* 162675 */ /*GILLT_s32*//*Label 3586*/ GIMT_Encode4(163000), |
| 57473 | /* 162679 */ /*GILLT_s64*//*Label 3587*/ GIMT_Encode4(163737), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 57474 | /* 162695 */ /*GILLT_v2s64*//*Label 3588*/ GIMT_Encode4(164474), GIMT_Encode4(0), |
| 57475 | /* 162703 */ /*GILLT_v4s32*//*Label 3589*/ GIMT_Encode4(165211), |
| 57476 | /* 162707 */ /*GILLT_v4s64*//*Label 3590*/ GIMT_Encode4(165948), GIMT_Encode4(0), |
| 57477 | /* 162715 */ /*GILLT_v8s16*//*Label 3591*/ GIMT_Encode4(166685), |
| 57478 | /* 162719 */ /*GILLT_v8s32*//*Label 3592*/ GIMT_Encode4(166930), |
| 57479 | /* 162723 */ /*GILLT_v8s64*//*Label 3593*/ GIMT_Encode4(167667), GIMT_Encode4(0), GIMT_Encode4(0), |
| 57480 | /* 162735 */ /*GILLT_v16s16*//*Label 3594*/ GIMT_Encode4(167912), |
| 57481 | /* 162739 */ /*GILLT_v16s32*//*Label 3595*/ GIMT_Encode4(168157), GIMT_Encode4(0), GIMT_Encode4(0), |
| 57482 | /* 162751 */ /*GILLT_v32s16*//*Label 3596*/ GIMT_Encode4(168402), |
| 57483 | /* 162755 */ // Label 3585: @162755 |
| 57484 | /* 162755 */ GIM_Try, /*On fail goto*//*Label 3598*/ GIMT_Encode4(162999), |
| 57485 | /* 162760 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 57486 | /* 162763 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 57487 | /* 162766 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 57488 | /* 162769 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57489 | /* 162773 */ GIM_Try, /*On fail goto*//*Label 3599*/ GIMT_Encode4(162837), // Rule ID 10162 // |
| 57490 | /* 162778 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57491 | /* 162781 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57492 | /* 162785 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57493 | /* 162789 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57494 | /* 162792 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57495 | /* 162796 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57496 | /* 162800 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57497 | /* 162804 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57498 | /* 162808 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57499 | /* 162810 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57500 | /* 162817 */ // (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) |
| 57501 | /* 162817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SHZm), |
| 57502 | /* 162820 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57503 | /* 162822 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57504 | /* 162824 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 57505 | /* 162826 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57506 | /* 162830 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57507 | /* 162835 */ GIR_RootConstrainSelectedInstOperands, |
| 57508 | /* 162836 */ // GIR_Coverage, 10162, |
| 57509 | /* 162836 */ GIR_EraseRootFromParent_Done, |
| 57510 | /* 162837 */ // Label 3599: @162837 |
| 57511 | /* 162837 */ GIM_Try, /*On fail goto*//*Label 3600*/ GIMT_Encode4(162901), // Rule ID 10160 // |
| 57512 | /* 162842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57513 | /* 162845 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57514 | /* 162849 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57515 | /* 162853 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57516 | /* 162857 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57517 | /* 162860 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57518 | /* 162864 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57519 | /* 162868 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57520 | /* 162872 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57521 | /* 162874 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57522 | /* 162881 */ // (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) |
| 57523 | /* 162881 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SHZm), |
| 57524 | /* 162884 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57525 | /* 162886 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 57526 | /* 162888 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57527 | /* 162890 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57528 | /* 162894 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57529 | /* 162899 */ GIR_RootConstrainSelectedInstOperands, |
| 57530 | /* 162900 */ // GIR_Coverage, 10160, |
| 57531 | /* 162900 */ GIR_EraseRootFromParent_Done, |
| 57532 | /* 162901 */ // Label 3600: @162901 |
| 57533 | /* 162901 */ GIM_Try, /*On fail goto*//*Label 3601*/ GIMT_Encode4(162965), // Rule ID 10157 // |
| 57534 | /* 162906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57535 | /* 162909 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57536 | /* 162913 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57537 | /* 162917 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 57538 | /* 162921 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57539 | /* 162925 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57540 | /* 162928 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57541 | /* 162932 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57542 | /* 162936 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57543 | /* 162938 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57544 | /* 162945 */ // (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) |
| 57545 | /* 162945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SHZm), |
| 57546 | /* 162948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57547 | /* 162950 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57548 | /* 162952 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57549 | /* 162954 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57550 | /* 162958 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57551 | /* 162963 */ GIR_RootConstrainSelectedInstOperands, |
| 57552 | /* 162964 */ // GIR_Coverage, 10157, |
| 57553 | /* 162964 */ GIR_EraseRootFromParent_Done, |
| 57554 | /* 162965 */ // Label 3601: @162965 |
| 57555 | /* 162965 */ GIM_Try, /*On fail goto*//*Label 3602*/ GIMT_Encode4(162998), // Rule ID 10155 // |
| 57556 | /* 162970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 57557 | /* 162973 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57558 | /* 162977 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57559 | /* 162981 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 57560 | /* 162985 */ // (fma:{ *:[f16] } FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src3) => (VFMADD213SHZr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src3) |
| 57561 | /* 162985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SHZr), |
| 57562 | /* 162988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57563 | /* 162990 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57564 | /* 162992 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57565 | /* 162994 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 57566 | /* 162996 */ GIR_RootConstrainSelectedInstOperands, |
| 57567 | /* 162997 */ // GIR_Coverage, 10155, |
| 57568 | /* 162997 */ GIR_EraseRootFromParent_Done, |
| 57569 | /* 162998 */ // Label 3602: @162998 |
| 57570 | /* 162998 */ GIM_Reject, |
| 57571 | /* 162999 */ // Label 3598: @162999 |
| 57572 | /* 162999 */ GIM_Reject, |
| 57573 | /* 163000 */ // Label 3586: @163000 |
| 57574 | /* 163000 */ GIM_Try, /*On fail goto*//*Label 3603*/ GIMT_Encode4(163736), |
| 57575 | /* 163005 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 57576 | /* 163008 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 57577 | /* 163011 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 57578 | /* 163014 */ GIM_Try, /*On fail goto*//*Label 3604*/ GIMT_Encode4(163082), // Rule ID 1304 // |
| 57579 | /* 163019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 57580 | /* 163022 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57581 | /* 163026 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57582 | /* 163030 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57583 | /* 163034 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57584 | /* 163037 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57585 | /* 163041 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57586 | /* 163045 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57587 | /* 163049 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57588 | /* 163053 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57589 | /* 163055 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57590 | /* 163062 */ // (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) |
| 57591 | /* 163062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SSm), |
| 57592 | /* 163065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57593 | /* 163067 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57594 | /* 163069 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 57595 | /* 163071 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57596 | /* 163075 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57597 | /* 163080 */ GIR_RootConstrainSelectedInstOperands, |
| 57598 | /* 163081 */ // GIR_Coverage, 1304, |
| 57599 | /* 163081 */ GIR_EraseRootFromParent_Done, |
| 57600 | /* 163082 */ // Label 3604: @163082 |
| 57601 | /* 163082 */ GIM_Try, /*On fail goto*//*Label 3605*/ GIMT_Encode4(163150), // Rule ID 10144 // |
| 57602 | /* 163087 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57603 | /* 163090 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57604 | /* 163094 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57605 | /* 163098 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57606 | /* 163102 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57607 | /* 163105 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57608 | /* 163109 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57609 | /* 163113 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57610 | /* 163117 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57611 | /* 163121 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57612 | /* 163123 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57613 | /* 163130 */ // (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) |
| 57614 | /* 163130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SSZm), |
| 57615 | /* 163133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57616 | /* 163135 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57617 | /* 163137 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 57618 | /* 163139 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57619 | /* 163143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57620 | /* 163148 */ GIR_RootConstrainSelectedInstOperands, |
| 57621 | /* 163149 */ // GIR_Coverage, 10144, |
| 57622 | /* 163149 */ GIR_EraseRootFromParent_Done, |
| 57623 | /* 163150 */ // Label 3605: @163150 |
| 57624 | /* 163150 */ GIM_Try, /*On fail goto*//*Label 3606*/ GIMT_Encode4(163218), // Rule ID 23363 // |
| 57625 | /* 163155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 57626 | /* 163158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57627 | /* 163162 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57628 | /* 163166 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57629 | /* 163170 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57630 | /* 163173 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57631 | /* 163177 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57632 | /* 163181 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57633 | /* 163185 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57634 | /* 163189 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57635 | /* 163191 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57636 | /* 163198 */ // (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) |
| 57637 | /* 163198 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4mr), |
| 57638 | /* 163201 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57639 | /* 163203 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57640 | /* 163205 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57641 | /* 163209 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 57642 | /* 163211 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57643 | /* 163216 */ GIR_RootConstrainSelectedInstOperands, |
| 57644 | /* 163217 */ // GIR_Coverage, 23363, |
| 57645 | /* 163217 */ GIR_EraseRootFromParent_Done, |
| 57646 | /* 163218 */ // Label 3606: @163218 |
| 57647 | /* 163218 */ GIM_Try, /*On fail goto*//*Label 3607*/ GIMT_Encode4(163286), // Rule ID 1302 // |
| 57648 | /* 163223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 57649 | /* 163226 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57650 | /* 163230 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57651 | /* 163234 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57652 | /* 163238 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57653 | /* 163242 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57654 | /* 163245 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57655 | /* 163249 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57656 | /* 163253 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57657 | /* 163257 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57658 | /* 163259 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57659 | /* 163266 */ // (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) |
| 57660 | /* 163266 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SSm), |
| 57661 | /* 163269 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57662 | /* 163271 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 57663 | /* 163273 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57664 | /* 163275 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57665 | /* 163279 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57666 | /* 163284 */ GIR_RootConstrainSelectedInstOperands, |
| 57667 | /* 163285 */ // GIR_Coverage, 1302, |
| 57668 | /* 163285 */ GIR_EraseRootFromParent_Done, |
| 57669 | /* 163286 */ // Label 3607: @163286 |
| 57670 | /* 163286 */ GIM_Try, /*On fail goto*//*Label 3608*/ GIMT_Encode4(163354), // Rule ID 1366 // |
| 57671 | /* 163291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 57672 | /* 163294 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57673 | /* 163298 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57674 | /* 163302 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57675 | /* 163306 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57676 | /* 163310 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57677 | /* 163313 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57678 | /* 163317 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57679 | /* 163321 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57680 | /* 163325 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57681 | /* 163327 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57682 | /* 163334 */ // (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) |
| 57683 | /* 163334 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4mr), |
| 57684 | /* 163337 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57685 | /* 163339 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57686 | /* 163341 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57687 | /* 163345 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 57688 | /* 163347 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57689 | /* 163352 */ GIR_RootConstrainSelectedInstOperands, |
| 57690 | /* 163353 */ // GIR_Coverage, 1366, |
| 57691 | /* 163353 */ GIR_EraseRootFromParent_Done, |
| 57692 | /* 163354 */ // Label 3608: @163354 |
| 57693 | /* 163354 */ GIM_Try, /*On fail goto*//*Label 3609*/ GIMT_Encode4(163422), // Rule ID 10142 // |
| 57694 | /* 163359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57695 | /* 163362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57696 | /* 163366 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57697 | /* 163370 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57698 | /* 163374 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57699 | /* 163378 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57700 | /* 163381 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57701 | /* 163385 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57702 | /* 163389 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57703 | /* 163393 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57704 | /* 163395 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57705 | /* 163402 */ // (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) |
| 57706 | /* 163402 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SSZm), |
| 57707 | /* 163405 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57708 | /* 163407 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 57709 | /* 163409 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57710 | /* 163411 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57711 | /* 163415 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57712 | /* 163420 */ GIR_RootConstrainSelectedInstOperands, |
| 57713 | /* 163421 */ // GIR_Coverage, 10142, |
| 57714 | /* 163421 */ GIR_EraseRootFromParent_Done, |
| 57715 | /* 163422 */ // Label 3609: @163422 |
| 57716 | /* 163422 */ GIM_Try, /*On fail goto*//*Label 3610*/ GIMT_Encode4(163490), // Rule ID 1300 // |
| 57717 | /* 163427 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 57718 | /* 163430 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57719 | /* 163434 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57720 | /* 163438 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57721 | /* 163442 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 57722 | /* 163446 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57723 | /* 163450 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57724 | /* 163453 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57725 | /* 163457 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57726 | /* 163461 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57727 | /* 163463 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57728 | /* 163470 */ // (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) |
| 57729 | /* 163470 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSm), |
| 57730 | /* 163473 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57731 | /* 163475 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57732 | /* 163477 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57733 | /* 163479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57734 | /* 163483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57735 | /* 163488 */ GIR_RootConstrainSelectedInstOperands, |
| 57736 | /* 163489 */ // GIR_Coverage, 1300, |
| 57737 | /* 163489 */ GIR_EraseRootFromParent_Done, |
| 57738 | /* 163490 */ // Label 3610: @163490 |
| 57739 | /* 163490 */ GIM_Try, /*On fail goto*//*Label 3611*/ GIMT_Encode4(163558), // Rule ID 1364 // |
| 57740 | /* 163495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 57741 | /* 163498 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57742 | /* 163502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57743 | /* 163506 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57744 | /* 163510 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 57745 | /* 163514 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57746 | /* 163518 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57747 | /* 163521 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57748 | /* 163525 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57749 | /* 163529 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57750 | /* 163531 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57751 | /* 163538 */ // (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) |
| 57752 | /* 163538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4rm), |
| 57753 | /* 163541 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57754 | /* 163543 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57755 | /* 163545 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 57756 | /* 163547 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57757 | /* 163551 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57758 | /* 163556 */ GIR_RootConstrainSelectedInstOperands, |
| 57759 | /* 163557 */ // GIR_Coverage, 1364, |
| 57760 | /* 163557 */ GIR_EraseRootFromParent_Done, |
| 57761 | /* 163558 */ // Label 3611: @163558 |
| 57762 | /* 163558 */ GIM_Try, /*On fail goto*//*Label 3612*/ GIMT_Encode4(163626), // Rule ID 10139 // |
| 57763 | /* 163563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57764 | /* 163566 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57765 | /* 163570 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57766 | /* 163574 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57767 | /* 163578 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 57768 | /* 163582 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57769 | /* 163586 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57770 | /* 163589 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57771 | /* 163593 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57772 | /* 163597 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57773 | /* 163599 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57774 | /* 163606 */ // (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) |
| 57775 | /* 163606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSZm), |
| 57776 | /* 163609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57777 | /* 163611 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57778 | /* 163613 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57779 | /* 163615 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57780 | /* 163619 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57781 | /* 163624 */ GIR_RootConstrainSelectedInstOperands, |
| 57782 | /* 163625 */ // GIR_Coverage, 10139, |
| 57783 | /* 163625 */ GIR_EraseRootFromParent_Done, |
| 57784 | /* 163626 */ // Label 3612: @163626 |
| 57785 | /* 163626 */ GIM_Try, /*On fail goto*//*Label 3613*/ GIMT_Encode4(163663), // Rule ID 1298 // |
| 57786 | /* 163631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 57787 | /* 163634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57788 | /* 163638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57789 | /* 163642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57790 | /* 163646 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57791 | /* 163650 */ // (fma:{ *:[f32] } FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src3) => (VFMADD213SSr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) |
| 57792 | /* 163650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSr), |
| 57793 | /* 163653 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57794 | /* 163655 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57795 | /* 163657 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57796 | /* 163659 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 57797 | /* 163661 */ GIR_RootConstrainSelectedInstOperands, |
| 57798 | /* 163662 */ // GIR_Coverage, 1298, |
| 57799 | /* 163662 */ GIR_EraseRootFromParent_Done, |
| 57800 | /* 163663 */ // Label 3613: @163663 |
| 57801 | /* 163663 */ GIM_Try, /*On fail goto*//*Label 3614*/ GIMT_Encode4(163698), // Rule ID 1362 // |
| 57802 | /* 163668 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 57803 | /* 163671 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57804 | /* 163675 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57805 | /* 163679 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57806 | /* 163683 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 57807 | /* 163687 */ // (fma:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) => (VFMADDSS4rr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) |
| 57808 | /* 163687 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4rr), |
| 57809 | /* 163692 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 57810 | /* 163696 */ GIR_RootConstrainSelectedInstOperands, |
| 57811 | /* 163697 */ // GIR_Coverage, 1362, |
| 57812 | /* 163697 */ GIR_Done, |
| 57813 | /* 163698 */ // Label 3614: @163698 |
| 57814 | /* 163698 */ GIM_Try, /*On fail goto*//*Label 3615*/ GIMT_Encode4(163735), // Rule ID 10137 // |
| 57815 | /* 163703 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57816 | /* 163706 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57817 | /* 163710 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57818 | /* 163714 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57819 | /* 163718 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 57820 | /* 163722 */ // (fma:{ *:[f32] } FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src3) => (VFMADD213SSZr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src3) |
| 57821 | /* 163722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSZr), |
| 57822 | /* 163725 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57823 | /* 163727 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57824 | /* 163729 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57825 | /* 163731 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 57826 | /* 163733 */ GIR_RootConstrainSelectedInstOperands, |
| 57827 | /* 163734 */ // GIR_Coverage, 10137, |
| 57828 | /* 163734 */ GIR_EraseRootFromParent_Done, |
| 57829 | /* 163735 */ // Label 3615: @163735 |
| 57830 | /* 163735 */ GIM_Reject, |
| 57831 | /* 163736 */ // Label 3603: @163736 |
| 57832 | /* 163736 */ GIM_Reject, |
| 57833 | /* 163737 */ // Label 3587: @163737 |
| 57834 | /* 163737 */ GIM_Try, /*On fail goto*//*Label 3616*/ GIMT_Encode4(164473), |
| 57835 | /* 163742 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 57836 | /* 163745 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 57837 | /* 163748 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 57838 | /* 163751 */ GIM_Try, /*On fail goto*//*Label 3617*/ GIMT_Encode4(163819), // Rule ID 1312 // |
| 57839 | /* 163756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 57840 | /* 163759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57841 | /* 163763 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57842 | /* 163767 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57843 | /* 163771 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57844 | /* 163774 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57845 | /* 163778 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57846 | /* 163782 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57847 | /* 163786 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57848 | /* 163790 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57849 | /* 163792 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57850 | /* 163799 */ // (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) |
| 57851 | /* 163799 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SDm), |
| 57852 | /* 163802 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57853 | /* 163804 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57854 | /* 163806 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 57855 | /* 163808 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57856 | /* 163812 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57857 | /* 163817 */ GIR_RootConstrainSelectedInstOperands, |
| 57858 | /* 163818 */ // GIR_Coverage, 1312, |
| 57859 | /* 163818 */ GIR_EraseRootFromParent_Done, |
| 57860 | /* 163819 */ // Label 3617: @163819 |
| 57861 | /* 163819 */ GIM_Try, /*On fail goto*//*Label 3618*/ GIMT_Encode4(163887), // Rule ID 10153 // |
| 57862 | /* 163824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57863 | /* 163827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 57864 | /* 163831 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57865 | /* 163835 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57866 | /* 163839 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57867 | /* 163842 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57868 | /* 163846 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57869 | /* 163850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 57870 | /* 163854 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 57871 | /* 163858 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57872 | /* 163860 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57873 | /* 163867 */ // (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) |
| 57874 | /* 163867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SDZm), |
| 57875 | /* 163870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57876 | /* 163872 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57877 | /* 163874 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 57878 | /* 163876 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57879 | /* 163880 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57880 | /* 163885 */ GIR_RootConstrainSelectedInstOperands, |
| 57881 | /* 163886 */ // GIR_Coverage, 10153, |
| 57882 | /* 163886 */ GIR_EraseRootFromParent_Done, |
| 57883 | /* 163887 */ // Label 3618: @163887 |
| 57884 | /* 163887 */ GIM_Try, /*On fail goto*//*Label 3619*/ GIMT_Encode4(163955), // Rule ID 23391 // |
| 57885 | /* 163892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 57886 | /* 163895 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57887 | /* 163899 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 57888 | /* 163903 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57889 | /* 163907 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57890 | /* 163910 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57891 | /* 163914 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57892 | /* 163918 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57893 | /* 163922 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57894 | /* 163926 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57895 | /* 163928 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57896 | /* 163935 */ // (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) |
| 57897 | /* 163935 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4mr), |
| 57898 | /* 163938 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57899 | /* 163940 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57900 | /* 163942 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57901 | /* 163946 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 57902 | /* 163948 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57903 | /* 163953 */ GIR_RootConstrainSelectedInstOperands, |
| 57904 | /* 163954 */ // GIR_Coverage, 23391, |
| 57905 | /* 163954 */ GIR_EraseRootFromParent_Done, |
| 57906 | /* 163955 */ // Label 3619: @163955 |
| 57907 | /* 163955 */ GIM_Try, /*On fail goto*//*Label 3620*/ GIMT_Encode4(164023), // Rule ID 1310 // |
| 57908 | /* 163960 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 57909 | /* 163963 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57910 | /* 163967 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57911 | /* 163971 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57912 | /* 163975 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57913 | /* 163979 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57914 | /* 163982 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57915 | /* 163986 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57916 | /* 163990 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57917 | /* 163994 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57918 | /* 163996 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57919 | /* 164003 */ // (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) |
| 57920 | /* 164003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SDm), |
| 57921 | /* 164006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57922 | /* 164008 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 57923 | /* 164010 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57924 | /* 164012 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57925 | /* 164016 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57926 | /* 164021 */ GIR_RootConstrainSelectedInstOperands, |
| 57927 | /* 164022 */ // GIR_Coverage, 1310, |
| 57928 | /* 164022 */ GIR_EraseRootFromParent_Done, |
| 57929 | /* 164023 */ // Label 3620: @164023 |
| 57930 | /* 164023 */ GIM_Try, /*On fail goto*//*Label 3621*/ GIMT_Encode4(164091), // Rule ID 1450 // |
| 57931 | /* 164028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 57932 | /* 164031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57933 | /* 164035 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57934 | /* 164039 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57935 | /* 164043 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57936 | /* 164047 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57937 | /* 164050 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57938 | /* 164054 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57939 | /* 164058 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57940 | /* 164062 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57941 | /* 164064 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57942 | /* 164071 */ // (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) |
| 57943 | /* 164071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4mr), |
| 57944 | /* 164074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57945 | /* 164076 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 57946 | /* 164078 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 57947 | /* 164082 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 57948 | /* 164084 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57949 | /* 164089 */ GIR_RootConstrainSelectedInstOperands, |
| 57950 | /* 164090 */ // GIR_Coverage, 1450, |
| 57951 | /* 164090 */ GIR_EraseRootFromParent_Done, |
| 57952 | /* 164091 */ // Label 3621: @164091 |
| 57953 | /* 164091 */ GIM_Try, /*On fail goto*//*Label 3622*/ GIMT_Encode4(164159), // Rule ID 10151 // |
| 57954 | /* 164096 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 57955 | /* 164099 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 57956 | /* 164103 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 57957 | /* 164107 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 57958 | /* 164111 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57959 | /* 164115 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57960 | /* 164118 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57961 | /* 164122 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57962 | /* 164126 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 57963 | /* 164130 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57964 | /* 164132 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57965 | /* 164139 */ // (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) |
| 57966 | /* 164139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SDZm), |
| 57967 | /* 164142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57968 | /* 164144 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 57969 | /* 164146 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57970 | /* 164148 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57971 | /* 164152 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57972 | /* 164157 */ GIR_RootConstrainSelectedInstOperands, |
| 57973 | /* 164158 */ // GIR_Coverage, 10151, |
| 57974 | /* 164158 */ GIR_EraseRootFromParent_Done, |
| 57975 | /* 164159 */ // Label 3622: @164159 |
| 57976 | /* 164159 */ GIM_Try, /*On fail goto*//*Label 3623*/ GIMT_Encode4(164227), // Rule ID 1308 // |
| 57977 | /* 164164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 57978 | /* 164167 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57979 | /* 164171 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57980 | /* 164175 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 57981 | /* 164179 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 57982 | /* 164183 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 57983 | /* 164187 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 57984 | /* 164190 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 57985 | /* 164194 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 57986 | /* 164198 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 57987 | /* 164200 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 57988 | /* 164207 */ // (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) |
| 57989 | /* 164207 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDm), |
| 57990 | /* 164210 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 57991 | /* 164212 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 57992 | /* 164214 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 57993 | /* 164216 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 57994 | /* 164220 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 57995 | /* 164225 */ GIR_RootConstrainSelectedInstOperands, |
| 57996 | /* 164226 */ // GIR_Coverage, 1308, |
| 57997 | /* 164226 */ GIR_EraseRootFromParent_Done, |
| 57998 | /* 164227 */ // Label 3623: @164227 |
| 57999 | /* 164227 */ GIM_Try, /*On fail goto*//*Label 3624*/ GIMT_Encode4(164295), // Rule ID 1448 // |
| 58000 | /* 164232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58001 | /* 164235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58002 | /* 164239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58003 | /* 164243 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58004 | /* 164247 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58005 | /* 164251 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58006 | /* 164255 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58007 | /* 164258 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58008 | /* 164262 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58009 | /* 164266 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58010 | /* 164268 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58011 | /* 164275 */ // (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) |
| 58012 | /* 164275 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4rm), |
| 58013 | /* 164278 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58014 | /* 164280 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58015 | /* 164282 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 58016 | /* 164284 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58017 | /* 164288 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58018 | /* 164293 */ GIR_RootConstrainSelectedInstOperands, |
| 58019 | /* 164294 */ // GIR_Coverage, 1448, |
| 58020 | /* 164294 */ GIR_EraseRootFromParent_Done, |
| 58021 | /* 164295 */ // Label 3624: @164295 |
| 58022 | /* 164295 */ GIM_Try, /*On fail goto*//*Label 3625*/ GIMT_Encode4(164363), // Rule ID 10148 // |
| 58023 | /* 164300 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58024 | /* 164303 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58025 | /* 164307 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58026 | /* 164311 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58027 | /* 164315 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58028 | /* 164319 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58029 | /* 164323 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58030 | /* 164326 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58031 | /* 164330 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58032 | /* 164334 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58033 | /* 164336 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58034 | /* 164343 */ // (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) |
| 58035 | /* 164343 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDZm), |
| 58036 | /* 164346 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58037 | /* 164348 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58038 | /* 164350 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58039 | /* 164352 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58040 | /* 164356 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58041 | /* 164361 */ GIR_RootConstrainSelectedInstOperands, |
| 58042 | /* 164362 */ // GIR_Coverage, 10148, |
| 58043 | /* 164362 */ GIR_EraseRootFromParent_Done, |
| 58044 | /* 164363 */ // Label 3625: @164363 |
| 58045 | /* 164363 */ GIM_Try, /*On fail goto*//*Label 3626*/ GIMT_Encode4(164400), // Rule ID 1306 // |
| 58046 | /* 164368 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 58047 | /* 164371 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58048 | /* 164375 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58049 | /* 164379 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58050 | /* 164383 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58051 | /* 164387 */ // (fma:{ *:[f64] } FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src3) => (VFMADD213SDr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) |
| 58052 | /* 164387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDr), |
| 58053 | /* 164390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58054 | /* 164392 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58055 | /* 164394 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58056 | /* 164396 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58057 | /* 164398 */ GIR_RootConstrainSelectedInstOperands, |
| 58058 | /* 164399 */ // GIR_Coverage, 1306, |
| 58059 | /* 164399 */ GIR_EraseRootFromParent_Done, |
| 58060 | /* 164400 */ // Label 3626: @164400 |
| 58061 | /* 164400 */ GIM_Try, /*On fail goto*//*Label 3627*/ GIMT_Encode4(164435), // Rule ID 1446 // |
| 58062 | /* 164405 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 58063 | /* 164408 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58064 | /* 164412 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58065 | /* 164416 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58066 | /* 164420 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 58067 | /* 164424 */ // (fma:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) => (VFMADDSD4rr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) |
| 58068 | /* 164424 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4rr), |
| 58069 | /* 164429 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 58070 | /* 164433 */ GIR_RootConstrainSelectedInstOperands, |
| 58071 | /* 164434 */ // GIR_Coverage, 1446, |
| 58072 | /* 164434 */ GIR_Done, |
| 58073 | /* 164435 */ // Label 3627: @164435 |
| 58074 | /* 164435 */ GIM_Try, /*On fail goto*//*Label 3628*/ GIMT_Encode4(164472), // Rule ID 10146 // |
| 58075 | /* 164440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 58076 | /* 164443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58077 | /* 164447 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58078 | /* 164451 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58079 | /* 164455 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 58080 | /* 164459 */ // (fma:{ *:[f64] } FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src3) => (VFMADD213SDZr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src3) |
| 58081 | /* 164459 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDZr), |
| 58082 | /* 164462 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58083 | /* 164464 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58084 | /* 164466 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58085 | /* 164468 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58086 | /* 164470 */ GIR_RootConstrainSelectedInstOperands, |
| 58087 | /* 164471 */ // GIR_Coverage, 10146, |
| 58088 | /* 164471 */ GIR_EraseRootFromParent_Done, |
| 58089 | /* 164472 */ // Label 3628: @164472 |
| 58090 | /* 164472 */ GIM_Reject, |
| 58091 | /* 164473 */ // Label 3616: @164473 |
| 58092 | /* 164473 */ GIM_Reject, |
| 58093 | /* 164474 */ // Label 3588: @164474 |
| 58094 | /* 164474 */ GIM_Try, /*On fail goto*//*Label 3629*/ GIMT_Encode4(165210), |
| 58095 | /* 164479 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 58096 | /* 164482 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 58097 | /* 164485 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 58098 | /* 164488 */ GIM_Try, /*On fail goto*//*Label 3630*/ GIMT_Encode4(164556), // Rule ID 1192 // |
| 58099 | /* 164493 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58100 | /* 164496 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58101 | /* 164500 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58102 | /* 164504 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58103 | /* 164508 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58104 | /* 164511 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58105 | /* 164515 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58106 | /* 164519 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58107 | /* 164523 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58108 | /* 164527 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58109 | /* 164529 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58110 | /* 164536 */ // (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) |
| 58111 | /* 164536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDm), |
| 58112 | /* 164539 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58113 | /* 164541 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58114 | /* 164543 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58115 | /* 164545 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58116 | /* 164549 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58117 | /* 164554 */ GIR_RootConstrainSelectedInstOperands, |
| 58118 | /* 164555 */ // GIR_Coverage, 1192, |
| 58119 | /* 164555 */ GIR_EraseRootFromParent_Done, |
| 58120 | /* 164556 */ // Label 3630: @164556 |
| 58121 | /* 164556 */ GIM_Try, /*On fail goto*//*Label 3631*/ GIMT_Encode4(164624), // Rule ID 9685 // |
| 58122 | /* 164561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58123 | /* 164564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58124 | /* 164568 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58125 | /* 164572 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58126 | /* 164576 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58127 | /* 164579 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58128 | /* 164583 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58129 | /* 164587 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58130 | /* 164591 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58131 | /* 164595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58132 | /* 164597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58133 | /* 164604 */ // (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) |
| 58134 | /* 164604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZ128m), |
| 58135 | /* 164607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58136 | /* 164609 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58137 | /* 164611 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58138 | /* 164613 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58139 | /* 164617 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58140 | /* 164622 */ GIR_RootConstrainSelectedInstOperands, |
| 58141 | /* 164623 */ // GIR_Coverage, 9685, |
| 58142 | /* 164623 */ GIR_EraseRootFromParent_Done, |
| 58143 | /* 164624 */ // Label 3631: @164624 |
| 58144 | /* 164624 */ GIM_Try, /*On fail goto*//*Label 3632*/ GIMT_Encode4(164692), // Rule ID 23399 // |
| 58145 | /* 164629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58146 | /* 164632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58147 | /* 164636 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58148 | /* 164640 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58149 | /* 164644 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58150 | /* 164647 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58151 | /* 164651 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58152 | /* 164655 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58153 | /* 164659 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58154 | /* 164663 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58155 | /* 164665 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58156 | /* 164672 */ // (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) |
| 58157 | /* 164672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4mr), |
| 58158 | /* 164675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58159 | /* 164677 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58160 | /* 164679 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58161 | /* 164683 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58162 | /* 164685 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58163 | /* 164690 */ GIR_RootConstrainSelectedInstOperands, |
| 58164 | /* 164691 */ // GIR_Coverage, 23399, |
| 58165 | /* 164691 */ GIR_EraseRootFromParent_Done, |
| 58166 | /* 164692 */ // Label 3632: @164692 |
| 58167 | /* 164692 */ GIM_Try, /*On fail goto*//*Label 3633*/ GIMT_Encode4(164760), // Rule ID 1190 // |
| 58168 | /* 164697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58169 | /* 164700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58170 | /* 164704 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58171 | /* 164708 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58172 | /* 164712 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58173 | /* 164716 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58174 | /* 164719 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58175 | /* 164723 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58176 | /* 164727 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58177 | /* 164731 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58178 | /* 164733 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58179 | /* 164740 */ // (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) |
| 58180 | /* 164740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDm), |
| 58181 | /* 164743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58182 | /* 164745 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58183 | /* 164747 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58184 | /* 164749 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58185 | /* 164753 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58186 | /* 164758 */ GIR_RootConstrainSelectedInstOperands, |
| 58187 | /* 164759 */ // GIR_Coverage, 1190, |
| 58188 | /* 164759 */ GIR_EraseRootFromParent_Done, |
| 58189 | /* 164760 */ // Label 3633: @164760 |
| 58190 | /* 164760 */ GIM_Try, /*On fail goto*//*Label 3634*/ GIMT_Encode4(164828), // Rule ID 1474 // |
| 58191 | /* 164765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58192 | /* 164768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58193 | /* 164772 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58194 | /* 164776 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58195 | /* 164780 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58196 | /* 164784 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58197 | /* 164787 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58198 | /* 164791 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58199 | /* 164795 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58200 | /* 164799 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58201 | /* 164801 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58202 | /* 164808 */ // (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) |
| 58203 | /* 164808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4mr), |
| 58204 | /* 164811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58205 | /* 164813 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58206 | /* 164815 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58207 | /* 164819 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58208 | /* 164821 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58209 | /* 164826 */ GIR_RootConstrainSelectedInstOperands, |
| 58210 | /* 164827 */ // GIR_Coverage, 1474, |
| 58211 | /* 164827 */ GIR_EraseRootFromParent_Done, |
| 58212 | /* 164828 */ // Label 3634: @164828 |
| 58213 | /* 164828 */ GIM_Try, /*On fail goto*//*Label 3635*/ GIMT_Encode4(164896), // Rule ID 9145 // |
| 58214 | /* 164833 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58215 | /* 164836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58216 | /* 164840 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58217 | /* 164844 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58218 | /* 164848 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58219 | /* 164852 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58220 | /* 164855 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58221 | /* 164859 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58222 | /* 164863 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58223 | /* 164867 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58224 | /* 164869 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58225 | /* 164876 */ // (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) |
| 58226 | /* 164876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZ128m), |
| 58227 | /* 164879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58228 | /* 164881 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58229 | /* 164883 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58230 | /* 164885 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58231 | /* 164889 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58232 | /* 164894 */ GIR_RootConstrainSelectedInstOperands, |
| 58233 | /* 164895 */ // GIR_Coverage, 9145, |
| 58234 | /* 164895 */ GIR_EraseRootFromParent_Done, |
| 58235 | /* 164896 */ // Label 3635: @164896 |
| 58236 | /* 164896 */ GIM_Try, /*On fail goto*//*Label 3636*/ GIMT_Encode4(164964), // Rule ID 1188 // |
| 58237 | /* 164901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58238 | /* 164904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58239 | /* 164908 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58240 | /* 164912 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58241 | /* 164916 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58242 | /* 164920 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58243 | /* 164924 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58244 | /* 164927 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58245 | /* 164931 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58246 | /* 164935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58247 | /* 164937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58248 | /* 164944 */ // (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) |
| 58249 | /* 164944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDm), |
| 58250 | /* 164947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58251 | /* 164949 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58252 | /* 164951 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58253 | /* 164953 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58254 | /* 164957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58255 | /* 164962 */ GIR_RootConstrainSelectedInstOperands, |
| 58256 | /* 164963 */ // GIR_Coverage, 1188, |
| 58257 | /* 164963 */ GIR_EraseRootFromParent_Done, |
| 58258 | /* 164964 */ // Label 3636: @164964 |
| 58259 | /* 164964 */ GIM_Try, /*On fail goto*//*Label 3637*/ GIMT_Encode4(165032), // Rule ID 1472 // |
| 58260 | /* 164969 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58261 | /* 164972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58262 | /* 164976 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58263 | /* 164980 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58264 | /* 164984 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58265 | /* 164988 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58266 | /* 164992 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58267 | /* 164995 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58268 | /* 164999 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58269 | /* 165003 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58270 | /* 165005 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58271 | /* 165012 */ // (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) |
| 58272 | /* 165012 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4rm), |
| 58273 | /* 165015 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58274 | /* 165017 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58275 | /* 165019 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 58276 | /* 165021 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58277 | /* 165025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58278 | /* 165030 */ GIR_RootConstrainSelectedInstOperands, |
| 58279 | /* 165031 */ // GIR_Coverage, 1472, |
| 58280 | /* 165031 */ GIR_EraseRootFromParent_Done, |
| 58281 | /* 165032 */ // Label 3637: @165032 |
| 58282 | /* 165032 */ GIM_Try, /*On fail goto*//*Label 3638*/ GIMT_Encode4(165100), // Rule ID 8518 // |
| 58283 | /* 165037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58284 | /* 165040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58285 | /* 165044 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58286 | /* 165048 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58287 | /* 165052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58288 | /* 165056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58289 | /* 165060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58290 | /* 165063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58291 | /* 165067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58292 | /* 165071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58293 | /* 165073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58294 | /* 165080 */ // (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) |
| 58295 | /* 165080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ128m), |
| 58296 | /* 165083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58297 | /* 165085 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58298 | /* 165087 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58299 | /* 165089 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58300 | /* 165093 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58301 | /* 165098 */ GIR_RootConstrainSelectedInstOperands, |
| 58302 | /* 165099 */ // GIR_Coverage, 8518, |
| 58303 | /* 165099 */ GIR_EraseRootFromParent_Done, |
| 58304 | /* 165100 */ // Label 3638: @165100 |
| 58305 | /* 165100 */ GIM_Try, /*On fail goto*//*Label 3639*/ GIMT_Encode4(165137), // Rule ID 1186 // |
| 58306 | /* 165105 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58307 | /* 165108 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58308 | /* 165112 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58309 | /* 165116 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58310 | /* 165120 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58311 | /* 165124 */ // (fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src3) => (VFMADD213PDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 58312 | /* 165124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDr), |
| 58313 | /* 165127 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58314 | /* 165129 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58315 | /* 165131 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58316 | /* 165133 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58317 | /* 165135 */ GIR_RootConstrainSelectedInstOperands, |
| 58318 | /* 165136 */ // GIR_Coverage, 1186, |
| 58319 | /* 165136 */ GIR_EraseRootFromParent_Done, |
| 58320 | /* 165137 */ // Label 3639: @165137 |
| 58321 | /* 165137 */ GIM_Try, /*On fail goto*//*Label 3640*/ GIMT_Encode4(165172), // Rule ID 1470 // |
| 58322 | /* 165142 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58323 | /* 165145 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58324 | /* 165149 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58325 | /* 165153 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58326 | /* 165157 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58327 | /* 165161 */ // (fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) => (VFMADDPD4rr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 58328 | /* 165161 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4rr), |
| 58329 | /* 165166 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 58330 | /* 165170 */ GIR_RootConstrainSelectedInstOperands, |
| 58331 | /* 165171 */ // GIR_Coverage, 1470, |
| 58332 | /* 165171 */ GIR_Done, |
| 58333 | /* 165172 */ // Label 3640: @165172 |
| 58334 | /* 165172 */ GIM_Try, /*On fail goto*//*Label 3641*/ GIMT_Encode4(165209), // Rule ID 8514 // |
| 58335 | /* 165177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58336 | /* 165180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58337 | /* 165184 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58338 | /* 165188 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58339 | /* 165192 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58340 | /* 165196 */ // (fma:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src3) => (VFMADD213PDZ128r:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src3) |
| 58341 | /* 165196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ128r), |
| 58342 | /* 165199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58343 | /* 165201 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58344 | /* 165203 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58345 | /* 165205 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58346 | /* 165207 */ GIR_RootConstrainSelectedInstOperands, |
| 58347 | /* 165208 */ // GIR_Coverage, 8514, |
| 58348 | /* 165208 */ GIR_EraseRootFromParent_Done, |
| 58349 | /* 165209 */ // Label 3641: @165209 |
| 58350 | /* 165209 */ GIM_Reject, |
| 58351 | /* 165210 */ // Label 3629: @165210 |
| 58352 | /* 165210 */ GIM_Reject, |
| 58353 | /* 165211 */ // Label 3589: @165211 |
| 58354 | /* 165211 */ GIM_Try, /*On fail goto*//*Label 3642*/ GIMT_Encode4(165947), |
| 58355 | /* 165216 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 58356 | /* 165219 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 58357 | /* 165222 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 58358 | /* 165225 */ GIM_Try, /*On fail goto*//*Label 3643*/ GIMT_Encode4(165293), // Rule ID 1144 // |
| 58359 | /* 165230 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58360 | /* 165233 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58361 | /* 165237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58362 | /* 165241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58363 | /* 165245 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58364 | /* 165248 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58365 | /* 165252 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58366 | /* 165256 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58367 | /* 165260 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58368 | /* 165264 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58369 | /* 165266 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58370 | /* 165273 */ // (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) |
| 58371 | /* 165273 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSm), |
| 58372 | /* 165276 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58373 | /* 165278 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58374 | /* 165280 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58375 | /* 165282 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58376 | /* 165286 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58377 | /* 165291 */ GIR_RootConstrainSelectedInstOperands, |
| 58378 | /* 165292 */ // GIR_Coverage, 1144, |
| 58379 | /* 165292 */ GIR_EraseRootFromParent_Done, |
| 58380 | /* 165293 */ // Label 3643: @165293 |
| 58381 | /* 165293 */ GIM_Try, /*On fail goto*//*Label 3644*/ GIMT_Encode4(165361), // Rule ID 9653 // |
| 58382 | /* 165298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58383 | /* 165301 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58384 | /* 165305 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58385 | /* 165309 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58386 | /* 165313 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58387 | /* 165316 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58388 | /* 165320 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58389 | /* 165324 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58390 | /* 165328 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58391 | /* 165332 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58392 | /* 165334 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58393 | /* 165341 */ // (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) |
| 58394 | /* 165341 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZ128m), |
| 58395 | /* 165344 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58396 | /* 165346 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58397 | /* 165348 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58398 | /* 165350 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58399 | /* 165354 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58400 | /* 165359 */ GIR_RootConstrainSelectedInstOperands, |
| 58401 | /* 165360 */ // GIR_Coverage, 9653, |
| 58402 | /* 165360 */ GIR_EraseRootFromParent_Done, |
| 58403 | /* 165361 */ // Label 3644: @165361 |
| 58404 | /* 165361 */ GIM_Try, /*On fail goto*//*Label 3645*/ GIMT_Encode4(165429), // Rule ID 23371 // |
| 58405 | /* 165366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58406 | /* 165369 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58407 | /* 165373 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58408 | /* 165377 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58409 | /* 165381 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58410 | /* 165384 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58411 | /* 165388 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58412 | /* 165392 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58413 | /* 165396 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58414 | /* 165400 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58415 | /* 165402 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58416 | /* 165409 */ // (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) |
| 58417 | /* 165409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4mr), |
| 58418 | /* 165412 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58419 | /* 165414 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58420 | /* 165416 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58421 | /* 165420 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58422 | /* 165422 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58423 | /* 165427 */ GIR_RootConstrainSelectedInstOperands, |
| 58424 | /* 165428 */ // GIR_Coverage, 23371, |
| 58425 | /* 165428 */ GIR_EraseRootFromParent_Done, |
| 58426 | /* 165429 */ // Label 3645: @165429 |
| 58427 | /* 165429 */ GIM_Try, /*On fail goto*//*Label 3646*/ GIMT_Encode4(165497), // Rule ID 1142 // |
| 58428 | /* 165434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58429 | /* 165437 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58430 | /* 165441 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58431 | /* 165445 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58432 | /* 165449 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58433 | /* 165453 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58434 | /* 165456 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58435 | /* 165460 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58436 | /* 165464 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58437 | /* 165468 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58438 | /* 165470 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58439 | /* 165477 */ // (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) |
| 58440 | /* 165477 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSm), |
| 58441 | /* 165480 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58442 | /* 165482 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58443 | /* 165484 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58444 | /* 165486 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58445 | /* 165490 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58446 | /* 165495 */ GIR_RootConstrainSelectedInstOperands, |
| 58447 | /* 165496 */ // GIR_Coverage, 1142, |
| 58448 | /* 165496 */ GIR_EraseRootFromParent_Done, |
| 58449 | /* 165497 */ // Label 3646: @165497 |
| 58450 | /* 165497 */ GIM_Try, /*On fail goto*//*Label 3647*/ GIMT_Encode4(165565), // Rule ID 1390 // |
| 58451 | /* 165502 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58452 | /* 165505 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58453 | /* 165509 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58454 | /* 165513 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58455 | /* 165517 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58456 | /* 165521 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58457 | /* 165524 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58458 | /* 165528 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58459 | /* 165532 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58460 | /* 165536 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58461 | /* 165538 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58462 | /* 165545 */ // (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) |
| 58463 | /* 165545 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4mr), |
| 58464 | /* 165548 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58465 | /* 165550 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58466 | /* 165552 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58467 | /* 165556 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58468 | /* 165558 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58469 | /* 165563 */ GIR_RootConstrainSelectedInstOperands, |
| 58470 | /* 165564 */ // GIR_Coverage, 1390, |
| 58471 | /* 165564 */ GIR_EraseRootFromParent_Done, |
| 58472 | /* 165565 */ // Label 3647: @165565 |
| 58473 | /* 165565 */ GIM_Try, /*On fail goto*//*Label 3648*/ GIMT_Encode4(165633), // Rule ID 9113 // |
| 58474 | /* 165570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58475 | /* 165573 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58476 | /* 165577 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58477 | /* 165581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58478 | /* 165585 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58479 | /* 165589 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58480 | /* 165592 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58481 | /* 165596 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58482 | /* 165600 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58483 | /* 165604 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58484 | /* 165606 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58485 | /* 165613 */ // (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) |
| 58486 | /* 165613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZ128m), |
| 58487 | /* 165616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58488 | /* 165618 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58489 | /* 165620 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58490 | /* 165622 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58491 | /* 165626 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58492 | /* 165631 */ GIR_RootConstrainSelectedInstOperands, |
| 58493 | /* 165632 */ // GIR_Coverage, 9113, |
| 58494 | /* 165632 */ GIR_EraseRootFromParent_Done, |
| 58495 | /* 165633 */ // Label 3648: @165633 |
| 58496 | /* 165633 */ GIM_Try, /*On fail goto*//*Label 3649*/ GIMT_Encode4(165701), // Rule ID 1140 // |
| 58497 | /* 165638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58498 | /* 165641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58499 | /* 165645 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58500 | /* 165649 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58501 | /* 165653 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58502 | /* 165657 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58503 | /* 165661 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58504 | /* 165664 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58505 | /* 165668 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58506 | /* 165672 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58507 | /* 165674 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58508 | /* 165681 */ // (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) |
| 58509 | /* 165681 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSm), |
| 58510 | /* 165684 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58511 | /* 165686 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58512 | /* 165688 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58513 | /* 165690 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58514 | /* 165694 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58515 | /* 165699 */ GIR_RootConstrainSelectedInstOperands, |
| 58516 | /* 165700 */ // GIR_Coverage, 1140, |
| 58517 | /* 165700 */ GIR_EraseRootFromParent_Done, |
| 58518 | /* 165701 */ // Label 3649: @165701 |
| 58519 | /* 165701 */ GIM_Try, /*On fail goto*//*Label 3650*/ GIMT_Encode4(165769), // Rule ID 1388 // |
| 58520 | /* 165706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58521 | /* 165709 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58522 | /* 165713 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58523 | /* 165717 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58524 | /* 165721 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58525 | /* 165725 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58526 | /* 165729 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58527 | /* 165732 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58528 | /* 165736 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58529 | /* 165740 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58530 | /* 165742 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58531 | /* 165749 */ // (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) |
| 58532 | /* 165749 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4rm), |
| 58533 | /* 165752 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58534 | /* 165754 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58535 | /* 165756 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 58536 | /* 165758 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58537 | /* 165762 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58538 | /* 165767 */ GIR_RootConstrainSelectedInstOperands, |
| 58539 | /* 165768 */ // GIR_Coverage, 1388, |
| 58540 | /* 165768 */ GIR_EraseRootFromParent_Done, |
| 58541 | /* 165769 */ // Label 3650: @165769 |
| 58542 | /* 165769 */ GIM_Try, /*On fail goto*//*Label 3651*/ GIMT_Encode4(165837), // Rule ID 8479 // |
| 58543 | /* 165774 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58544 | /* 165777 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58545 | /* 165781 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58546 | /* 165785 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58547 | /* 165789 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58548 | /* 165793 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58549 | /* 165797 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58550 | /* 165800 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58551 | /* 165804 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58552 | /* 165808 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58553 | /* 165810 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58554 | /* 165817 */ // (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) |
| 58555 | /* 165817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ128m), |
| 58556 | /* 165820 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58557 | /* 165822 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58558 | /* 165824 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58559 | /* 165826 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58560 | /* 165830 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58561 | /* 165835 */ GIR_RootConstrainSelectedInstOperands, |
| 58562 | /* 165836 */ // GIR_Coverage, 8479, |
| 58563 | /* 165836 */ GIR_EraseRootFromParent_Done, |
| 58564 | /* 165837 */ // Label 3651: @165837 |
| 58565 | /* 165837 */ GIM_Try, /*On fail goto*//*Label 3652*/ GIMT_Encode4(165874), // Rule ID 1138 // |
| 58566 | /* 165842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58567 | /* 165845 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58568 | /* 165849 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58569 | /* 165853 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58570 | /* 165857 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58571 | /* 165861 */ // (fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src3) => (VFMADD213PSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 58572 | /* 165861 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSr), |
| 58573 | /* 165864 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58574 | /* 165866 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58575 | /* 165868 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58576 | /* 165870 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58577 | /* 165872 */ GIR_RootConstrainSelectedInstOperands, |
| 58578 | /* 165873 */ // GIR_Coverage, 1138, |
| 58579 | /* 165873 */ GIR_EraseRootFromParent_Done, |
| 58580 | /* 165874 */ // Label 3652: @165874 |
| 58581 | /* 165874 */ GIM_Try, /*On fail goto*//*Label 3653*/ GIMT_Encode4(165909), // Rule ID 1386 // |
| 58582 | /* 165879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58583 | /* 165882 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58584 | /* 165886 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58585 | /* 165890 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58586 | /* 165894 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 58587 | /* 165898 */ // (fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) => (VFMADDPS4rr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 58588 | /* 165898 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4rr), |
| 58589 | /* 165903 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 58590 | /* 165907 */ GIR_RootConstrainSelectedInstOperands, |
| 58591 | /* 165908 */ // GIR_Coverage, 1386, |
| 58592 | /* 165908 */ GIR_Done, |
| 58593 | /* 165909 */ // Label 3653: @165909 |
| 58594 | /* 165909 */ GIM_Try, /*On fail goto*//*Label 3654*/ GIMT_Encode4(165946), // Rule ID 8475 // |
| 58595 | /* 165914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58596 | /* 165917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58597 | /* 165921 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58598 | /* 165925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58599 | /* 165929 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58600 | /* 165933 */ // (fma:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src3) => (VFMADD213PSZ128r:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src3) |
| 58601 | /* 165933 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ128r), |
| 58602 | /* 165936 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58603 | /* 165938 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58604 | /* 165940 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58605 | /* 165942 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58606 | /* 165944 */ GIR_RootConstrainSelectedInstOperands, |
| 58607 | /* 165945 */ // GIR_Coverage, 8475, |
| 58608 | /* 165945 */ GIR_EraseRootFromParent_Done, |
| 58609 | /* 165946 */ // Label 3654: @165946 |
| 58610 | /* 165946 */ GIM_Reject, |
| 58611 | /* 165947 */ // Label 3642: @165947 |
| 58612 | /* 165947 */ GIM_Reject, |
| 58613 | /* 165948 */ // Label 3590: @165948 |
| 58614 | /* 165948 */ GIM_Try, /*On fail goto*//*Label 3655*/ GIMT_Encode4(166684), |
| 58615 | /* 165953 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 58616 | /* 165956 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 58617 | /* 165959 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 58618 | /* 165962 */ GIM_Try, /*On fail goto*//*Label 3656*/ GIMT_Encode4(166030), // Rule ID 1200 // |
| 58619 | /* 165967 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58620 | /* 165970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58621 | /* 165974 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58622 | /* 165978 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58623 | /* 165982 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58624 | /* 165985 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58625 | /* 165989 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58626 | /* 165993 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58627 | /* 165997 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58628 | /* 166001 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58629 | /* 166003 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58630 | /* 166010 */ // (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) |
| 58631 | /* 166010 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDYm), |
| 58632 | /* 166013 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58633 | /* 166015 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58634 | /* 166017 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58635 | /* 166019 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58636 | /* 166023 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58637 | /* 166028 */ GIR_RootConstrainSelectedInstOperands, |
| 58638 | /* 166029 */ // GIR_Coverage, 1200, |
| 58639 | /* 166029 */ GIR_EraseRootFromParent_Done, |
| 58640 | /* 166030 */ // Label 3656: @166030 |
| 58641 | /* 166030 */ GIM_Try, /*On fail goto*//*Label 3657*/ GIMT_Encode4(166098), // Rule ID 9675 // |
| 58642 | /* 166035 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58643 | /* 166038 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58644 | /* 166042 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58645 | /* 166046 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58646 | /* 166050 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58647 | /* 166053 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58648 | /* 166057 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58649 | /* 166061 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58650 | /* 166065 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58651 | /* 166069 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58652 | /* 166071 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58653 | /* 166078 */ // (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) |
| 58654 | /* 166078 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZ256m), |
| 58655 | /* 166081 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58656 | /* 166083 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58657 | /* 166085 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58658 | /* 166087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58659 | /* 166091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58660 | /* 166096 */ GIR_RootConstrainSelectedInstOperands, |
| 58661 | /* 166097 */ // GIR_Coverage, 9675, |
| 58662 | /* 166097 */ GIR_EraseRootFromParent_Done, |
| 58663 | /* 166098 */ // Label 3657: @166098 |
| 58664 | /* 166098 */ GIM_Try, /*On fail goto*//*Label 3658*/ GIMT_Encode4(166166), // Rule ID 23401 // |
| 58665 | /* 166103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58666 | /* 166106 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58667 | /* 166110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58668 | /* 166114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58669 | /* 166118 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58670 | /* 166121 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58671 | /* 166125 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58672 | /* 166129 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58673 | /* 166133 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58674 | /* 166137 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58675 | /* 166139 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58676 | /* 166146 */ // (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) |
| 58677 | /* 166146 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Ymr), |
| 58678 | /* 166149 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58679 | /* 166151 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58680 | /* 166153 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58681 | /* 166157 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58682 | /* 166159 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58683 | /* 166164 */ GIR_RootConstrainSelectedInstOperands, |
| 58684 | /* 166165 */ // GIR_Coverage, 23401, |
| 58685 | /* 166165 */ GIR_EraseRootFromParent_Done, |
| 58686 | /* 166166 */ // Label 3658: @166166 |
| 58687 | /* 166166 */ GIM_Try, /*On fail goto*//*Label 3659*/ GIMT_Encode4(166234), // Rule ID 1198 // |
| 58688 | /* 166171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58689 | /* 166174 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58690 | /* 166178 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58691 | /* 166182 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58692 | /* 166186 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58693 | /* 166190 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58694 | /* 166193 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58695 | /* 166197 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58696 | /* 166201 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58697 | /* 166205 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58698 | /* 166207 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58699 | /* 166214 */ // (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) |
| 58700 | /* 166214 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDYm), |
| 58701 | /* 166217 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58702 | /* 166219 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58703 | /* 166221 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58704 | /* 166223 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58705 | /* 166227 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58706 | /* 166232 */ GIR_RootConstrainSelectedInstOperands, |
| 58707 | /* 166233 */ // GIR_Coverage, 1198, |
| 58708 | /* 166233 */ GIR_EraseRootFromParent_Done, |
| 58709 | /* 166234 */ // Label 3659: @166234 |
| 58710 | /* 166234 */ GIM_Try, /*On fail goto*//*Label 3660*/ GIMT_Encode4(166302), // Rule ID 1480 // |
| 58711 | /* 166239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58712 | /* 166242 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58713 | /* 166246 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58714 | /* 166250 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58715 | /* 166254 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58716 | /* 166258 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58717 | /* 166261 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58718 | /* 166265 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58719 | /* 166269 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58720 | /* 166273 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58721 | /* 166275 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58722 | /* 166282 */ // (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) |
| 58723 | /* 166282 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Ymr), |
| 58724 | /* 166285 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58725 | /* 166287 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58726 | /* 166289 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 58727 | /* 166293 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58728 | /* 166295 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58729 | /* 166300 */ GIR_RootConstrainSelectedInstOperands, |
| 58730 | /* 166301 */ // GIR_Coverage, 1480, |
| 58731 | /* 166301 */ GIR_EraseRootFromParent_Done, |
| 58732 | /* 166302 */ // Label 3660: @166302 |
| 58733 | /* 166302 */ GIM_Try, /*On fail goto*//*Label 3661*/ GIMT_Encode4(166370), // Rule ID 9135 // |
| 58734 | /* 166307 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58735 | /* 166310 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58736 | /* 166314 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58737 | /* 166318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58738 | /* 166322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58739 | /* 166326 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58740 | /* 166329 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58741 | /* 166333 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58742 | /* 166337 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58743 | /* 166341 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58744 | /* 166343 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58745 | /* 166350 */ // (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) |
| 58746 | /* 166350 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZ256m), |
| 58747 | /* 166353 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58748 | /* 166355 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58749 | /* 166357 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58750 | /* 166359 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58751 | /* 166363 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58752 | /* 166368 */ GIR_RootConstrainSelectedInstOperands, |
| 58753 | /* 166369 */ // GIR_Coverage, 9135, |
| 58754 | /* 166369 */ GIR_EraseRootFromParent_Done, |
| 58755 | /* 166370 */ // Label 3661: @166370 |
| 58756 | /* 166370 */ GIM_Try, /*On fail goto*//*Label 3662*/ GIMT_Encode4(166438), // Rule ID 1196 // |
| 58757 | /* 166375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58758 | /* 166378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58759 | /* 166382 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58760 | /* 166386 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58761 | /* 166390 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58762 | /* 166394 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58763 | /* 166398 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58764 | /* 166401 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58765 | /* 166405 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58766 | /* 166409 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58767 | /* 166411 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58768 | /* 166418 */ // (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) |
| 58769 | /* 166418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDYm), |
| 58770 | /* 166421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58771 | /* 166423 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58772 | /* 166425 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58773 | /* 166427 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58774 | /* 166431 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58775 | /* 166436 */ GIR_RootConstrainSelectedInstOperands, |
| 58776 | /* 166437 */ // GIR_Coverage, 1196, |
| 58777 | /* 166437 */ GIR_EraseRootFromParent_Done, |
| 58778 | /* 166438 */ // Label 3662: @166438 |
| 58779 | /* 166438 */ GIM_Try, /*On fail goto*//*Label 3663*/ GIMT_Encode4(166506), // Rule ID 1478 // |
| 58780 | /* 166443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58781 | /* 166446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58782 | /* 166450 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58783 | /* 166454 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58784 | /* 166458 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58785 | /* 166462 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58786 | /* 166466 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58787 | /* 166469 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58788 | /* 166473 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58789 | /* 166477 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58790 | /* 166479 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58791 | /* 166486 */ // (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) |
| 58792 | /* 166486 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Yrm), |
| 58793 | /* 166489 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58794 | /* 166491 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 58795 | /* 166493 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 58796 | /* 166495 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58797 | /* 166499 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58798 | /* 166504 */ GIR_RootConstrainSelectedInstOperands, |
| 58799 | /* 166505 */ // GIR_Coverage, 1478, |
| 58800 | /* 166505 */ GIR_EraseRootFromParent_Done, |
| 58801 | /* 166506 */ // Label 3663: @166506 |
| 58802 | /* 166506 */ GIM_Try, /*On fail goto*//*Label 3664*/ GIMT_Encode4(166574), // Rule ID 8506 // |
| 58803 | /* 166511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58804 | /* 166514 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58805 | /* 166518 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58806 | /* 166522 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58807 | /* 166526 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58808 | /* 166530 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58809 | /* 166534 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58810 | /* 166537 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58811 | /* 166541 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58812 | /* 166545 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58813 | /* 166547 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58814 | /* 166554 */ // (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) |
| 58815 | /* 166554 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ256m), |
| 58816 | /* 166557 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58817 | /* 166559 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58818 | /* 166561 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58819 | /* 166563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58820 | /* 166567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58821 | /* 166572 */ GIR_RootConstrainSelectedInstOperands, |
| 58822 | /* 166573 */ // GIR_Coverage, 8506, |
| 58823 | /* 166573 */ GIR_EraseRootFromParent_Done, |
| 58824 | /* 166574 */ // Label 3664: @166574 |
| 58825 | /* 166574 */ GIM_Try, /*On fail goto*//*Label 3665*/ GIMT_Encode4(166611), // Rule ID 1194 // |
| 58826 | /* 166579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58827 | /* 166582 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58828 | /* 166586 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58829 | /* 166590 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58830 | /* 166594 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58831 | /* 166598 */ // (fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src3) => (VFMADD213PDYr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 58832 | /* 166598 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDYr), |
| 58833 | /* 166601 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58834 | /* 166603 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58835 | /* 166605 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58836 | /* 166607 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58837 | /* 166609 */ GIR_RootConstrainSelectedInstOperands, |
| 58838 | /* 166610 */ // GIR_Coverage, 1194, |
| 58839 | /* 166610 */ GIR_EraseRootFromParent_Done, |
| 58840 | /* 166611 */ // Label 3665: @166611 |
| 58841 | /* 166611 */ GIM_Try, /*On fail goto*//*Label 3666*/ GIMT_Encode4(166646), // Rule ID 1476 // |
| 58842 | /* 166616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 58843 | /* 166619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58844 | /* 166623 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58845 | /* 166627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58846 | /* 166631 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58847 | /* 166635 */ // (fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) => (VFMADDPD4Yrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 58848 | /* 166635 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Yrr), |
| 58849 | /* 166640 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 58850 | /* 166644 */ GIR_RootConstrainSelectedInstOperands, |
| 58851 | /* 166645 */ // GIR_Coverage, 1476, |
| 58852 | /* 166645 */ GIR_Done, |
| 58853 | /* 166646 */ // Label 3666: @166646 |
| 58854 | /* 166646 */ GIM_Try, /*On fail goto*//*Label 3667*/ GIMT_Encode4(166683), // Rule ID 8502 // |
| 58855 | /* 166651 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58856 | /* 166654 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58857 | /* 166658 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58858 | /* 166662 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58859 | /* 166666 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58860 | /* 166670 */ // (fma:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src3) => (VFMADD213PDZ256r:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src3) |
| 58861 | /* 166670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ256r), |
| 58862 | /* 166673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58863 | /* 166675 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58864 | /* 166677 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58865 | /* 166679 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58866 | /* 166681 */ GIR_RootConstrainSelectedInstOperands, |
| 58867 | /* 166682 */ // GIR_Coverage, 8502, |
| 58868 | /* 166682 */ GIR_EraseRootFromParent_Done, |
| 58869 | /* 166683 */ // Label 3667: @166683 |
| 58870 | /* 166683 */ GIM_Reject, |
| 58871 | /* 166684 */ // Label 3655: @166684 |
| 58872 | /* 166684 */ GIM_Reject, |
| 58873 | /* 166685 */ // Label 3591: @166685 |
| 58874 | /* 166685 */ GIM_Try, /*On fail goto*//*Label 3668*/ GIMT_Encode4(166929), |
| 58875 | /* 166690 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 58876 | /* 166693 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 58877 | /* 166696 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 58878 | /* 166699 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58879 | /* 166703 */ GIM_Try, /*On fail goto*//*Label 3669*/ GIMT_Encode4(166767), // Rule ID 9621 // |
| 58880 | /* 166708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 58881 | /* 166711 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58882 | /* 166715 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58883 | /* 166719 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58884 | /* 166722 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58885 | /* 166726 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58886 | /* 166730 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58887 | /* 166734 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58888 | /* 166738 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58889 | /* 166740 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58890 | /* 166747 */ // (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) |
| 58891 | /* 166747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZ128m), |
| 58892 | /* 166750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58893 | /* 166752 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58894 | /* 166754 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58895 | /* 166756 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58896 | /* 166760 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58897 | /* 166765 */ GIR_RootConstrainSelectedInstOperands, |
| 58898 | /* 166766 */ // GIR_Coverage, 9621, |
| 58899 | /* 166766 */ GIR_EraseRootFromParent_Done, |
| 58900 | /* 166767 */ // Label 3669: @166767 |
| 58901 | /* 166767 */ GIM_Try, /*On fail goto*//*Label 3670*/ GIMT_Encode4(166831), // Rule ID 9081 // |
| 58902 | /* 166772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 58903 | /* 166775 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58904 | /* 166779 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 58905 | /* 166783 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58906 | /* 166787 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58907 | /* 166790 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58908 | /* 166794 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58909 | /* 166798 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58910 | /* 166802 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58911 | /* 166804 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58912 | /* 166811 */ // (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) |
| 58913 | /* 166811 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZ128m), |
| 58914 | /* 166814 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58915 | /* 166816 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 58916 | /* 166818 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58917 | /* 166820 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58918 | /* 166824 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58919 | /* 166829 */ GIR_RootConstrainSelectedInstOperands, |
| 58920 | /* 166830 */ // GIR_Coverage, 9081, |
| 58921 | /* 166830 */ GIR_EraseRootFromParent_Done, |
| 58922 | /* 166831 */ // Label 3670: @166831 |
| 58923 | /* 166831 */ GIM_Try, /*On fail goto*//*Label 3671*/ GIMT_Encode4(166895), // Rule ID 8440 // |
| 58924 | /* 166836 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 58925 | /* 166839 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58926 | /* 166843 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58927 | /* 166847 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 58928 | /* 166851 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58929 | /* 166855 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58930 | /* 166858 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58931 | /* 166862 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58932 | /* 166866 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58933 | /* 166868 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58934 | /* 166875 */ // (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) |
| 58935 | /* 166875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ128m), |
| 58936 | /* 166878 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58937 | /* 166880 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58938 | /* 166882 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58939 | /* 166884 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58940 | /* 166888 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58941 | /* 166893 */ GIR_RootConstrainSelectedInstOperands, |
| 58942 | /* 166894 */ // GIR_Coverage, 8440, |
| 58943 | /* 166894 */ GIR_EraseRootFromParent_Done, |
| 58944 | /* 166895 */ // Label 3671: @166895 |
| 58945 | /* 166895 */ GIM_Try, /*On fail goto*//*Label 3672*/ GIMT_Encode4(166928), // Rule ID 8436 // |
| 58946 | /* 166900 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 58947 | /* 166903 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58948 | /* 166907 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58949 | /* 166911 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 58950 | /* 166915 */ // (fma:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src3) => (VFMADD213PHZ128r:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src3) |
| 58951 | /* 166915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ128r), |
| 58952 | /* 166918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58953 | /* 166920 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58954 | /* 166922 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 58955 | /* 166924 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 58956 | /* 166926 */ GIR_RootConstrainSelectedInstOperands, |
| 58957 | /* 166927 */ // GIR_Coverage, 8436, |
| 58958 | /* 166927 */ GIR_EraseRootFromParent_Done, |
| 58959 | /* 166928 */ // Label 3672: @166928 |
| 58960 | /* 166928 */ GIM_Reject, |
| 58961 | /* 166929 */ // Label 3668: @166929 |
| 58962 | /* 166929 */ GIM_Reject, |
| 58963 | /* 166930 */ // Label 3592: @166930 |
| 58964 | /* 166930 */ GIM_Try, /*On fail goto*//*Label 3673*/ GIMT_Encode4(167666), |
| 58965 | /* 166935 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 58966 | /* 166938 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 58967 | /* 166941 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 58968 | /* 166944 */ GIM_Try, /*On fail goto*//*Label 3674*/ GIMT_Encode4(167012), // Rule ID 1152 // |
| 58969 | /* 166949 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 58970 | /* 166952 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58971 | /* 166956 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58972 | /* 166960 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58973 | /* 166964 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58974 | /* 166967 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58975 | /* 166971 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58976 | /* 166975 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58977 | /* 166979 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 58978 | /* 166983 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 58979 | /* 166985 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 58980 | /* 166992 */ // (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) |
| 58981 | /* 166992 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSYm), |
| 58982 | /* 166995 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 58983 | /* 166997 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 58984 | /* 166999 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 58985 | /* 167001 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 58986 | /* 167005 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 58987 | /* 167010 */ GIR_RootConstrainSelectedInstOperands, |
| 58988 | /* 167011 */ // GIR_Coverage, 1152, |
| 58989 | /* 167011 */ GIR_EraseRootFromParent_Done, |
| 58990 | /* 167012 */ // Label 3674: @167012 |
| 58991 | /* 167012 */ GIM_Try, /*On fail goto*//*Label 3675*/ GIMT_Encode4(167080), // Rule ID 9643 // |
| 58992 | /* 167017 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 58993 | /* 167020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 58994 | /* 167024 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 58995 | /* 167028 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 58996 | /* 167032 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 58997 | /* 167035 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 58998 | /* 167039 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 58999 | /* 167043 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59000 | /* 167047 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59001 | /* 167051 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59002 | /* 167053 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59003 | /* 167060 */ // (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) |
| 59004 | /* 167060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZ256m), |
| 59005 | /* 167063 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59006 | /* 167065 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59007 | /* 167067 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59008 | /* 167069 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59009 | /* 167073 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59010 | /* 167078 */ GIR_RootConstrainSelectedInstOperands, |
| 59011 | /* 167079 */ // GIR_Coverage, 9643, |
| 59012 | /* 167079 */ GIR_EraseRootFromParent_Done, |
| 59013 | /* 167080 */ // Label 3675: @167080 |
| 59014 | /* 167080 */ GIM_Try, /*On fail goto*//*Label 3676*/ GIMT_Encode4(167148), // Rule ID 23373 // |
| 59015 | /* 167085 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59016 | /* 167088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59017 | /* 167092 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59018 | /* 167096 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59019 | /* 167100 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59020 | /* 167103 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59021 | /* 167107 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59022 | /* 167111 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59023 | /* 167115 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59024 | /* 167119 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59025 | /* 167121 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59026 | /* 167128 */ // (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) |
| 59027 | /* 167128 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Ymr), |
| 59028 | /* 167131 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59029 | /* 167133 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59030 | /* 167135 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59031 | /* 167139 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59032 | /* 167141 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59033 | /* 167146 */ GIR_RootConstrainSelectedInstOperands, |
| 59034 | /* 167147 */ // GIR_Coverage, 23373, |
| 59035 | /* 167147 */ GIR_EraseRootFromParent_Done, |
| 59036 | /* 167148 */ // Label 3676: @167148 |
| 59037 | /* 167148 */ GIM_Try, /*On fail goto*//*Label 3677*/ GIMT_Encode4(167216), // Rule ID 1150 // |
| 59038 | /* 167153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59039 | /* 167156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59040 | /* 167160 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59041 | /* 167164 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59042 | /* 167168 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59043 | /* 167172 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59044 | /* 167175 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59045 | /* 167179 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59046 | /* 167183 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59047 | /* 167187 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59048 | /* 167189 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59049 | /* 167196 */ // (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) |
| 59050 | /* 167196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSYm), |
| 59051 | /* 167199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59052 | /* 167201 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59053 | /* 167203 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59054 | /* 167205 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59055 | /* 167209 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59056 | /* 167214 */ GIR_RootConstrainSelectedInstOperands, |
| 59057 | /* 167215 */ // GIR_Coverage, 1150, |
| 59058 | /* 167215 */ GIR_EraseRootFromParent_Done, |
| 59059 | /* 167216 */ // Label 3677: @167216 |
| 59060 | /* 167216 */ GIM_Try, /*On fail goto*//*Label 3678*/ GIMT_Encode4(167284), // Rule ID 1396 // |
| 59061 | /* 167221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59062 | /* 167224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59063 | /* 167228 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59064 | /* 167232 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59065 | /* 167236 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59066 | /* 167240 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59067 | /* 167243 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59068 | /* 167247 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59069 | /* 167251 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59070 | /* 167255 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59071 | /* 167257 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59072 | /* 167264 */ // (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) |
| 59073 | /* 167264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Ymr), |
| 59074 | /* 167267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59075 | /* 167269 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59076 | /* 167271 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59077 | /* 167275 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59078 | /* 167277 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59079 | /* 167282 */ GIR_RootConstrainSelectedInstOperands, |
| 59080 | /* 167283 */ // GIR_Coverage, 1396, |
| 59081 | /* 167283 */ GIR_EraseRootFromParent_Done, |
| 59082 | /* 167284 */ // Label 3678: @167284 |
| 59083 | /* 167284 */ GIM_Try, /*On fail goto*//*Label 3679*/ GIMT_Encode4(167352), // Rule ID 9103 // |
| 59084 | /* 167289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59085 | /* 167292 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59086 | /* 167296 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59087 | /* 167300 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59088 | /* 167304 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59089 | /* 167308 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59090 | /* 167311 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59091 | /* 167315 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59092 | /* 167319 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59093 | /* 167323 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59094 | /* 167325 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59095 | /* 167332 */ // (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) |
| 59096 | /* 167332 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZ256m), |
| 59097 | /* 167335 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59098 | /* 167337 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59099 | /* 167339 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59100 | /* 167341 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59101 | /* 167345 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59102 | /* 167350 */ GIR_RootConstrainSelectedInstOperands, |
| 59103 | /* 167351 */ // GIR_Coverage, 9103, |
| 59104 | /* 167351 */ GIR_EraseRootFromParent_Done, |
| 59105 | /* 167352 */ // Label 3679: @167352 |
| 59106 | /* 167352 */ GIM_Try, /*On fail goto*//*Label 3680*/ GIMT_Encode4(167420), // Rule ID 1148 // |
| 59107 | /* 167357 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59108 | /* 167360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59109 | /* 167364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59110 | /* 167368 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59111 | /* 167372 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59112 | /* 167376 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59113 | /* 167380 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59114 | /* 167383 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59115 | /* 167387 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59116 | /* 167391 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59117 | /* 167393 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59118 | /* 167400 */ // (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) |
| 59119 | /* 167400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSYm), |
| 59120 | /* 167403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59121 | /* 167405 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59122 | /* 167407 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59123 | /* 167409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59124 | /* 167413 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59125 | /* 167418 */ GIR_RootConstrainSelectedInstOperands, |
| 59126 | /* 167419 */ // GIR_Coverage, 1148, |
| 59127 | /* 167419 */ GIR_EraseRootFromParent_Done, |
| 59128 | /* 167420 */ // Label 3680: @167420 |
| 59129 | /* 167420 */ GIM_Try, /*On fail goto*//*Label 3681*/ GIMT_Encode4(167488), // Rule ID 1394 // |
| 59130 | /* 167425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59131 | /* 167428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59132 | /* 167432 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59133 | /* 167436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59134 | /* 167440 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59135 | /* 167444 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59136 | /* 167448 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59137 | /* 167451 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59138 | /* 167455 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59139 | /* 167459 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59140 | /* 167461 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59141 | /* 167468 */ // (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) |
| 59142 | /* 167468 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Yrm), |
| 59143 | /* 167471 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59144 | /* 167473 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59145 | /* 167475 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 59146 | /* 167477 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59147 | /* 167481 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59148 | /* 167486 */ GIR_RootConstrainSelectedInstOperands, |
| 59149 | /* 167487 */ // GIR_Coverage, 1394, |
| 59150 | /* 167487 */ GIR_EraseRootFromParent_Done, |
| 59151 | /* 167488 */ // Label 3681: @167488 |
| 59152 | /* 167488 */ GIM_Try, /*On fail goto*//*Label 3682*/ GIMT_Encode4(167556), // Rule ID 8467 // |
| 59153 | /* 167493 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59154 | /* 167496 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59155 | /* 167500 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59156 | /* 167504 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59157 | /* 167508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59158 | /* 167512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59159 | /* 167516 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59160 | /* 167519 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59161 | /* 167523 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59162 | /* 167527 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59163 | /* 167529 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59164 | /* 167536 */ // (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) |
| 59165 | /* 167536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ256m), |
| 59166 | /* 167539 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59167 | /* 167541 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59168 | /* 167543 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59169 | /* 167545 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59170 | /* 167549 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59171 | /* 167554 */ GIR_RootConstrainSelectedInstOperands, |
| 59172 | /* 167555 */ // GIR_Coverage, 8467, |
| 59173 | /* 167555 */ GIR_EraseRootFromParent_Done, |
| 59174 | /* 167556 */ // Label 3682: @167556 |
| 59175 | /* 167556 */ GIM_Try, /*On fail goto*//*Label 3683*/ GIMT_Encode4(167593), // Rule ID 1146 // |
| 59176 | /* 167561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 59177 | /* 167564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59178 | /* 167568 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59179 | /* 167572 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59180 | /* 167576 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59181 | /* 167580 */ // (fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src3) => (VFMADD213PSYr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 59182 | /* 167580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSYr), |
| 59183 | /* 167583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59184 | /* 167585 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59185 | /* 167587 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59186 | /* 167589 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59187 | /* 167591 */ GIR_RootConstrainSelectedInstOperands, |
| 59188 | /* 167592 */ // GIR_Coverage, 1146, |
| 59189 | /* 167592 */ GIR_EraseRootFromParent_Done, |
| 59190 | /* 167593 */ // Label 3683: @167593 |
| 59191 | /* 167593 */ GIM_Try, /*On fail goto*//*Label 3684*/ GIMT_Encode4(167628), // Rule ID 1392 // |
| 59192 | /* 167598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 59193 | /* 167601 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59194 | /* 167605 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59195 | /* 167609 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59196 | /* 167613 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 59197 | /* 167617 */ // (fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) => (VFMADDPS4Yrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 59198 | /* 167617 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Yrr), |
| 59199 | /* 167622 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 59200 | /* 167626 */ GIR_RootConstrainSelectedInstOperands, |
| 59201 | /* 167627 */ // GIR_Coverage, 1392, |
| 59202 | /* 167627 */ GIR_Done, |
| 59203 | /* 167628 */ // Label 3684: @167628 |
| 59204 | /* 167628 */ GIM_Try, /*On fail goto*//*Label 3685*/ GIMT_Encode4(167665), // Rule ID 8463 // |
| 59205 | /* 167633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 59206 | /* 167636 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59207 | /* 167640 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59208 | /* 167644 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59209 | /* 167648 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59210 | /* 167652 */ // (fma:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src3) => (VFMADD213PSZ256r:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src3) |
| 59211 | /* 167652 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ256r), |
| 59212 | /* 167655 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59213 | /* 167657 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59214 | /* 167659 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59215 | /* 167661 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59216 | /* 167663 */ GIR_RootConstrainSelectedInstOperands, |
| 59217 | /* 167664 */ // GIR_Coverage, 8463, |
| 59218 | /* 167664 */ GIR_EraseRootFromParent_Done, |
| 59219 | /* 167665 */ // Label 3685: @167665 |
| 59220 | /* 167665 */ GIM_Reject, |
| 59221 | /* 167666 */ // Label 3673: @167666 |
| 59222 | /* 167666 */ GIM_Reject, |
| 59223 | /* 167667 */ // Label 3593: @167667 |
| 59224 | /* 167667 */ GIM_Try, /*On fail goto*//*Label 3686*/ GIMT_Encode4(167911), |
| 59225 | /* 167672 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 59226 | /* 167675 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 59227 | /* 167678 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 59228 | /* 167681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59229 | /* 167685 */ GIM_Try, /*On fail goto*//*Label 3687*/ GIMT_Encode4(167749), // Rule ID 9663 // |
| 59230 | /* 167690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59231 | /* 167693 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59232 | /* 167697 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59233 | /* 167701 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59234 | /* 167704 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59235 | /* 167708 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59236 | /* 167712 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59237 | /* 167716 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59238 | /* 167720 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59239 | /* 167722 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59240 | /* 167729 */ // (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) |
| 59241 | /* 167729 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZm), |
| 59242 | /* 167732 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59243 | /* 167734 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59244 | /* 167736 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59245 | /* 167738 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59246 | /* 167742 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59247 | /* 167747 */ GIR_RootConstrainSelectedInstOperands, |
| 59248 | /* 167748 */ // GIR_Coverage, 9663, |
| 59249 | /* 167748 */ GIR_EraseRootFromParent_Done, |
| 59250 | /* 167749 */ // Label 3687: @167749 |
| 59251 | /* 167749 */ GIM_Try, /*On fail goto*//*Label 3688*/ GIMT_Encode4(167813), // Rule ID 9123 // |
| 59252 | /* 167754 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59253 | /* 167757 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59254 | /* 167761 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59255 | /* 167765 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59256 | /* 167769 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59257 | /* 167772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59258 | /* 167776 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59259 | /* 167780 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59260 | /* 167784 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59261 | /* 167786 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59262 | /* 167793 */ // (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) |
| 59263 | /* 167793 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZm), |
| 59264 | /* 167796 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59265 | /* 167798 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59266 | /* 167800 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59267 | /* 167802 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59268 | /* 167806 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59269 | /* 167811 */ GIR_RootConstrainSelectedInstOperands, |
| 59270 | /* 167812 */ // GIR_Coverage, 9123, |
| 59271 | /* 167812 */ GIR_EraseRootFromParent_Done, |
| 59272 | /* 167813 */ // Label 3688: @167813 |
| 59273 | /* 167813 */ GIM_Try, /*On fail goto*//*Label 3689*/ GIMT_Encode4(167877), // Rule ID 8491 // |
| 59274 | /* 167818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59275 | /* 167821 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59276 | /* 167825 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59277 | /* 167829 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59278 | /* 167833 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59279 | /* 167837 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59280 | /* 167840 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59281 | /* 167844 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59282 | /* 167848 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59283 | /* 167850 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59284 | /* 167857 */ // (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) |
| 59285 | /* 167857 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZm), |
| 59286 | /* 167860 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59287 | /* 167862 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59288 | /* 167864 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59289 | /* 167866 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59290 | /* 167870 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59291 | /* 167875 */ GIR_RootConstrainSelectedInstOperands, |
| 59292 | /* 167876 */ // GIR_Coverage, 8491, |
| 59293 | /* 167876 */ GIR_EraseRootFromParent_Done, |
| 59294 | /* 167877 */ // Label 3689: @167877 |
| 59295 | /* 167877 */ GIM_Try, /*On fail goto*//*Label 3690*/ GIMT_Encode4(167910), // Rule ID 8487 // |
| 59296 | /* 167882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59297 | /* 167885 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59298 | /* 167889 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59299 | /* 167893 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59300 | /* 167897 */ // (fma:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src3) => (VFMADD213PDZr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src3) |
| 59301 | /* 167897 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZr), |
| 59302 | /* 167900 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59303 | /* 167902 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59304 | /* 167904 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59305 | /* 167906 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59306 | /* 167908 */ GIR_RootConstrainSelectedInstOperands, |
| 59307 | /* 167909 */ // GIR_Coverage, 8487, |
| 59308 | /* 167909 */ GIR_EraseRootFromParent_Done, |
| 59309 | /* 167910 */ // Label 3690: @167910 |
| 59310 | /* 167910 */ GIM_Reject, |
| 59311 | /* 167911 */ // Label 3686: @167911 |
| 59312 | /* 167911 */ GIM_Reject, |
| 59313 | /* 167912 */ // Label 3594: @167912 |
| 59314 | /* 167912 */ GIM_Try, /*On fail goto*//*Label 3691*/ GIMT_Encode4(168156), |
| 59315 | /* 167917 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 59316 | /* 167920 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 59317 | /* 167923 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 59318 | /* 167926 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59319 | /* 167930 */ GIM_Try, /*On fail goto*//*Label 3692*/ GIMT_Encode4(167994), // Rule ID 9611 // |
| 59320 | /* 167935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59321 | /* 167938 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59322 | /* 167942 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59323 | /* 167946 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59324 | /* 167949 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59325 | /* 167953 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59326 | /* 167957 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59327 | /* 167961 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59328 | /* 167965 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59329 | /* 167967 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59330 | /* 167974 */ // (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) |
| 59331 | /* 167974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZ256m), |
| 59332 | /* 167977 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59333 | /* 167979 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59334 | /* 167981 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59335 | /* 167983 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59336 | /* 167987 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59337 | /* 167992 */ GIR_RootConstrainSelectedInstOperands, |
| 59338 | /* 167993 */ // GIR_Coverage, 9611, |
| 59339 | /* 167993 */ GIR_EraseRootFromParent_Done, |
| 59340 | /* 167994 */ // Label 3692: @167994 |
| 59341 | /* 167994 */ GIM_Try, /*On fail goto*//*Label 3693*/ GIMT_Encode4(168058), // Rule ID 9071 // |
| 59342 | /* 167999 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59343 | /* 168002 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59344 | /* 168006 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59345 | /* 168010 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59346 | /* 168014 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59347 | /* 168017 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59348 | /* 168021 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59349 | /* 168025 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59350 | /* 168029 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59351 | /* 168031 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59352 | /* 168038 */ // (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) |
| 59353 | /* 168038 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZ256m), |
| 59354 | /* 168041 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59355 | /* 168043 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59356 | /* 168045 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59357 | /* 168047 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59358 | /* 168051 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59359 | /* 168056 */ GIR_RootConstrainSelectedInstOperands, |
| 59360 | /* 168057 */ // GIR_Coverage, 9071, |
| 59361 | /* 168057 */ GIR_EraseRootFromParent_Done, |
| 59362 | /* 168058 */ // Label 3693: @168058 |
| 59363 | /* 168058 */ GIM_Try, /*On fail goto*//*Label 3694*/ GIMT_Encode4(168122), // Rule ID 8428 // |
| 59364 | /* 168063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59365 | /* 168066 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59366 | /* 168070 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59367 | /* 168074 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59368 | /* 168078 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59369 | /* 168082 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59370 | /* 168085 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59371 | /* 168089 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59372 | /* 168093 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59373 | /* 168095 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59374 | /* 168102 */ // (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) |
| 59375 | /* 168102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ256m), |
| 59376 | /* 168105 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59377 | /* 168107 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59378 | /* 168109 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59379 | /* 168111 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59380 | /* 168115 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59381 | /* 168120 */ GIR_RootConstrainSelectedInstOperands, |
| 59382 | /* 168121 */ // GIR_Coverage, 8428, |
| 59383 | /* 168121 */ GIR_EraseRootFromParent_Done, |
| 59384 | /* 168122 */ // Label 3694: @168122 |
| 59385 | /* 168122 */ GIM_Try, /*On fail goto*//*Label 3695*/ GIMT_Encode4(168155), // Rule ID 8424 // |
| 59386 | /* 168127 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 59387 | /* 168130 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59388 | /* 168134 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59389 | /* 168138 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 59390 | /* 168142 */ // (fma:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src3) => (VFMADD213PHZ256r:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src3) |
| 59391 | /* 168142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ256r), |
| 59392 | /* 168145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59393 | /* 168147 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59394 | /* 168149 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59395 | /* 168151 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59396 | /* 168153 */ GIR_RootConstrainSelectedInstOperands, |
| 59397 | /* 168154 */ // GIR_Coverage, 8424, |
| 59398 | /* 168154 */ GIR_EraseRootFromParent_Done, |
| 59399 | /* 168155 */ // Label 3695: @168155 |
| 59400 | /* 168155 */ GIM_Reject, |
| 59401 | /* 168156 */ // Label 3691: @168156 |
| 59402 | /* 168156 */ GIM_Reject, |
| 59403 | /* 168157 */ // Label 3595: @168157 |
| 59404 | /* 168157 */ GIM_Try, /*On fail goto*//*Label 3696*/ GIMT_Encode4(168401), |
| 59405 | /* 168162 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 59406 | /* 168165 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 59407 | /* 168168 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 59408 | /* 168171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59409 | /* 168175 */ GIM_Try, /*On fail goto*//*Label 3697*/ GIMT_Encode4(168239), // Rule ID 9631 // |
| 59410 | /* 168180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59411 | /* 168183 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59412 | /* 168187 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59413 | /* 168191 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59414 | /* 168194 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59415 | /* 168198 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59416 | /* 168202 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59417 | /* 168206 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59418 | /* 168210 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59419 | /* 168212 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59420 | /* 168219 */ // (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) |
| 59421 | /* 168219 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZm), |
| 59422 | /* 168222 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59423 | /* 168224 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59424 | /* 168226 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59425 | /* 168228 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59426 | /* 168232 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59427 | /* 168237 */ GIR_RootConstrainSelectedInstOperands, |
| 59428 | /* 168238 */ // GIR_Coverage, 9631, |
| 59429 | /* 168238 */ GIR_EraseRootFromParent_Done, |
| 59430 | /* 168239 */ // Label 3697: @168239 |
| 59431 | /* 168239 */ GIM_Try, /*On fail goto*//*Label 3698*/ GIMT_Encode4(168303), // Rule ID 9091 // |
| 59432 | /* 168244 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59433 | /* 168247 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59434 | /* 168251 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59435 | /* 168255 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59436 | /* 168259 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59437 | /* 168262 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59438 | /* 168266 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59439 | /* 168270 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59440 | /* 168274 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59441 | /* 168276 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59442 | /* 168283 */ // (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) |
| 59443 | /* 168283 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZm), |
| 59444 | /* 168286 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59445 | /* 168288 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59446 | /* 168290 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59447 | /* 168292 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59448 | /* 168296 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59449 | /* 168301 */ GIR_RootConstrainSelectedInstOperands, |
| 59450 | /* 168302 */ // GIR_Coverage, 9091, |
| 59451 | /* 168302 */ GIR_EraseRootFromParent_Done, |
| 59452 | /* 168303 */ // Label 3698: @168303 |
| 59453 | /* 168303 */ GIM_Try, /*On fail goto*//*Label 3699*/ GIMT_Encode4(168367), // Rule ID 8452 // |
| 59454 | /* 168308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59455 | /* 168311 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59456 | /* 168315 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59457 | /* 168319 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59458 | /* 168323 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59459 | /* 168327 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59460 | /* 168330 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59461 | /* 168334 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59462 | /* 168338 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59463 | /* 168340 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59464 | /* 168347 */ // (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) |
| 59465 | /* 168347 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZm), |
| 59466 | /* 168350 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59467 | /* 168352 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59468 | /* 168354 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59469 | /* 168356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59470 | /* 168360 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59471 | /* 168365 */ GIR_RootConstrainSelectedInstOperands, |
| 59472 | /* 168366 */ // GIR_Coverage, 8452, |
| 59473 | /* 168366 */ GIR_EraseRootFromParent_Done, |
| 59474 | /* 168367 */ // Label 3699: @168367 |
| 59475 | /* 168367 */ GIM_Try, /*On fail goto*//*Label 3700*/ GIMT_Encode4(168400), // Rule ID 8448 // |
| 59476 | /* 168372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59477 | /* 168375 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59478 | /* 168379 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59479 | /* 168383 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59480 | /* 168387 */ // (fma:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src3) => (VFMADD213PSZr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src3) |
| 59481 | /* 168387 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZr), |
| 59482 | /* 168390 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59483 | /* 168392 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59484 | /* 168394 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59485 | /* 168396 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59486 | /* 168398 */ GIR_RootConstrainSelectedInstOperands, |
| 59487 | /* 168399 */ // GIR_Coverage, 8448, |
| 59488 | /* 168399 */ GIR_EraseRootFromParent_Done, |
| 59489 | /* 168400 */ // Label 3700: @168400 |
| 59490 | /* 168400 */ GIM_Reject, |
| 59491 | /* 168401 */ // Label 3696: @168401 |
| 59492 | /* 168401 */ GIM_Reject, |
| 59493 | /* 168402 */ // Label 3596: @168402 |
| 59494 | /* 168402 */ GIM_Try, /*On fail goto*//*Label 3701*/ GIMT_Encode4(168646), |
| 59495 | /* 168407 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 59496 | /* 168410 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 59497 | /* 168413 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 59498 | /* 168416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59499 | /* 168420 */ GIM_Try, /*On fail goto*//*Label 3702*/ GIMT_Encode4(168484), // Rule ID 9599 // |
| 59500 | /* 168425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 59501 | /* 168428 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59502 | /* 168432 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59503 | /* 168436 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59504 | /* 168439 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59505 | /* 168443 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59506 | /* 168447 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59507 | /* 168451 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59508 | /* 168455 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59509 | /* 168457 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59510 | /* 168464 */ // (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) |
| 59511 | /* 168464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZm), |
| 59512 | /* 168467 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59513 | /* 168469 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59514 | /* 168471 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 59515 | /* 168473 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59516 | /* 168477 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59517 | /* 168482 */ GIR_RootConstrainSelectedInstOperands, |
| 59518 | /* 168483 */ // GIR_Coverage, 9599, |
| 59519 | /* 168483 */ GIR_EraseRootFromParent_Done, |
| 59520 | /* 168484 */ // Label 3702: @168484 |
| 59521 | /* 168484 */ GIM_Try, /*On fail goto*//*Label 3703*/ GIMT_Encode4(168548), // Rule ID 9059 // |
| 59522 | /* 168489 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 59523 | /* 168492 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59524 | /* 168496 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59525 | /* 168500 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59526 | /* 168504 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59527 | /* 168507 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59528 | /* 168511 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59529 | /* 168515 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59530 | /* 168519 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59531 | /* 168521 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59532 | /* 168528 */ // (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) |
| 59533 | /* 168528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZm), |
| 59534 | /* 168531 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59535 | /* 168533 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 59536 | /* 168535 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59537 | /* 168537 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59538 | /* 168541 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59539 | /* 168546 */ GIR_RootConstrainSelectedInstOperands, |
| 59540 | /* 168547 */ // GIR_Coverage, 9059, |
| 59541 | /* 168547 */ GIR_EraseRootFromParent_Done, |
| 59542 | /* 168548 */ // Label 3703: @168548 |
| 59543 | /* 168548 */ GIM_Try, /*On fail goto*//*Label 3704*/ GIMT_Encode4(168612), // Rule ID 8413 // |
| 59544 | /* 168553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 59545 | /* 168556 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59546 | /* 168560 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59547 | /* 168564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 59548 | /* 168568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59549 | /* 168572 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59550 | /* 168575 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59551 | /* 168579 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59552 | /* 168583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59553 | /* 168585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59554 | /* 168592 */ // (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) |
| 59555 | /* 168592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZm), |
| 59556 | /* 168595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59557 | /* 168597 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59558 | /* 168599 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59559 | /* 168601 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 59560 | /* 168605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59561 | /* 168610 */ GIR_RootConstrainSelectedInstOperands, |
| 59562 | /* 168611 */ // GIR_Coverage, 8413, |
| 59563 | /* 168611 */ GIR_EraseRootFromParent_Done, |
| 59564 | /* 168612 */ // Label 3704: @168612 |
| 59565 | /* 168612 */ GIM_Try, /*On fail goto*//*Label 3705*/ GIMT_Encode4(168645), // Rule ID 8409 // |
| 59566 | /* 168617 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 59567 | /* 168620 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59568 | /* 168624 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59569 | /* 168628 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 59570 | /* 168632 */ // (fma:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src3) => (VFMADD213PHZr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src3) |
| 59571 | /* 168632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZr), |
| 59572 | /* 168635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59573 | /* 168637 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59574 | /* 168639 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 59575 | /* 168641 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 59576 | /* 168643 */ GIR_RootConstrainSelectedInstOperands, |
| 59577 | /* 168644 */ // GIR_Coverage, 8409, |
| 59578 | /* 168644 */ GIR_EraseRootFromParent_Done, |
| 59579 | /* 168645 */ // Label 3705: @168645 |
| 59580 | /* 168645 */ GIM_Reject, |
| 59581 | /* 168646 */ // Label 3701: @168646 |
| 59582 | /* 168646 */ GIM_Reject, |
| 59583 | /* 168647 */ // Label 3597: @168647 |
| 59584 | /* 168647 */ GIM_Reject, |
| 59585 | /* 168648 */ // Label 46: @168648 |
| 59586 | /* 168648 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3719*/ GIMT_Encode4(172829), |
| 59587 | /* 168659 */ /*GILLT_s16*//*Label 3706*/ GIMT_Encode4(168743), |
| 59588 | /* 168663 */ /*GILLT_s32*//*Label 3707*/ GIMT_Encode4(168841), |
| 59589 | /* 168667 */ /*GILLT_s64*//*Label 3708*/ GIMT_Encode4(169806), |
| 59590 | /* 168671 */ /*GILLT_s80*//*Label 3709*/ GIMT_Encode4(170915), GIMT_Encode4(0), GIMT_Encode4(0), |
| 59591 | /* 168683 */ /*GILLT_v2s64*//*Label 3710*/ GIMT_Encode4(171481), GIMT_Encode4(0), |
| 59592 | /* 168691 */ /*GILLT_v4s32*//*Label 3711*/ GIMT_Encode4(171711), |
| 59593 | /* 168695 */ /*GILLT_v4s64*//*Label 3712*/ GIMT_Encode4(171941), GIMT_Encode4(0), |
| 59594 | /* 168703 */ /*GILLT_v8s16*//*Label 3713*/ GIMT_Encode4(172140), |
| 59595 | /* 168707 */ /*GILLT_v8s32*//*Label 3714*/ GIMT_Encode4(172238), |
| 59596 | /* 168711 */ /*GILLT_v8s64*//*Label 3715*/ GIMT_Encode4(172437), GIMT_Encode4(0), GIMT_Encode4(0), |
| 59597 | /* 168723 */ /*GILLT_v16s16*//*Label 3716*/ GIMT_Encode4(172535), |
| 59598 | /* 168727 */ /*GILLT_v16s32*//*Label 3717*/ GIMT_Encode4(172633), GIMT_Encode4(0), GIMT_Encode4(0), |
| 59599 | /* 168739 */ /*GILLT_v32s16*//*Label 3718*/ GIMT_Encode4(172731), |
| 59600 | /* 168743 */ // Label 3706: @168743 |
| 59601 | /* 168743 */ GIM_Try, /*On fail goto*//*Label 3720*/ GIMT_Encode4(168840), |
| 59602 | /* 168748 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 59603 | /* 168751 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 59604 | /* 168754 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 59605 | /* 168758 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 59606 | /* 168762 */ GIM_Try, /*On fail goto*//*Label 3721*/ GIMT_Encode4(168816), // Rule ID 6130 // |
| 59607 | /* 168767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 59608 | /* 168770 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59609 | /* 168774 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59610 | /* 168778 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59611 | /* 168781 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59612 | /* 168785 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59613 | /* 168789 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59614 | /* 168791 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59615 | /* 168798 */ // (fdiv:{ *:[f16] } FR16X:{ *:[f16] }:$src1, (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSHZrm:{ *:[f16] } FR16X:{ *:[f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 59616 | /* 168798 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSHZrm), |
| 59617 | /* 168801 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59618 | /* 168803 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59619 | /* 168805 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59620 | /* 168809 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59621 | /* 168814 */ GIR_RootConstrainSelectedInstOperands, |
| 59622 | /* 168815 */ // GIR_Coverage, 6130, |
| 59623 | /* 168815 */ GIR_EraseRootFromParent_Done, |
| 59624 | /* 168816 */ // Label 3721: @168816 |
| 59625 | /* 168816 */ GIM_Try, /*On fail goto*//*Label 3722*/ GIMT_Encode4(168839), // Rule ID 6128 // |
| 59626 | /* 168821 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 59627 | /* 168824 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 59628 | /* 168828 */ // (fdiv:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VDIVSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 59629 | /* 168828 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSHZrr), |
| 59630 | /* 168833 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 59631 | /* 168837 */ GIR_RootConstrainSelectedInstOperands, |
| 59632 | /* 168838 */ // GIR_Coverage, 6128, |
| 59633 | /* 168838 */ GIR_Done, |
| 59634 | /* 168839 */ // Label 3722: @168839 |
| 59635 | /* 168839 */ GIM_Reject, |
| 59636 | /* 168840 */ // Label 3720: @168840 |
| 59637 | /* 168840 */ GIM_Reject, |
| 59638 | /* 168841 */ // Label 3707: @168841 |
| 59639 | /* 168841 */ GIM_Try, /*On fail goto*//*Label 3723*/ GIMT_Encode4(169805), |
| 59640 | /* 168846 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 59641 | /* 168849 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 59642 | /* 168852 */ GIM_Try, /*On fail goto*//*Label 3724*/ GIMT_Encode4(168934), // Rule ID 22546 // |
| 59643 | /* 168857 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 59644 | /* 168860 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59645 | /* 168864 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59646 | /* 168868 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59647 | /* 168872 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 59648 | /* 168876 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 59649 | /* 168880 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 59650 | /* 168884 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59651 | /* 168888 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 59652 | /* 168891 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 59653 | /* 168895 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 59654 | /* 168902 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 59655 | /* 168906 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 59656 | /* 168908 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59657 | /* 168915 */ // (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) |
| 59658 | /* 168915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSSrm), |
| 59659 | /* 168918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59660 | /* 168920 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59661 | /* 168922 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59662 | /* 168926 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 59663 | /* 168932 */ GIR_RootConstrainSelectedInstOperands, |
| 59664 | /* 168933 */ // GIR_Coverage, 22546, |
| 59665 | /* 168933 */ GIR_EraseRootFromParent_Done, |
| 59666 | /* 168934 */ // Label 3724: @168934 |
| 59667 | /* 168934 */ GIM_Try, /*On fail goto*//*Label 3725*/ GIMT_Encode4(169016), // Rule ID 22547 // |
| 59668 | /* 168939 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 59669 | /* 168942 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59670 | /* 168946 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59671 | /* 168950 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59672 | /* 168954 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 59673 | /* 168958 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 59674 | /* 168962 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 59675 | /* 168966 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59676 | /* 168970 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 59677 | /* 168973 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 59678 | /* 168977 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 59679 | /* 168984 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 59680 | /* 168988 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 59681 | /* 168990 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59682 | /* 168997 */ // (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) |
| 59683 | /* 168997 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSrm), |
| 59684 | /* 169000 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59685 | /* 169002 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59686 | /* 169004 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59687 | /* 169008 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 59688 | /* 169014 */ GIR_RootConstrainSelectedInstOperands, |
| 59689 | /* 169015 */ // GIR_Coverage, 22547, |
| 59690 | /* 169015 */ GIR_EraseRootFromParent_Done, |
| 59691 | /* 169016 */ // Label 3725: @169016 |
| 59692 | /* 169016 */ GIM_Try, /*On fail goto*//*Label 3726*/ GIMT_Encode4(169098), // Rule ID 22548 // |
| 59693 | /* 169021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59694 | /* 169024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 59695 | /* 169028 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 59696 | /* 169032 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59697 | /* 169036 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 59698 | /* 169040 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 59699 | /* 169044 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 59700 | /* 169048 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59701 | /* 169052 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 59702 | /* 169055 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 59703 | /* 169059 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 59704 | /* 169066 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 59705 | /* 169070 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 59706 | /* 169072 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59707 | /* 169079 */ // (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) |
| 59708 | /* 169079 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrm), |
| 59709 | /* 169082 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59710 | /* 169084 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59711 | /* 169086 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59712 | /* 169090 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 59713 | /* 169096 */ GIR_RootConstrainSelectedInstOperands, |
| 59714 | /* 169097 */ // GIR_Coverage, 22548, |
| 59715 | /* 169097 */ GIR_EraseRootFromParent_Done, |
| 59716 | /* 169098 */ // Label 3726: @169098 |
| 59717 | /* 169098 */ GIM_Try, /*On fail goto*//*Label 3727*/ GIMT_Encode4(169163), // Rule ID 1031 // |
| 59718 | /* 169103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 59719 | /* 169106 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59720 | /* 169110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59721 | /* 169114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 59722 | /* 169118 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 59723 | /* 169125 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59724 | /* 169129 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59725 | /* 169133 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59726 | /* 169135 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59727 | /* 169142 */ // (fdiv:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (DIVR_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 59728 | /* 169142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m32), |
| 59729 | /* 169145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59730 | /* 169147 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59731 | /* 169149 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59732 | /* 169153 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 59733 | /* 169156 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59734 | /* 169161 */ GIR_RootConstrainSelectedInstOperands, |
| 59735 | /* 169162 */ // GIR_Coverage, 1031, |
| 59736 | /* 169162 */ GIR_EraseRootFromParent_Done, |
| 59737 | /* 169163 */ // Label 3727: @169163 |
| 59738 | /* 169163 */ GIM_Try, /*On fail goto*//*Label 3728*/ GIMT_Encode4(169228), // Rule ID 1033 // |
| 59739 | /* 169168 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 59740 | /* 169171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59741 | /* 169175 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59742 | /* 169179 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 59743 | /* 169183 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 59744 | /* 169190 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59745 | /* 169194 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59746 | /* 169198 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59747 | /* 169200 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59748 | /* 169207 */ // (fdiv:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (DIVR_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 59749 | /* 169207 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m32), |
| 59750 | /* 169210 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59751 | /* 169212 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59752 | /* 169214 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59753 | /* 169218 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 59754 | /* 169221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59755 | /* 169226 */ GIR_RootConstrainSelectedInstOperands, |
| 59756 | /* 169227 */ // GIR_Coverage, 1033, |
| 59757 | /* 169227 */ GIR_EraseRootFromParent_Done, |
| 59758 | /* 169228 */ // Label 3728: @169228 |
| 59759 | /* 169228 */ GIM_Try, /*On fail goto*//*Label 3729*/ GIMT_Encode4(169293), // Rule ID 1021 // |
| 59760 | /* 169233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 59761 | /* 169236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59762 | /* 169240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 59763 | /* 169244 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59764 | /* 169248 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59765 | /* 169251 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59766 | /* 169255 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59767 | /* 169259 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59768 | /* 169263 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59769 | /* 169265 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59770 | /* 169272 */ // (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) |
| 59771 | /* 169272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp32m), |
| 59772 | /* 169275 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59773 | /* 169277 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 59774 | /* 169279 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59775 | /* 169283 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 59776 | /* 169286 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59777 | /* 169291 */ GIR_RootConstrainSelectedInstOperands, |
| 59778 | /* 169292 */ // GIR_Coverage, 1021, |
| 59779 | /* 169292 */ GIR_EraseRootFromParent_Done, |
| 59780 | /* 169293 */ // Label 3729: @169293 |
| 59781 | /* 169293 */ GIM_Try, /*On fail goto*//*Label 3730*/ GIMT_Encode4(169358), // Rule ID 1009 // |
| 59782 | /* 169298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 59783 | /* 169301 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59784 | /* 169305 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59785 | /* 169309 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59786 | /* 169313 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 59787 | /* 169317 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 59788 | /* 169324 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59789 | /* 169328 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59790 | /* 169330 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59791 | /* 169337 */ // (fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 59792 | /* 169337 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m32), |
| 59793 | /* 169340 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59794 | /* 169342 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59795 | /* 169344 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59796 | /* 169348 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 59797 | /* 169351 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59798 | /* 169356 */ GIR_RootConstrainSelectedInstOperands, |
| 59799 | /* 169357 */ // GIR_Coverage, 1009, |
| 59800 | /* 169357 */ GIR_EraseRootFromParent_Done, |
| 59801 | /* 169358 */ // Label 3730: @169358 |
| 59802 | /* 169358 */ GIM_Try, /*On fail goto*//*Label 3731*/ GIMT_Encode4(169423), // Rule ID 1011 // |
| 59803 | /* 169363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 59804 | /* 169366 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59805 | /* 169370 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59806 | /* 169374 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59807 | /* 169378 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 59808 | /* 169382 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 59809 | /* 169389 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59810 | /* 169393 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59811 | /* 169395 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59812 | /* 169402 */ // (fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 59813 | /* 169402 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m32), |
| 59814 | /* 169405 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59815 | /* 169407 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59816 | /* 169409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59817 | /* 169413 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 59818 | /* 169416 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59819 | /* 169421 */ GIR_RootConstrainSelectedInstOperands, |
| 59820 | /* 169422 */ // GIR_Coverage, 1011, |
| 59821 | /* 169422 */ GIR_EraseRootFromParent_Done, |
| 59822 | /* 169423 */ // Label 3731: @169423 |
| 59823 | /* 169423 */ GIM_Try, /*On fail goto*//*Label 3732*/ GIMT_Encode4(169488), // Rule ID 999 // |
| 59824 | /* 169428 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 59825 | /* 169431 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59826 | /* 169435 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59827 | /* 169439 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59828 | /* 169443 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59829 | /* 169447 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59830 | /* 169450 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59831 | /* 169454 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59832 | /* 169458 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59833 | /* 169460 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59834 | /* 169467 */ // (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) |
| 59835 | /* 169467 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp32m), |
| 59836 | /* 169470 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59837 | /* 169472 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59838 | /* 169474 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59839 | /* 169478 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 59840 | /* 169481 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59841 | /* 169486 */ GIR_RootConstrainSelectedInstOperands, |
| 59842 | /* 169487 */ // GIR_Coverage, 999, |
| 59843 | /* 169487 */ GIR_EraseRootFromParent_Done, |
| 59844 | /* 169488 */ // Label 3732: @169488 |
| 59845 | /* 169488 */ GIM_Try, /*On fail goto*//*Label 3733*/ GIMT_Encode4(169550), // Rule ID 2281 // |
| 59846 | /* 169493 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 59847 | /* 169496 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59848 | /* 169500 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59849 | /* 169504 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59850 | /* 169508 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59851 | /* 169512 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59852 | /* 169515 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59853 | /* 169519 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59854 | /* 169523 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59855 | /* 169525 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59856 | /* 169532 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 59857 | /* 169532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSrm), |
| 59858 | /* 169535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59859 | /* 169537 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59860 | /* 169539 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59861 | /* 169543 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59862 | /* 169548 */ GIR_RootConstrainSelectedInstOperands, |
| 59863 | /* 169549 */ // GIR_Coverage, 2281, |
| 59864 | /* 169549 */ GIR_EraseRootFromParent_Done, |
| 59865 | /* 169550 */ // Label 3733: @169550 |
| 59866 | /* 169550 */ GIM_Try, /*On fail goto*//*Label 3734*/ GIMT_Encode4(169612), // Rule ID 2289 // |
| 59867 | /* 169555 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 59868 | /* 169558 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59869 | /* 169562 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59870 | /* 169566 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59871 | /* 169570 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59872 | /* 169574 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59873 | /* 169577 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59874 | /* 169581 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59875 | /* 169585 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59876 | /* 169587 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59877 | /* 169594 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIVSSrm:{ *:[f32] } FR32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 59878 | /* 169594 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSSrm), |
| 59879 | /* 169597 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59880 | /* 169599 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59881 | /* 169601 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59882 | /* 169605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59883 | /* 169610 */ GIR_RootConstrainSelectedInstOperands, |
| 59884 | /* 169611 */ // GIR_Coverage, 2289, |
| 59885 | /* 169611 */ GIR_EraseRootFromParent_Done, |
| 59886 | /* 169612 */ // Label 3734: @169612 |
| 59887 | /* 169612 */ GIM_Try, /*On fail goto*//*Label 3735*/ GIMT_Encode4(169674), // Rule ID 6092 // |
| 59888 | /* 169617 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59889 | /* 169620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 59890 | /* 169624 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 59891 | /* 169628 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59892 | /* 169632 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59893 | /* 169636 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 59894 | /* 169639 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 59895 | /* 169643 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 59896 | /* 169647 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 59897 | /* 169649 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59898 | /* 169656 */ // (fdiv:{ *:[f32] } FR32X:{ *:[f32] }:$src1, (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSSZrm:{ *:[f32] } FR32X:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 59899 | /* 169656 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrm), |
| 59900 | /* 169659 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59901 | /* 169661 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59902 | /* 169663 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59903 | /* 169667 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 59904 | /* 169672 */ GIR_RootConstrainSelectedInstOperands, |
| 59905 | /* 169673 */ // GIR_Coverage, 6092, |
| 59906 | /* 169673 */ GIR_EraseRootFromParent_Done, |
| 59907 | /* 169674 */ // Label 3735: @169674 |
| 59908 | /* 169674 */ GIM_Try, /*On fail goto*//*Label 3736*/ GIMT_Encode4(169711), // Rule ID 905 // |
| 59909 | /* 169679 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 59910 | /* 169682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59911 | /* 169686 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59912 | /* 169690 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 59913 | /* 169694 */ // (fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (DIV_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 59914 | /* 169694 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp32), |
| 59915 | /* 169699 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 59916 | /* 169705 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 59917 | /* 169709 */ GIR_RootConstrainSelectedInstOperands, |
| 59918 | /* 169710 */ // GIR_Coverage, 905, |
| 59919 | /* 169710 */ GIR_Done, |
| 59920 | /* 169711 */ // Label 3736: @169711 |
| 59921 | /* 169711 */ GIM_Try, /*On fail goto*//*Label 3737*/ GIMT_Encode4(169742), // Rule ID 2279 // |
| 59922 | /* 169716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 59923 | /* 169719 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59924 | /* 169723 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59925 | /* 169727 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59926 | /* 169731 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VDIVSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 59927 | /* 169731 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSSrr), |
| 59928 | /* 169736 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 59929 | /* 169740 */ GIR_RootConstrainSelectedInstOperands, |
| 59930 | /* 169741 */ // GIR_Coverage, 2279, |
| 59931 | /* 169741 */ GIR_Done, |
| 59932 | /* 169742 */ // Label 3737: @169742 |
| 59933 | /* 169742 */ GIM_Try, /*On fail goto*//*Label 3738*/ GIMT_Encode4(169773), // Rule ID 2287 // |
| 59934 | /* 169747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 59935 | /* 169750 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59936 | /* 169754 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59937 | /* 169758 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 59938 | /* 169762 */ // (fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (DIVSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 59939 | /* 169762 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVSSrr), |
| 59940 | /* 169767 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 59941 | /* 169771 */ GIR_RootConstrainSelectedInstOperands, |
| 59942 | /* 169772 */ // GIR_Coverage, 2287, |
| 59943 | /* 169772 */ GIR_Done, |
| 59944 | /* 169773 */ // Label 3738: @169773 |
| 59945 | /* 169773 */ GIM_Try, /*On fail goto*//*Label 3739*/ GIMT_Encode4(169804), // Rule ID 6090 // |
| 59946 | /* 169778 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 59947 | /* 169781 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 59948 | /* 169785 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 59949 | /* 169789 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 59950 | /* 169793 */ // (fdiv:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VDIVSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 59951 | /* 169793 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrr), |
| 59952 | /* 169798 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 59953 | /* 169802 */ GIR_RootConstrainSelectedInstOperands, |
| 59954 | /* 169803 */ // GIR_Coverage, 6090, |
| 59955 | /* 169803 */ GIR_Done, |
| 59956 | /* 169804 */ // Label 3739: @169804 |
| 59957 | /* 169804 */ GIM_Reject, |
| 59958 | /* 169805 */ // Label 3723: @169805 |
| 59959 | /* 169805 */ GIM_Reject, |
| 59960 | /* 169806 */ // Label 3708: @169806 |
| 59961 | /* 169806 */ GIM_Try, /*On fail goto*//*Label 3740*/ GIMT_Encode4(170914), |
| 59962 | /* 169811 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 59963 | /* 169814 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 59964 | /* 169817 */ GIM_Try, /*On fail goto*//*Label 3741*/ GIMT_Encode4(169899), // Rule ID 22549 // |
| 59965 | /* 169822 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 59966 | /* 169825 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 59967 | /* 169829 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 59968 | /* 169833 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59969 | /* 169837 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 59970 | /* 169841 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 59971 | /* 169845 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 59972 | /* 169849 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59973 | /* 169853 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 59974 | /* 169856 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 59975 | /* 169860 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 59976 | /* 169867 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 59977 | /* 169871 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 59978 | /* 169873 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 59979 | /* 169880 */ // (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) |
| 59980 | /* 169880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSDrm), |
| 59981 | /* 169883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 59982 | /* 169885 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 59983 | /* 169887 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 59984 | /* 169891 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 59985 | /* 169897 */ GIR_RootConstrainSelectedInstOperands, |
| 59986 | /* 169898 */ // GIR_Coverage, 22549, |
| 59987 | /* 169898 */ GIR_EraseRootFromParent_Done, |
| 59988 | /* 169899 */ // Label 3741: @169899 |
| 59989 | /* 169899 */ GIM_Try, /*On fail goto*//*Label 3742*/ GIMT_Encode4(169981), // Rule ID 22550 // |
| 59990 | /* 169904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 59991 | /* 169907 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 59992 | /* 169911 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 59993 | /* 169915 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 59994 | /* 169919 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 59995 | /* 169923 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 59996 | /* 169927 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 59997 | /* 169931 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 59998 | /* 169935 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 59999 | /* 169938 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 60000 | /* 169942 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60001 | /* 169949 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 60002 | /* 169953 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 60003 | /* 169955 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60004 | /* 169962 */ // (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) |
| 60005 | /* 169962 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDrm), |
| 60006 | /* 169965 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60007 | /* 169967 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60008 | /* 169969 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60009 | /* 169973 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 60010 | /* 169979 */ GIR_RootConstrainSelectedInstOperands, |
| 60011 | /* 169980 */ // GIR_Coverage, 22550, |
| 60012 | /* 169980 */ GIR_EraseRootFromParent_Done, |
| 60013 | /* 169981 */ // Label 3742: @169981 |
| 60014 | /* 169981 */ GIM_Try, /*On fail goto*//*Label 3743*/ GIMT_Encode4(170063), // Rule ID 22551 // |
| 60015 | /* 169986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60016 | /* 169989 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60017 | /* 169993 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60018 | /* 169997 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60019 | /* 170001 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BITCAST), |
| 60020 | /* 170005 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 60021 | /* 170009 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 60022 | /* 170013 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60023 | /* 170017 */ GIM_CheckAtomicOrderingOrStrongerThan, /*MI*/2, /*Order*/(uint8_t)AtomicOrdering::Unordered, |
| 60024 | /* 170020 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/2, /*MMO*/0, /*OpIdx*/0, |
| 60025 | /* 170024 */ GIM_CheckMemorySizeEqualTo, /*MI*/2, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60026 | /* 170031 */ GIM_CheckPointerToAny, /*MI*/2, /*Op*/1, /*SizeInBits*/0, |
| 60027 | /* 170035 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 60028 | /* 170037 */ GIM_CheckComplexPattern, /*MI*/2, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60029 | /* 170044 */ // (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) |
| 60030 | /* 170044 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrm), |
| 60031 | /* 170047 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60032 | /* 170049 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60033 | /* 170051 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60034 | /* 170055 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/3, /*MergeInsnID's*/0, 1, 2, |
| 60035 | /* 170061 */ GIR_RootConstrainSelectedInstOperands, |
| 60036 | /* 170062 */ // GIR_Coverage, 22551, |
| 60037 | /* 170062 */ GIR_EraseRootFromParent_Done, |
| 60038 | /* 170063 */ // Label 3743: @170063 |
| 60039 | /* 170063 */ GIM_Try, /*On fail goto*//*Label 3744*/ GIMT_Encode4(170128), // Rule ID 1035 // |
| 60040 | /* 170068 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60041 | /* 170071 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60042 | /* 170075 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60043 | /* 170079 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60044 | /* 170083 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60045 | /* 170090 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60046 | /* 170094 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60047 | /* 170098 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60048 | /* 170100 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60049 | /* 170107 */ // (fdiv:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (DIVR_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60050 | /* 170107 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m64), |
| 60051 | /* 170110 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60052 | /* 170112 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60053 | /* 170114 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60054 | /* 170118 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60055 | /* 170121 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60056 | /* 170126 */ GIR_RootConstrainSelectedInstOperands, |
| 60057 | /* 170127 */ // GIR_Coverage, 1035, |
| 60058 | /* 170127 */ GIR_EraseRootFromParent_Done, |
| 60059 | /* 170128 */ // Label 3744: @170128 |
| 60060 | /* 170128 */ GIM_Try, /*On fail goto*//*Label 3745*/ GIMT_Encode4(170193), // Rule ID 1037 // |
| 60061 | /* 170133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60062 | /* 170136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60063 | /* 170140 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60064 | /* 170144 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60065 | /* 170148 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60066 | /* 170155 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60067 | /* 170159 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60068 | /* 170163 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60069 | /* 170165 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60070 | /* 170172 */ // (fdiv:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (DIVR_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60071 | /* 170172 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m64), |
| 60072 | /* 170175 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60073 | /* 170177 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60074 | /* 170179 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60075 | /* 170183 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60076 | /* 170186 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60077 | /* 170191 */ GIR_RootConstrainSelectedInstOperands, |
| 60078 | /* 170192 */ // GIR_Coverage, 1037, |
| 60079 | /* 170192 */ GIR_EraseRootFromParent_Done, |
| 60080 | /* 170193 */ // Label 3745: @170193 |
| 60081 | /* 170193 */ GIM_Try, /*On fail goto*//*Label 3746*/ GIMT_Encode4(170258), // Rule ID 1023 // |
| 60082 | /* 170198 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60083 | /* 170201 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60084 | /* 170205 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60085 | /* 170209 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60086 | /* 170213 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60087 | /* 170216 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60088 | /* 170220 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60089 | /* 170224 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60090 | /* 170228 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60091 | /* 170230 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60092 | /* 170237 */ // (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) |
| 60093 | /* 170237 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp64m), |
| 60094 | /* 170240 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60095 | /* 170242 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60096 | /* 170244 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60097 | /* 170248 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60098 | /* 170251 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60099 | /* 170256 */ GIR_RootConstrainSelectedInstOperands, |
| 60100 | /* 170257 */ // GIR_Coverage, 1023, |
| 60101 | /* 170257 */ GIR_EraseRootFromParent_Done, |
| 60102 | /* 170258 */ // Label 3746: @170258 |
| 60103 | /* 170258 */ GIM_Try, /*On fail goto*//*Label 3747*/ GIMT_Encode4(170330), // Rule ID 1025 // |
| 60104 | /* 170263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60105 | /* 170266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60106 | /* 170270 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60107 | /* 170274 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60108 | /* 170278 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60109 | /* 170281 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60110 | /* 170285 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60111 | /* 170292 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60112 | /* 170296 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60113 | /* 170300 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60114 | /* 170302 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60115 | /* 170309 */ // (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) |
| 60116 | /* 170309 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp64m32), |
| 60117 | /* 170312 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60118 | /* 170314 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60119 | /* 170316 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60120 | /* 170320 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60121 | /* 170323 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60122 | /* 170328 */ GIR_RootConstrainSelectedInstOperands, |
| 60123 | /* 170329 */ // GIR_Coverage, 1025, |
| 60124 | /* 170329 */ GIR_EraseRootFromParent_Done, |
| 60125 | /* 170330 */ // Label 3747: @170330 |
| 60126 | /* 170330 */ GIM_Try, /*On fail goto*//*Label 3748*/ GIMT_Encode4(170395), // Rule ID 1013 // |
| 60127 | /* 170335 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60128 | /* 170338 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60129 | /* 170342 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60130 | /* 170346 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60131 | /* 170350 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60132 | /* 170354 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60133 | /* 170361 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60134 | /* 170365 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60135 | /* 170367 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60136 | /* 170374 */ // (fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60137 | /* 170374 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m64), |
| 60138 | /* 170377 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60139 | /* 170379 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60140 | /* 170381 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60141 | /* 170385 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60142 | /* 170388 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60143 | /* 170393 */ GIR_RootConstrainSelectedInstOperands, |
| 60144 | /* 170394 */ // GIR_Coverage, 1013, |
| 60145 | /* 170394 */ GIR_EraseRootFromParent_Done, |
| 60146 | /* 170395 */ // Label 3748: @170395 |
| 60147 | /* 170395 */ GIM_Try, /*On fail goto*//*Label 3749*/ GIMT_Encode4(170460), // Rule ID 1015 // |
| 60148 | /* 170400 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60149 | /* 170403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60150 | /* 170407 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60151 | /* 170411 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60152 | /* 170415 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60153 | /* 170419 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60154 | /* 170426 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60155 | /* 170430 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60156 | /* 170432 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60157 | /* 170439 */ // (fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60158 | /* 170439 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m64), |
| 60159 | /* 170442 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60160 | /* 170444 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60161 | /* 170446 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60162 | /* 170450 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60163 | /* 170453 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60164 | /* 170458 */ GIR_RootConstrainSelectedInstOperands, |
| 60165 | /* 170459 */ // GIR_Coverage, 1015, |
| 60166 | /* 170459 */ GIR_EraseRootFromParent_Done, |
| 60167 | /* 170460 */ // Label 3749: @170460 |
| 60168 | /* 170460 */ GIM_Try, /*On fail goto*//*Label 3750*/ GIMT_Encode4(170525), // Rule ID 1001 // |
| 60169 | /* 170465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60170 | /* 170468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60171 | /* 170472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60172 | /* 170476 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60173 | /* 170480 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60174 | /* 170484 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60175 | /* 170487 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60176 | /* 170491 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60177 | /* 170495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60178 | /* 170497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60179 | /* 170504 */ // (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) |
| 60180 | /* 170504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64m), |
| 60181 | /* 170507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60182 | /* 170509 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60183 | /* 170511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60184 | /* 170515 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60185 | /* 170518 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60186 | /* 170523 */ GIR_RootConstrainSelectedInstOperands, |
| 60187 | /* 170524 */ // GIR_Coverage, 1001, |
| 60188 | /* 170524 */ GIR_EraseRootFromParent_Done, |
| 60189 | /* 170525 */ // Label 3750: @170525 |
| 60190 | /* 170525 */ GIM_Try, /*On fail goto*//*Label 3751*/ GIMT_Encode4(170597), // Rule ID 1003 // |
| 60191 | /* 170530 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60192 | /* 170533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60193 | /* 170537 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60194 | /* 170541 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60195 | /* 170545 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60196 | /* 170549 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60197 | /* 170552 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60198 | /* 170556 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60199 | /* 170563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60200 | /* 170567 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60201 | /* 170569 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60202 | /* 170576 */ // (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) |
| 60203 | /* 170576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64m32), |
| 60204 | /* 170579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60205 | /* 170581 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60206 | /* 170583 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60207 | /* 170587 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60208 | /* 170590 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60209 | /* 170595 */ GIR_RootConstrainSelectedInstOperands, |
| 60210 | /* 170596 */ // GIR_Coverage, 1003, |
| 60211 | /* 170596 */ GIR_EraseRootFromParent_Done, |
| 60212 | /* 170597 */ // Label 3751: @170597 |
| 60213 | /* 170597 */ GIM_Try, /*On fail goto*//*Label 3752*/ GIMT_Encode4(170659), // Rule ID 2285 // |
| 60214 | /* 170602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 60215 | /* 170605 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60216 | /* 170609 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60217 | /* 170613 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60218 | /* 170617 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60219 | /* 170621 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60220 | /* 170624 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60221 | /* 170628 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60222 | /* 170632 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60223 | /* 170634 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60224 | /* 170641 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60225 | /* 170641 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDrm), |
| 60226 | /* 170644 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60227 | /* 170646 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60228 | /* 170648 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60229 | /* 170652 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60230 | /* 170657 */ GIR_RootConstrainSelectedInstOperands, |
| 60231 | /* 170658 */ // GIR_Coverage, 2285, |
| 60232 | /* 170658 */ GIR_EraseRootFromParent_Done, |
| 60233 | /* 170659 */ // Label 3752: @170659 |
| 60234 | /* 170659 */ GIM_Try, /*On fail goto*//*Label 3753*/ GIMT_Encode4(170721), // Rule ID 2293 // |
| 60235 | /* 170664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 60236 | /* 170667 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60237 | /* 170671 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60238 | /* 170675 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60239 | /* 170679 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60240 | /* 170683 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60241 | /* 170686 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60242 | /* 170690 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60243 | /* 170694 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60244 | /* 170696 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60245 | /* 170703 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (DIVSDrm:{ *:[f64] } FR64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60246 | /* 170703 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSDrm), |
| 60247 | /* 170706 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60248 | /* 170708 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60249 | /* 170710 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60250 | /* 170714 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60251 | /* 170719 */ GIR_RootConstrainSelectedInstOperands, |
| 60252 | /* 170720 */ // GIR_Coverage, 2293, |
| 60253 | /* 170720 */ GIR_EraseRootFromParent_Done, |
| 60254 | /* 170721 */ // Label 3753: @170721 |
| 60255 | /* 170721 */ GIM_Try, /*On fail goto*//*Label 3754*/ GIMT_Encode4(170783), // Rule ID 6111 // |
| 60256 | /* 170726 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60257 | /* 170729 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60258 | /* 170733 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60259 | /* 170737 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60260 | /* 170741 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60261 | /* 170745 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60262 | /* 170748 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60263 | /* 170752 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60264 | /* 170756 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60265 | /* 170758 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60266 | /* 170765 */ // (fdiv:{ *:[f64] } FR64X:{ *:[f64] }:$src1, (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVSDZrm:{ *:[f64] } FR64X:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60267 | /* 170765 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrm), |
| 60268 | /* 170768 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60269 | /* 170770 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60270 | /* 170772 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60271 | /* 170776 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60272 | /* 170781 */ GIR_RootConstrainSelectedInstOperands, |
| 60273 | /* 170782 */ // GIR_Coverage, 6111, |
| 60274 | /* 170782 */ GIR_EraseRootFromParent_Done, |
| 60275 | /* 170783 */ // Label 3754: @170783 |
| 60276 | /* 170783 */ GIM_Try, /*On fail goto*//*Label 3755*/ GIMT_Encode4(170820), // Rule ID 907 // |
| 60277 | /* 170788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 60278 | /* 170791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60279 | /* 170795 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60280 | /* 170799 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 60281 | /* 170803 */ // (fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (DIV_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 60282 | /* 170803 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64), |
| 60283 | /* 170808 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 60284 | /* 170814 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 60285 | /* 170818 */ GIR_RootConstrainSelectedInstOperands, |
| 60286 | /* 170819 */ // GIR_Coverage, 907, |
| 60287 | /* 170819 */ GIR_Done, |
| 60288 | /* 170820 */ // Label 3755: @170820 |
| 60289 | /* 170820 */ GIM_Try, /*On fail goto*//*Label 3756*/ GIMT_Encode4(170851), // Rule ID 2283 // |
| 60290 | /* 170825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 60291 | /* 170828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60292 | /* 170832 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60293 | /* 170836 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60294 | /* 170840 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VDIVSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 60295 | /* 170840 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSDrr), |
| 60296 | /* 170845 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60297 | /* 170849 */ GIR_RootConstrainSelectedInstOperands, |
| 60298 | /* 170850 */ // GIR_Coverage, 2283, |
| 60299 | /* 170850 */ GIR_Done, |
| 60300 | /* 170851 */ // Label 3756: @170851 |
| 60301 | /* 170851 */ GIM_Try, /*On fail goto*//*Label 3757*/ GIMT_Encode4(170882), // Rule ID 2291 // |
| 60302 | /* 170856 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 60303 | /* 170859 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60304 | /* 170863 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60305 | /* 170867 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 60306 | /* 170871 */ // (fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (DIVSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 60307 | /* 170871 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVSDrr), |
| 60308 | /* 170876 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60309 | /* 170880 */ GIR_RootConstrainSelectedInstOperands, |
| 60310 | /* 170881 */ // GIR_Coverage, 2291, |
| 60311 | /* 170881 */ GIR_Done, |
| 60312 | /* 170882 */ // Label 3757: @170882 |
| 60313 | /* 170882 */ GIM_Try, /*On fail goto*//*Label 3758*/ GIMT_Encode4(170913), // Rule ID 6109 // |
| 60314 | /* 170887 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60315 | /* 170890 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60316 | /* 170894 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60317 | /* 170898 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 60318 | /* 170902 */ // (fdiv:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VDIVSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 60319 | /* 170902 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrr), |
| 60320 | /* 170907 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60321 | /* 170911 */ GIR_RootConstrainSelectedInstOperands, |
| 60322 | /* 170912 */ // GIR_Coverage, 6109, |
| 60323 | /* 170912 */ GIR_Done, |
| 60324 | /* 170913 */ // Label 3758: @170913 |
| 60325 | /* 170913 */ GIM_Reject, |
| 60326 | /* 170914 */ // Label 3740: @170914 |
| 60327 | /* 170914 */ GIM_Reject, |
| 60328 | /* 170915 */ // Label 3709: @170915 |
| 60329 | /* 170915 */ GIM_Try, /*On fail goto*//*Label 3759*/ GIMT_Encode4(171480), |
| 60330 | /* 170920 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 60331 | /* 170923 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 60332 | /* 170926 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60333 | /* 170930 */ GIM_Try, /*On fail goto*//*Label 3760*/ GIMT_Encode4(170991), // Rule ID 1039 // |
| 60334 | /* 170935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60335 | /* 170938 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60336 | /* 170942 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60337 | /* 170946 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60338 | /* 170953 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60339 | /* 170957 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60340 | /* 170961 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60341 | /* 170963 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60342 | /* 170970 */ // (fdiv:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (DIVR_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60343 | /* 170970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m80), |
| 60344 | /* 170973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60345 | /* 170975 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60346 | /* 170977 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60347 | /* 170981 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60348 | /* 170984 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60349 | /* 170989 */ GIR_RootConstrainSelectedInstOperands, |
| 60350 | /* 170990 */ // GIR_Coverage, 1039, |
| 60351 | /* 170990 */ GIR_EraseRootFromParent_Done, |
| 60352 | /* 170991 */ // Label 3760: @170991 |
| 60353 | /* 170991 */ GIM_Try, /*On fail goto*//*Label 3761*/ GIMT_Encode4(171052), // Rule ID 1041 // |
| 60354 | /* 170996 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60355 | /* 170999 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60356 | /* 171003 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60357 | /* 171007 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60358 | /* 171014 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60359 | /* 171018 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60360 | /* 171022 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60361 | /* 171024 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60362 | /* 171031 */ // (fdiv:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (DIVR_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60363 | /* 171031 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m80), |
| 60364 | /* 171034 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60365 | /* 171036 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60366 | /* 171038 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60367 | /* 171042 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60368 | /* 171045 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60369 | /* 171050 */ GIR_RootConstrainSelectedInstOperands, |
| 60370 | /* 171051 */ // GIR_Coverage, 1041, |
| 60371 | /* 171051 */ GIR_EraseRootFromParent_Done, |
| 60372 | /* 171052 */ // Label 3761: @171052 |
| 60373 | /* 171052 */ GIM_Try, /*On fail goto*//*Label 3762*/ GIMT_Encode4(171120), // Rule ID 1027 // |
| 60374 | /* 171057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60375 | /* 171060 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60376 | /* 171064 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60377 | /* 171068 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60378 | /* 171071 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60379 | /* 171075 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60380 | /* 171082 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60381 | /* 171086 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60382 | /* 171090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60383 | /* 171092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60384 | /* 171099 */ // (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) |
| 60385 | /* 171099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp80m32), |
| 60386 | /* 171102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60387 | /* 171104 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60388 | /* 171106 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60389 | /* 171110 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60390 | /* 171113 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60391 | /* 171118 */ GIR_RootConstrainSelectedInstOperands, |
| 60392 | /* 171119 */ // GIR_Coverage, 1027, |
| 60393 | /* 171119 */ GIR_EraseRootFromParent_Done, |
| 60394 | /* 171120 */ // Label 3762: @171120 |
| 60395 | /* 171120 */ GIM_Try, /*On fail goto*//*Label 3763*/ GIMT_Encode4(171188), // Rule ID 1029 // |
| 60396 | /* 171125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60397 | /* 171128 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 60398 | /* 171132 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60399 | /* 171136 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60400 | /* 171139 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60401 | /* 171143 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60402 | /* 171150 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60403 | /* 171154 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60404 | /* 171158 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60405 | /* 171160 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60406 | /* 171167 */ // (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) |
| 60407 | /* 171167 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp80m64), |
| 60408 | /* 171170 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60409 | /* 171172 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 60410 | /* 171174 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60411 | /* 171178 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60412 | /* 171181 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60413 | /* 171186 */ GIR_RootConstrainSelectedInstOperands, |
| 60414 | /* 171187 */ // GIR_Coverage, 1029, |
| 60415 | /* 171187 */ GIR_EraseRootFromParent_Done, |
| 60416 | /* 171188 */ // Label 3763: @171188 |
| 60417 | /* 171188 */ GIM_Try, /*On fail goto*//*Label 3764*/ GIMT_Encode4(171249), // Rule ID 1017 // |
| 60418 | /* 171193 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60419 | /* 171196 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60420 | /* 171200 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60421 | /* 171204 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60422 | /* 171208 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 60423 | /* 171215 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60424 | /* 171219 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60425 | /* 171221 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60426 | /* 171228 */ // (fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60427 | /* 171228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m80), |
| 60428 | /* 171231 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60429 | /* 171233 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60430 | /* 171235 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60431 | /* 171239 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60432 | /* 171242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60433 | /* 171247 */ GIR_RootConstrainSelectedInstOperands, |
| 60434 | /* 171248 */ // GIR_Coverage, 1017, |
| 60435 | /* 171248 */ GIR_EraseRootFromParent_Done, |
| 60436 | /* 171249 */ // Label 3764: @171249 |
| 60437 | /* 171249 */ GIM_Try, /*On fail goto*//*Label 3765*/ GIMT_Encode4(171310), // Rule ID 1019 // |
| 60438 | /* 171254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60439 | /* 171257 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60440 | /* 171261 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60441 | /* 171265 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 60442 | /* 171269 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60443 | /* 171276 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60444 | /* 171280 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60445 | /* 171282 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60446 | /* 171289 */ // (fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60447 | /* 171289 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m80), |
| 60448 | /* 171292 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60449 | /* 171294 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60450 | /* 171296 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60451 | /* 171300 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60452 | /* 171303 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60453 | /* 171308 */ GIR_RootConstrainSelectedInstOperands, |
| 60454 | /* 171309 */ // GIR_Coverage, 1019, |
| 60455 | /* 171309 */ GIR_EraseRootFromParent_Done, |
| 60456 | /* 171310 */ // Label 3765: @171310 |
| 60457 | /* 171310 */ GIM_Try, /*On fail goto*//*Label 3766*/ GIMT_Encode4(171378), // Rule ID 1005 // |
| 60458 | /* 171315 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60459 | /* 171318 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60460 | /* 171322 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60461 | /* 171326 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60462 | /* 171330 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60463 | /* 171333 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60464 | /* 171337 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 60465 | /* 171344 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60466 | /* 171348 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60467 | /* 171350 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60468 | /* 171357 */ // (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) |
| 60469 | /* 171357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80m32), |
| 60470 | /* 171360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60471 | /* 171362 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60472 | /* 171364 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60473 | /* 171368 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60474 | /* 171371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60475 | /* 171376 */ GIR_RootConstrainSelectedInstOperands, |
| 60476 | /* 171377 */ // GIR_Coverage, 1005, |
| 60477 | /* 171377 */ GIR_EraseRootFromParent_Done, |
| 60478 | /* 171378 */ // Label 3766: @171378 |
| 60479 | /* 171378 */ GIM_Try, /*On fail goto*//*Label 3767*/ GIMT_Encode4(171446), // Rule ID 1007 // |
| 60480 | /* 171383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60481 | /* 171386 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60482 | /* 171390 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60483 | /* 171394 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60484 | /* 171398 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60485 | /* 171401 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60486 | /* 171405 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 60487 | /* 171412 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60488 | /* 171416 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60489 | /* 171418 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60490 | /* 171425 */ // (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) |
| 60491 | /* 171425 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80m64), |
| 60492 | /* 171428 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60493 | /* 171430 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60494 | /* 171432 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60495 | /* 171436 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 60496 | /* 171439 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60497 | /* 171444 */ GIR_RootConstrainSelectedInstOperands, |
| 60498 | /* 171445 */ // GIR_Coverage, 1007, |
| 60499 | /* 171445 */ GIR_EraseRootFromParent_Done, |
| 60500 | /* 171446 */ // Label 3767: @171446 |
| 60501 | /* 171446 */ GIM_Try, /*On fail goto*//*Label 3768*/ GIMT_Encode4(171479), // Rule ID 909 // |
| 60502 | /* 171451 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 60503 | /* 171454 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60504 | /* 171458 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 60505 | /* 171462 */ // (fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (DIV_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 60506 | /* 171462 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80), |
| 60507 | /* 171467 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 60508 | /* 171473 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 60509 | /* 171477 */ GIR_RootConstrainSelectedInstOperands, |
| 60510 | /* 171478 */ // GIR_Coverage, 909, |
| 60511 | /* 171478 */ GIR_Done, |
| 60512 | /* 171479 */ // Label 3768: @171479 |
| 60513 | /* 171479 */ GIM_Reject, |
| 60514 | /* 171480 */ // Label 3759: @171480 |
| 60515 | /* 171480 */ GIM_Reject, |
| 60516 | /* 171481 */ // Label 3710: @171481 |
| 60517 | /* 171481 */ GIM_Try, /*On fail goto*//*Label 3769*/ GIMT_Encode4(171710), |
| 60518 | /* 171486 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 60519 | /* 171489 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 60520 | /* 171492 */ GIM_Try, /*On fail goto*//*Label 3770*/ GIMT_Encode4(171554), // Rule ID 2261 // |
| 60521 | /* 171497 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60522 | /* 171500 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60523 | /* 171504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60524 | /* 171508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60525 | /* 171512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60526 | /* 171516 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60527 | /* 171519 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60528 | /* 171523 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60529 | /* 171527 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60530 | /* 171529 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60531 | /* 171536 */ // (fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDrm:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60532 | /* 171536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDrm), |
| 60533 | /* 171539 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60534 | /* 171541 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60535 | /* 171543 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60536 | /* 171547 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60537 | /* 171552 */ GIR_RootConstrainSelectedInstOperands, |
| 60538 | /* 171553 */ // GIR_Coverage, 2261, |
| 60539 | /* 171553 */ GIR_EraseRootFromParent_Done, |
| 60540 | /* 171554 */ // Label 3770: @171554 |
| 60541 | /* 171554 */ GIM_Try, /*On fail goto*//*Label 3771*/ GIMT_Encode4(171616), // Rule ID 6664 // |
| 60542 | /* 171559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 60543 | /* 171562 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60544 | /* 171566 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60545 | /* 171570 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60546 | /* 171574 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60547 | /* 171578 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60548 | /* 171581 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60549 | /* 171585 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60550 | /* 171589 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60551 | /* 171591 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60552 | /* 171598 */ // (fdiv:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZ128rm:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60553 | /* 171598 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ128rm), |
| 60554 | /* 171601 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60555 | /* 171603 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60556 | /* 171605 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60557 | /* 171609 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60558 | /* 171614 */ GIR_RootConstrainSelectedInstOperands, |
| 60559 | /* 171615 */ // GIR_Coverage, 6664, |
| 60560 | /* 171615 */ GIR_EraseRootFromParent_Done, |
| 60561 | /* 171616 */ // Label 3771: @171616 |
| 60562 | /* 171616 */ GIM_Try, /*On fail goto*//*Label 3772*/ GIMT_Encode4(171647), // Rule ID 2259 // |
| 60563 | /* 171621 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60564 | /* 171624 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60565 | /* 171628 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60566 | /* 171632 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60567 | /* 171636 */ // (fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VDIVPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 60568 | /* 171636 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDrr), |
| 60569 | /* 171641 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60570 | /* 171645 */ GIR_RootConstrainSelectedInstOperands, |
| 60571 | /* 171646 */ // GIR_Coverage, 2259, |
| 60572 | /* 171646 */ GIR_Done, |
| 60573 | /* 171647 */ // Label 3772: @171647 |
| 60574 | /* 171647 */ GIM_Try, /*On fail goto*//*Label 3773*/ GIMT_Encode4(171678), // Rule ID 2275 // |
| 60575 | /* 171652 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 60576 | /* 171655 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60577 | /* 171659 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60578 | /* 171663 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60579 | /* 171667 */ // (fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (DIVPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 60580 | /* 171667 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVPDrr), |
| 60581 | /* 171672 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60582 | /* 171676 */ GIR_RootConstrainSelectedInstOperands, |
| 60583 | /* 171677 */ // GIR_Coverage, 2275, |
| 60584 | /* 171677 */ GIR_Done, |
| 60585 | /* 171678 */ // Label 3773: @171678 |
| 60586 | /* 171678 */ GIM_Try, /*On fail goto*//*Label 3774*/ GIMT_Encode4(171709), // Rule ID 6660 // |
| 60587 | /* 171683 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 60588 | /* 171686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60589 | /* 171690 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60590 | /* 171694 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60591 | /* 171698 */ // (fdiv:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VDIVPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 60592 | /* 171698 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ128rr), |
| 60593 | /* 171703 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60594 | /* 171707 */ GIR_RootConstrainSelectedInstOperands, |
| 60595 | /* 171708 */ // GIR_Coverage, 6660, |
| 60596 | /* 171708 */ GIR_Done, |
| 60597 | /* 171709 */ // Label 3774: @171709 |
| 60598 | /* 171709 */ GIM_Reject, |
| 60599 | /* 171710 */ // Label 3769: @171710 |
| 60600 | /* 171710 */ GIM_Reject, |
| 60601 | /* 171711 */ // Label 3711: @171711 |
| 60602 | /* 171711 */ GIM_Try, /*On fail goto*//*Label 3775*/ GIMT_Encode4(171940), |
| 60603 | /* 171716 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 60604 | /* 171719 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 60605 | /* 171722 */ GIM_Try, /*On fail goto*//*Label 3776*/ GIMT_Encode4(171784), // Rule ID 2257 // |
| 60606 | /* 171727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60607 | /* 171730 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60608 | /* 171734 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60609 | /* 171738 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60610 | /* 171742 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60611 | /* 171746 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60612 | /* 171749 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60613 | /* 171753 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60614 | /* 171757 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60615 | /* 171759 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60616 | /* 171766 */ // (fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSrm:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60617 | /* 171766 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSrm), |
| 60618 | /* 171769 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60619 | /* 171771 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60620 | /* 171773 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60621 | /* 171777 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60622 | /* 171782 */ GIR_RootConstrainSelectedInstOperands, |
| 60623 | /* 171783 */ // GIR_Coverage, 2257, |
| 60624 | /* 171783 */ GIR_EraseRootFromParent_Done, |
| 60625 | /* 171784 */ // Label 3776: @171784 |
| 60626 | /* 171784 */ GIM_Try, /*On fail goto*//*Label 3777*/ GIMT_Encode4(171846), // Rule ID 6640 // |
| 60627 | /* 171789 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 60628 | /* 171792 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60629 | /* 171796 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60630 | /* 171800 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60631 | /* 171804 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60632 | /* 171808 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60633 | /* 171811 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60634 | /* 171815 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60635 | /* 171819 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60636 | /* 171821 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60637 | /* 171828 */ // (fdiv:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZ128rm:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60638 | /* 171828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ128rm), |
| 60639 | /* 171831 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60640 | /* 171833 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60641 | /* 171835 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60642 | /* 171839 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60643 | /* 171844 */ GIR_RootConstrainSelectedInstOperands, |
| 60644 | /* 171845 */ // GIR_Coverage, 6640, |
| 60645 | /* 171845 */ GIR_EraseRootFromParent_Done, |
| 60646 | /* 171846 */ // Label 3777: @171846 |
| 60647 | /* 171846 */ GIM_Try, /*On fail goto*//*Label 3778*/ GIMT_Encode4(171877), // Rule ID 2255 // |
| 60648 | /* 171851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60649 | /* 171854 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60650 | /* 171858 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60651 | /* 171862 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60652 | /* 171866 */ // (fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VDIVPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 60653 | /* 171866 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSrr), |
| 60654 | /* 171871 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60655 | /* 171875 */ GIR_RootConstrainSelectedInstOperands, |
| 60656 | /* 171876 */ // GIR_Coverage, 2255, |
| 60657 | /* 171876 */ GIR_Done, |
| 60658 | /* 171877 */ // Label 3778: @171877 |
| 60659 | /* 171877 */ GIM_Try, /*On fail goto*//*Label 3779*/ GIMT_Encode4(171908), // Rule ID 2271 // |
| 60660 | /* 171882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 60661 | /* 171885 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60662 | /* 171889 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60663 | /* 171893 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 60664 | /* 171897 */ // (fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (DIVPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 60665 | /* 171897 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVPSrr), |
| 60666 | /* 171902 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60667 | /* 171906 */ GIR_RootConstrainSelectedInstOperands, |
| 60668 | /* 171907 */ // GIR_Coverage, 2271, |
| 60669 | /* 171907 */ GIR_Done, |
| 60670 | /* 171908 */ // Label 3779: @171908 |
| 60671 | /* 171908 */ GIM_Try, /*On fail goto*//*Label 3780*/ GIMT_Encode4(171939), // Rule ID 6636 // |
| 60672 | /* 171913 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 60673 | /* 171916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60674 | /* 171920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60675 | /* 171924 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60676 | /* 171928 */ // (fdiv:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VDIVPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 60677 | /* 171928 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ128rr), |
| 60678 | /* 171933 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60679 | /* 171937 */ GIR_RootConstrainSelectedInstOperands, |
| 60680 | /* 171938 */ // GIR_Coverage, 6636, |
| 60681 | /* 171938 */ GIR_Done, |
| 60682 | /* 171939 */ // Label 3780: @171939 |
| 60683 | /* 171939 */ GIM_Reject, |
| 60684 | /* 171940 */ // Label 3775: @171940 |
| 60685 | /* 171940 */ GIM_Reject, |
| 60686 | /* 171941 */ // Label 3712: @171941 |
| 60687 | /* 171941 */ GIM_Try, /*On fail goto*//*Label 3781*/ GIMT_Encode4(172139), |
| 60688 | /* 171946 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 60689 | /* 171949 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 60690 | /* 171952 */ GIM_Try, /*On fail goto*//*Label 3782*/ GIMT_Encode4(172014), // Rule ID 2269 // |
| 60691 | /* 171957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60692 | /* 171960 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60693 | /* 171964 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60694 | /* 171968 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60695 | /* 171972 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60696 | /* 171976 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60697 | /* 171979 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60698 | /* 171983 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60699 | /* 171987 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60700 | /* 171989 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60701 | /* 171996 */ // (fdiv:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDYrm:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60702 | /* 171996 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDYrm), |
| 60703 | /* 171999 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60704 | /* 172001 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60705 | /* 172003 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60706 | /* 172007 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60707 | /* 172012 */ GIR_RootConstrainSelectedInstOperands, |
| 60708 | /* 172013 */ // GIR_Coverage, 2269, |
| 60709 | /* 172013 */ GIR_EraseRootFromParent_Done, |
| 60710 | /* 172014 */ // Label 3782: @172014 |
| 60711 | /* 172014 */ GIM_Try, /*On fail goto*//*Label 3783*/ GIMT_Encode4(172076), // Rule ID 6676 // |
| 60712 | /* 172019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 60713 | /* 172022 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60714 | /* 172026 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60715 | /* 172030 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60716 | /* 172034 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60717 | /* 172038 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60718 | /* 172041 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60719 | /* 172045 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60720 | /* 172049 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60721 | /* 172051 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60722 | /* 172058 */ // (fdiv:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZ256rm:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60723 | /* 172058 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ256rm), |
| 60724 | /* 172061 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60725 | /* 172063 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60726 | /* 172065 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60727 | /* 172069 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60728 | /* 172074 */ GIR_RootConstrainSelectedInstOperands, |
| 60729 | /* 172075 */ // GIR_Coverage, 6676, |
| 60730 | /* 172075 */ GIR_EraseRootFromParent_Done, |
| 60731 | /* 172076 */ // Label 3783: @172076 |
| 60732 | /* 172076 */ GIM_Try, /*On fail goto*//*Label 3784*/ GIMT_Encode4(172107), // Rule ID 2267 // |
| 60733 | /* 172081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60734 | /* 172084 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60735 | /* 172088 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60736 | /* 172092 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60737 | /* 172096 */ // (fdiv:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VDIVPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 60738 | /* 172096 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDYrr), |
| 60739 | /* 172101 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60740 | /* 172105 */ GIR_RootConstrainSelectedInstOperands, |
| 60741 | /* 172106 */ // GIR_Coverage, 2267, |
| 60742 | /* 172106 */ GIR_Done, |
| 60743 | /* 172107 */ // Label 3784: @172107 |
| 60744 | /* 172107 */ GIM_Try, /*On fail goto*//*Label 3785*/ GIMT_Encode4(172138), // Rule ID 6672 // |
| 60745 | /* 172112 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 60746 | /* 172115 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60747 | /* 172119 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60748 | /* 172123 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60749 | /* 172127 */ // (fdiv:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VDIVPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 60750 | /* 172127 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ256rr), |
| 60751 | /* 172132 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60752 | /* 172136 */ GIR_RootConstrainSelectedInstOperands, |
| 60753 | /* 172137 */ // GIR_Coverage, 6672, |
| 60754 | /* 172137 */ GIR_Done, |
| 60755 | /* 172138 */ // Label 3785: @172138 |
| 60756 | /* 172138 */ GIM_Reject, |
| 60757 | /* 172139 */ // Label 3781: @172139 |
| 60758 | /* 172139 */ GIM_Reject, |
| 60759 | /* 172140 */ // Label 3713: @172140 |
| 60760 | /* 172140 */ GIM_Try, /*On fail goto*//*Label 3786*/ GIMT_Encode4(172237), |
| 60761 | /* 172145 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 60762 | /* 172148 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 60763 | /* 172151 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60764 | /* 172155 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60765 | /* 172159 */ GIM_Try, /*On fail goto*//*Label 3787*/ GIMT_Encode4(172213), // Rule ID 6700 // |
| 60766 | /* 172164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 60767 | /* 172167 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60768 | /* 172171 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60769 | /* 172175 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60770 | /* 172178 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60771 | /* 172182 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60772 | /* 172186 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60773 | /* 172188 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60774 | /* 172195 */ // (fdiv:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZ128rm:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60775 | /* 172195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ128rm), |
| 60776 | /* 172198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60777 | /* 172200 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60778 | /* 172202 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60779 | /* 172206 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60780 | /* 172211 */ GIR_RootConstrainSelectedInstOperands, |
| 60781 | /* 172212 */ // GIR_Coverage, 6700, |
| 60782 | /* 172212 */ GIR_EraseRootFromParent_Done, |
| 60783 | /* 172213 */ // Label 3787: @172213 |
| 60784 | /* 172213 */ GIM_Try, /*On fail goto*//*Label 3788*/ GIMT_Encode4(172236), // Rule ID 6696 // |
| 60785 | /* 172218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 60786 | /* 172221 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 60787 | /* 172225 */ // (fdiv:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VDIVPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 60788 | /* 172225 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ128rr), |
| 60789 | /* 172230 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60790 | /* 172234 */ GIR_RootConstrainSelectedInstOperands, |
| 60791 | /* 172235 */ // GIR_Coverage, 6696, |
| 60792 | /* 172235 */ GIR_Done, |
| 60793 | /* 172236 */ // Label 3788: @172236 |
| 60794 | /* 172236 */ GIM_Reject, |
| 60795 | /* 172237 */ // Label 3786: @172237 |
| 60796 | /* 172237 */ GIM_Reject, |
| 60797 | /* 172238 */ // Label 3714: @172238 |
| 60798 | /* 172238 */ GIM_Try, /*On fail goto*//*Label 3789*/ GIMT_Encode4(172436), |
| 60799 | /* 172243 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 60800 | /* 172246 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 60801 | /* 172249 */ GIM_Try, /*On fail goto*//*Label 3790*/ GIMT_Encode4(172311), // Rule ID 2265 // |
| 60802 | /* 172254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60803 | /* 172257 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60804 | /* 172261 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60805 | /* 172265 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60806 | /* 172269 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60807 | /* 172273 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60808 | /* 172276 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60809 | /* 172280 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60810 | /* 172284 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60811 | /* 172286 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60812 | /* 172293 */ // (fdiv:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSYrm:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60813 | /* 172293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSYrm), |
| 60814 | /* 172296 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60815 | /* 172298 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60816 | /* 172300 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60817 | /* 172304 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60818 | /* 172309 */ GIR_RootConstrainSelectedInstOperands, |
| 60819 | /* 172310 */ // GIR_Coverage, 2265, |
| 60820 | /* 172310 */ GIR_EraseRootFromParent_Done, |
| 60821 | /* 172311 */ // Label 3790: @172311 |
| 60822 | /* 172311 */ GIM_Try, /*On fail goto*//*Label 3791*/ GIMT_Encode4(172373), // Rule ID 6652 // |
| 60823 | /* 172316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 60824 | /* 172319 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60825 | /* 172323 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60826 | /* 172327 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60827 | /* 172331 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60828 | /* 172335 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60829 | /* 172338 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60830 | /* 172342 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60831 | /* 172346 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60832 | /* 172348 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60833 | /* 172355 */ // (fdiv:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZ256rm:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60834 | /* 172355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ256rm), |
| 60835 | /* 172358 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60836 | /* 172360 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60837 | /* 172362 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60838 | /* 172366 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60839 | /* 172371 */ GIR_RootConstrainSelectedInstOperands, |
| 60840 | /* 172372 */ // GIR_Coverage, 6652, |
| 60841 | /* 172372 */ GIR_EraseRootFromParent_Done, |
| 60842 | /* 172373 */ // Label 3791: @172373 |
| 60843 | /* 172373 */ GIM_Try, /*On fail goto*//*Label 3792*/ GIMT_Encode4(172404), // Rule ID 2263 // |
| 60844 | /* 172378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 60845 | /* 172381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60846 | /* 172385 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60847 | /* 172389 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 60848 | /* 172393 */ // (fdiv:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VDIVPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 60849 | /* 172393 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSYrr), |
| 60850 | /* 172398 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60851 | /* 172402 */ GIR_RootConstrainSelectedInstOperands, |
| 60852 | /* 172403 */ // GIR_Coverage, 2263, |
| 60853 | /* 172403 */ GIR_Done, |
| 60854 | /* 172404 */ // Label 3792: @172404 |
| 60855 | /* 172404 */ GIM_Try, /*On fail goto*//*Label 3793*/ GIMT_Encode4(172435), // Rule ID 6648 // |
| 60856 | /* 172409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 60857 | /* 172412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60858 | /* 172416 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60859 | /* 172420 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60860 | /* 172424 */ // (fdiv:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VDIVPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 60861 | /* 172424 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ256rr), |
| 60862 | /* 172429 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60863 | /* 172433 */ GIR_RootConstrainSelectedInstOperands, |
| 60864 | /* 172434 */ // GIR_Coverage, 6648, |
| 60865 | /* 172434 */ GIR_Done, |
| 60866 | /* 172435 */ // Label 3793: @172435 |
| 60867 | /* 172435 */ GIM_Reject, |
| 60868 | /* 172436 */ // Label 3789: @172436 |
| 60869 | /* 172436 */ GIM_Reject, |
| 60870 | /* 172437 */ // Label 3715: @172437 |
| 60871 | /* 172437 */ GIM_Try, /*On fail goto*//*Label 3794*/ GIMT_Encode4(172534), |
| 60872 | /* 172442 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 60873 | /* 172445 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 60874 | /* 172448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60875 | /* 172452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60876 | /* 172456 */ GIM_Try, /*On fail goto*//*Label 3795*/ GIMT_Encode4(172510), // Rule ID 6628 // |
| 60877 | /* 172461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60878 | /* 172464 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60879 | /* 172468 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60880 | /* 172472 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60881 | /* 172475 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60882 | /* 172479 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60883 | /* 172483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60884 | /* 172485 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60885 | /* 172492 */ // (fdiv:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPDZrm:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60886 | /* 172492 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZrm), |
| 60887 | /* 172495 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60888 | /* 172497 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60889 | /* 172499 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60890 | /* 172503 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60891 | /* 172508 */ GIR_RootConstrainSelectedInstOperands, |
| 60892 | /* 172509 */ // GIR_Coverage, 6628, |
| 60893 | /* 172509 */ GIR_EraseRootFromParent_Done, |
| 60894 | /* 172510 */ // Label 3795: @172510 |
| 60895 | /* 172510 */ GIM_Try, /*On fail goto*//*Label 3796*/ GIMT_Encode4(172533), // Rule ID 6624 // |
| 60896 | /* 172515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60897 | /* 172518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60898 | /* 172522 */ // (fdiv:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VDIVPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 60899 | /* 172522 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZrr), |
| 60900 | /* 172527 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60901 | /* 172531 */ GIR_RootConstrainSelectedInstOperands, |
| 60902 | /* 172532 */ // GIR_Coverage, 6624, |
| 60903 | /* 172532 */ GIR_Done, |
| 60904 | /* 172533 */ // Label 3796: @172533 |
| 60905 | /* 172533 */ GIM_Reject, |
| 60906 | /* 172534 */ // Label 3794: @172534 |
| 60907 | /* 172534 */ GIM_Reject, |
| 60908 | /* 172535 */ // Label 3716: @172535 |
| 60909 | /* 172535 */ GIM_Try, /*On fail goto*//*Label 3797*/ GIMT_Encode4(172632), |
| 60910 | /* 172540 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 60911 | /* 172543 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 60912 | /* 172546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60913 | /* 172550 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60914 | /* 172554 */ GIM_Try, /*On fail goto*//*Label 3798*/ GIMT_Encode4(172608), // Rule ID 6712 // |
| 60915 | /* 172559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 60916 | /* 172562 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60917 | /* 172566 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60918 | /* 172570 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60919 | /* 172573 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60920 | /* 172577 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60921 | /* 172581 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60922 | /* 172583 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60923 | /* 172590 */ // (fdiv:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZ256rm:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60924 | /* 172590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ256rm), |
| 60925 | /* 172593 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60926 | /* 172595 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60927 | /* 172597 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60928 | /* 172601 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60929 | /* 172606 */ GIR_RootConstrainSelectedInstOperands, |
| 60930 | /* 172607 */ // GIR_Coverage, 6712, |
| 60931 | /* 172607 */ GIR_EraseRootFromParent_Done, |
| 60932 | /* 172608 */ // Label 3798: @172608 |
| 60933 | /* 172608 */ GIM_Try, /*On fail goto*//*Label 3799*/ GIMT_Encode4(172631), // Rule ID 6708 // |
| 60934 | /* 172613 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 60935 | /* 172616 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 60936 | /* 172620 */ // (fdiv:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VDIVPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 60937 | /* 172620 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ256rr), |
| 60938 | /* 172625 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60939 | /* 172629 */ GIR_RootConstrainSelectedInstOperands, |
| 60940 | /* 172630 */ // GIR_Coverage, 6708, |
| 60941 | /* 172630 */ GIR_Done, |
| 60942 | /* 172631 */ // Label 3799: @172631 |
| 60943 | /* 172631 */ GIM_Reject, |
| 60944 | /* 172632 */ // Label 3797: @172632 |
| 60945 | /* 172632 */ GIM_Reject, |
| 60946 | /* 172633 */ // Label 3717: @172633 |
| 60947 | /* 172633 */ GIM_Try, /*On fail goto*//*Label 3800*/ GIMT_Encode4(172730), |
| 60948 | /* 172638 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 60949 | /* 172641 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 60950 | /* 172644 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60951 | /* 172648 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60952 | /* 172652 */ GIM_Try, /*On fail goto*//*Label 3801*/ GIMT_Encode4(172706), // Rule ID 6616 // |
| 60953 | /* 172657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60954 | /* 172660 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60955 | /* 172664 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60956 | /* 172668 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60957 | /* 172671 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60958 | /* 172675 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60959 | /* 172679 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60960 | /* 172681 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60961 | /* 172688 */ // (fdiv:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPSZrm:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 60962 | /* 172688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZrm), |
| 60963 | /* 172691 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 60964 | /* 172693 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 60965 | /* 172695 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 60966 | /* 172699 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 60967 | /* 172704 */ GIR_RootConstrainSelectedInstOperands, |
| 60968 | /* 172705 */ // GIR_Coverage, 6616, |
| 60969 | /* 172705 */ GIR_EraseRootFromParent_Done, |
| 60970 | /* 172706 */ // Label 3801: @172706 |
| 60971 | /* 172706 */ GIM_Try, /*On fail goto*//*Label 3802*/ GIMT_Encode4(172729), // Rule ID 6612 // |
| 60972 | /* 172711 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 60973 | /* 172714 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60974 | /* 172718 */ // (fdiv:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VDIVPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 60975 | /* 172718 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZrr), |
| 60976 | /* 172723 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 60977 | /* 172727 */ GIR_RootConstrainSelectedInstOperands, |
| 60978 | /* 172728 */ // GIR_Coverage, 6612, |
| 60979 | /* 172728 */ GIR_Done, |
| 60980 | /* 172729 */ // Label 3802: @172729 |
| 60981 | /* 172729 */ GIM_Reject, |
| 60982 | /* 172730 */ // Label 3800: @172730 |
| 60983 | /* 172730 */ GIM_Reject, |
| 60984 | /* 172731 */ // Label 3718: @172731 |
| 60985 | /* 172731 */ GIM_Try, /*On fail goto*//*Label 3803*/ GIMT_Encode4(172828), |
| 60986 | /* 172736 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 60987 | /* 172739 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 60988 | /* 172742 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60989 | /* 172746 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 60990 | /* 172750 */ GIM_Try, /*On fail goto*//*Label 3804*/ GIMT_Encode4(172804), // Rule ID 6688 // |
| 60991 | /* 172755 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 60992 | /* 172758 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 60993 | /* 172762 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 60994 | /* 172766 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 60995 | /* 172769 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 60996 | /* 172773 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 60997 | /* 172777 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 60998 | /* 172779 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 60999 | /* 172786 */ // (fdiv:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VDIVPHZrm:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 61000 | /* 172786 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZrm), |
| 61001 | /* 172789 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61002 | /* 172791 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 61003 | /* 172793 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 61004 | /* 172797 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61005 | /* 172802 */ GIR_RootConstrainSelectedInstOperands, |
| 61006 | /* 172803 */ // GIR_Coverage, 6688, |
| 61007 | /* 172803 */ GIR_EraseRootFromParent_Done, |
| 61008 | /* 172804 */ // Label 3804: @172804 |
| 61009 | /* 172804 */ GIM_Try, /*On fail goto*//*Label 3805*/ GIMT_Encode4(172827), // Rule ID 6684 // |
| 61010 | /* 172809 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61011 | /* 172812 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61012 | /* 172816 */ // (fdiv:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VDIVPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 61013 | /* 172816 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZrr), |
| 61014 | /* 172821 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61015 | /* 172825 */ GIR_RootConstrainSelectedInstOperands, |
| 61016 | /* 172826 */ // GIR_Coverage, 6684, |
| 61017 | /* 172826 */ GIR_Done, |
| 61018 | /* 172827 */ // Label 3805: @172827 |
| 61019 | /* 172827 */ GIM_Reject, |
| 61020 | /* 172828 */ // Label 3803: @172828 |
| 61021 | /* 172828 */ GIM_Reject, |
| 61022 | /* 172829 */ // Label 3719: @172829 |
| 61023 | /* 172829 */ GIM_Reject, |
| 61024 | /* 172830 */ // Label 47: @172830 |
| 61025 | /* 172830 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 3809*/ GIMT_Encode4(172952), |
| 61026 | /* 172841 */ /*GILLT_s32*//*Label 3806*/ GIMT_Encode4(172853), |
| 61027 | /* 172845 */ /*GILLT_s64*//*Label 3807*/ GIMT_Encode4(172886), |
| 61028 | /* 172849 */ /*GILLT_s80*//*Label 3808*/ GIMT_Encode4(172919), |
| 61029 | /* 172853 */ // Label 3806: @172853 |
| 61030 | /* 172853 */ GIM_Try, /*On fail goto*//*Label 3810*/ GIMT_Encode4(172885), // Rule ID 1042 // |
| 61031 | /* 172858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61032 | /* 172861 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61033 | /* 172864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61034 | /* 172868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61035 | /* 172872 */ // (fneg:{ *:[f32] } RFP32:{ *:[f32] }:$src) => (CHS_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src) |
| 61036 | /* 172872 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CHS_Fp32), |
| 61037 | /* 172877 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 61038 | /* 172883 */ GIR_RootConstrainSelectedInstOperands, |
| 61039 | /* 172884 */ // GIR_Coverage, 1042, |
| 61040 | /* 172884 */ GIR_Done, |
| 61041 | /* 172885 */ // Label 3810: @172885 |
| 61042 | /* 172885 */ GIM_Reject, |
| 61043 | /* 172886 */ // Label 3807: @172886 |
| 61044 | /* 172886 */ GIM_Try, /*On fail goto*//*Label 3811*/ GIMT_Encode4(172918), // Rule ID 1043 // |
| 61045 | /* 172891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 61046 | /* 172894 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61047 | /* 172897 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61048 | /* 172901 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61049 | /* 172905 */ // (fneg:{ *:[f64] } RFP64:{ *:[f64] }:$src) => (CHS_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src) |
| 61050 | /* 172905 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CHS_Fp64), |
| 61051 | /* 172910 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 61052 | /* 172916 */ GIR_RootConstrainSelectedInstOperands, |
| 61053 | /* 172917 */ // GIR_Coverage, 1043, |
| 61054 | /* 172917 */ GIR_Done, |
| 61055 | /* 172918 */ // Label 3811: @172918 |
| 61056 | /* 172918 */ GIM_Reject, |
| 61057 | /* 172919 */ // Label 3808: @172919 |
| 61058 | /* 172919 */ GIM_Try, /*On fail goto*//*Label 3812*/ GIMT_Encode4(172951), // Rule ID 1044 // |
| 61059 | /* 172924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 61060 | /* 172927 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 61061 | /* 172930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61062 | /* 172934 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61063 | /* 172938 */ // (fneg:{ *:[f80] } RFP80:{ *:[f80] }:$src) => (CHS_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src) |
| 61064 | /* 172938 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CHS_Fp80), |
| 61065 | /* 172943 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 61066 | /* 172949 */ GIR_RootConstrainSelectedInstOperands, |
| 61067 | /* 172950 */ // GIR_Coverage, 1044, |
| 61068 | /* 172950 */ GIR_Done, |
| 61069 | /* 172951 */ // Label 3812: @172951 |
| 61070 | /* 172951 */ GIM_Reject, |
| 61071 | /* 172952 */ // Label 3809: @172952 |
| 61072 | /* 172952 */ GIM_Reject, |
| 61073 | /* 172953 */ // Label 48: @172953 |
| 61074 | /* 172953 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(20), /*)*//*default:*//*Label 3820*/ GIMT_Encode4(173884), |
| 61075 | /* 172964 */ /*GILLT_s32*//*Label 3813*/ GIMT_Encode4(173032), |
| 61076 | /* 172968 */ /*GILLT_s64*//*Label 3814*/ GIMT_Encode4(173153), |
| 61077 | /* 172972 */ /*GILLT_s80*//*Label 3815*/ GIMT_Encode4(173636), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 61078 | /* 172996 */ /*GILLT_v4s64*//*Label 3816*/ GIMT_Encode4(173697), GIMT_Encode4(0), GIMT_Encode4(0), |
| 61079 | /* 173008 */ /*GILLT_v8s32*//*Label 3817*/ GIMT_Encode4(173761), |
| 61080 | /* 173012 */ /*GILLT_v8s64*//*Label 3818*/ GIMT_Encode4(173792), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 61081 | /* 173028 */ /*GILLT_v16s32*//*Label 3819*/ GIMT_Encode4(173853), |
| 61082 | /* 173032 */ // Label 3813: @173032 |
| 61083 | /* 173032 */ GIM_Try, /*On fail goto*//*Label 3821*/ GIMT_Encode4(173152), |
| 61084 | /* 173037 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61085 | /* 173040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61086 | /* 173044 */ GIM_Try, /*On fail goto*//*Label 3822*/ GIMT_Encode4(173113), // Rule ID 21215 // |
| 61087 | /* 173049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_OptForSize), |
| 61088 | /* 173052 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61089 | /* 173056 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61090 | /* 173060 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61091 | /* 173063 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61092 | /* 173067 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61093 | /* 173071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61094 | /* 173073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61095 | /* 173080 */ // (fpextend:{ *:[f32] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSH2SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 61096 | /* 173080 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 61097 | /* 173083 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61098 | /* 173087 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61099 | /* 173092 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61100 | /* 173094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSH2SSZrm), |
| 61101 | /* 173097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61102 | /* 173099 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61103 | /* 173102 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61104 | /* 173106 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61105 | /* 173111 */ GIR_RootConstrainSelectedInstOperands, |
| 61106 | /* 173112 */ // GIR_Coverage, 21215, |
| 61107 | /* 173112 */ GIR_EraseRootFromParent_Done, |
| 61108 | /* 173113 */ // Label 3822: @173113 |
| 61109 | /* 173113 */ GIM_Try, /*On fail goto*//*Label 3823*/ GIMT_Encode4(173151), // Rule ID 21213 // |
| 61110 | /* 173118 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61111 | /* 173121 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61112 | /* 173125 */ // (fpextend:{ *:[f32] } FR16X:{ *:[f16] }:$src) => (VCVTSH2SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR16X:{ *:[f16] }:$src) |
| 61113 | /* 173125 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 61114 | /* 173128 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61115 | /* 173132 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61116 | /* 173137 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61117 | /* 173139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSH2SSZrr), |
| 61118 | /* 173142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61119 | /* 173144 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61120 | /* 173147 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61121 | /* 173149 */ GIR_RootConstrainSelectedInstOperands, |
| 61122 | /* 173150 */ // GIR_Coverage, 21213, |
| 61123 | /* 173150 */ GIR_EraseRootFromParent_Done, |
| 61124 | /* 173151 */ // Label 3823: @173151 |
| 61125 | /* 173151 */ GIM_Reject, |
| 61126 | /* 173152 */ // Label 3821: @173152 |
| 61127 | /* 173152 */ GIM_Reject, |
| 61128 | /* 173153 */ // Label 3814: @173153 |
| 61129 | /* 173153 */ GIM_Try, /*On fail goto*//*Label 3824*/ GIMT_Encode4(173212), // Rule ID 1894 // |
| 61130 | /* 173158 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE2), |
| 61131 | /* 173161 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61132 | /* 173164 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61133 | /* 173168 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61134 | /* 173172 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61135 | /* 173176 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61136 | /* 173179 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61137 | /* 173183 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61138 | /* 173187 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61139 | /* 173189 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61140 | /* 173196 */ // (fpextend:{ *:[f64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSS2SDrm:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 61141 | /* 173196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSS2SDrm), |
| 61142 | /* 173199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61143 | /* 173201 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61144 | /* 173205 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61145 | /* 173210 */ GIR_RootConstrainSelectedInstOperands, |
| 61146 | /* 173211 */ // GIR_Coverage, 1894, |
| 61147 | /* 173211 */ GIR_EraseRootFromParent_Done, |
| 61148 | /* 173212 */ // Label 3824: @173212 |
| 61149 | /* 173212 */ GIM_Try, /*On fail goto*//*Label 3825*/ GIMT_Encode4(173288), // Rule ID 17992 // |
| 61150 | /* 173217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 61151 | /* 173220 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61152 | /* 173223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61153 | /* 173227 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61154 | /* 173231 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61155 | /* 173235 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61156 | /* 173238 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61157 | /* 173242 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61158 | /* 173246 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61159 | /* 173248 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61160 | /* 173255 */ // (fpextend:{ *:[f64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SDrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 61161 | /* 173255 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61162 | /* 173258 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61163 | /* 173262 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61164 | /* 173267 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61165 | /* 173269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SDrm), |
| 61166 | /* 173272 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61167 | /* 173274 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61168 | /* 173277 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61169 | /* 173281 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61170 | /* 173286 */ GIR_RootConstrainSelectedInstOperands, |
| 61171 | /* 173287 */ // GIR_Coverage, 17992, |
| 61172 | /* 173287 */ GIR_EraseRootFromParent_Done, |
| 61173 | /* 173288 */ // Label 3825: @173288 |
| 61174 | /* 173288 */ GIM_Try, /*On fail goto*//*Label 3826*/ GIMT_Encode4(173364), // Rule ID 21209 // |
| 61175 | /* 173293 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 61176 | /* 173296 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61177 | /* 173299 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61178 | /* 173303 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61179 | /* 173307 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61180 | /* 173311 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61181 | /* 173314 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61182 | /* 173318 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61183 | /* 173322 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61184 | /* 173324 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61185 | /* 173331 */ // (fpextend:{ *:[f64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSS2SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 61186 | /* 173331 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61187 | /* 173334 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61188 | /* 173338 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61189 | /* 173343 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61190 | /* 173345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SDZrm), |
| 61191 | /* 173348 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61192 | /* 173350 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61193 | /* 173353 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61194 | /* 173357 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61195 | /* 173362 */ GIR_RootConstrainSelectedInstOperands, |
| 61196 | /* 173363 */ // GIR_Coverage, 21209, |
| 61197 | /* 173363 */ GIR_EraseRootFromParent_Done, |
| 61198 | /* 173364 */ // Label 3826: @173364 |
| 61199 | /* 173364 */ GIM_Try, /*On fail goto*//*Label 3827*/ GIMT_Encode4(173440), // Rule ID 21219 // |
| 61200 | /* 173369 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_OptForSize), |
| 61201 | /* 173372 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61202 | /* 173375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61203 | /* 173379 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61204 | /* 173383 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61205 | /* 173387 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61206 | /* 173390 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61207 | /* 173394 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61208 | /* 173398 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61209 | /* 173400 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61210 | /* 173407 */ // (fpextend:{ *:[f64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSH2SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 61211 | /* 173407 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61212 | /* 173410 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61213 | /* 173414 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61214 | /* 173419 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61215 | /* 173421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSH2SDZrm), |
| 61216 | /* 173424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61217 | /* 173426 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61218 | /* 173429 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61219 | /* 173433 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61220 | /* 173438 */ GIR_RootConstrainSelectedInstOperands, |
| 61221 | /* 173439 */ // GIR_Coverage, 21219, |
| 61222 | /* 173439 */ GIR_EraseRootFromParent_Done, |
| 61223 | /* 173440 */ // Label 3827: @173440 |
| 61224 | /* 173440 */ GIM_Try, /*On fail goto*//*Label 3828*/ GIMT_Encode4(173470), // Rule ID 1892 // |
| 61225 | /* 173445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61226 | /* 173448 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61227 | /* 173451 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61228 | /* 173455 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61229 | /* 173459 */ // (fpextend:{ *:[f64] } FR32:{ *:[f32] }:$src) => (CVTSS2SDrr:{ *:[f64] } FR32:{ *:[f32] }:$src) |
| 61230 | /* 173459 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSS2SDrr), |
| 61231 | /* 173464 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61232 | /* 173468 */ GIR_RootConstrainSelectedInstOperands, |
| 61233 | /* 173469 */ // GIR_Coverage, 1892, |
| 61234 | /* 173469 */ GIR_Done, |
| 61235 | /* 173470 */ // Label 3828: @173470 |
| 61236 | /* 173470 */ GIM_Try, /*On fail goto*//*Label 3829*/ GIMT_Encode4(173500), // Rule ID 17717 // |
| 61237 | /* 173475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61238 | /* 173478 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61239 | /* 173481 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61240 | /* 173485 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61241 | /* 173489 */ // (fpextend:{ *:[f64] } RFP32:{ *:[f32] }:$src) => (COPY_TO_REGCLASS:{ *:[f64] } RFP32:{ *:[f32] }:$src, RFP64:{ *:[i32] }) |
| 61242 | /* 173489 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61243 | /* 173494 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP64RegClassID), |
| 61244 | /* 173499 */ // GIR_Coverage, 17717, |
| 61245 | /* 173499 */ GIR_Done, |
| 61246 | /* 173500 */ // Label 3829: @173500 |
| 61247 | /* 173500 */ GIM_Try, /*On fail goto*//*Label 3830*/ GIMT_Encode4(173545), // Rule ID 17990 // |
| 61248 | /* 173505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61249 | /* 173508 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61250 | /* 173511 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61251 | /* 173515 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61252 | /* 173519 */ // (fpextend:{ *:[f64] } FR32:{ *:[f32] }:$src) => (VCVTSS2SDrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR32:{ *:[f32] }:$src) |
| 61253 | /* 173519 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61254 | /* 173522 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61255 | /* 173526 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61256 | /* 173531 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61257 | /* 173533 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SDrr), |
| 61258 | /* 173536 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61259 | /* 173538 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61260 | /* 173541 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61261 | /* 173543 */ GIR_RootConstrainSelectedInstOperands, |
| 61262 | /* 173544 */ // GIR_Coverage, 17990, |
| 61263 | /* 173544 */ GIR_EraseRootFromParent_Done, |
| 61264 | /* 173545 */ // Label 3830: @173545 |
| 61265 | /* 173545 */ GIM_Try, /*On fail goto*//*Label 3831*/ GIMT_Encode4(173590), // Rule ID 21207 // |
| 61266 | /* 173550 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61267 | /* 173553 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61268 | /* 173556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61269 | /* 173560 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61270 | /* 173564 */ // (fpextend:{ *:[f64] } FR32X:{ *:[f32] }:$src) => (VCVTSS2SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR32X:{ *:[f32] }:$src) |
| 61271 | /* 173564 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61272 | /* 173567 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61273 | /* 173571 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61274 | /* 173576 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61275 | /* 173578 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SDZrr), |
| 61276 | /* 173581 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61277 | /* 173583 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61278 | /* 173586 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61279 | /* 173588 */ GIR_RootConstrainSelectedInstOperands, |
| 61280 | /* 173589 */ // GIR_Coverage, 21207, |
| 61281 | /* 173589 */ GIR_EraseRootFromParent_Done, |
| 61282 | /* 173590 */ // Label 3831: @173590 |
| 61283 | /* 173590 */ GIM_Try, /*On fail goto*//*Label 3832*/ GIMT_Encode4(173635), // Rule ID 21217 // |
| 61284 | /* 173595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61285 | /* 173598 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61286 | /* 173601 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61287 | /* 173605 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61288 | /* 173609 */ // (fpextend:{ *:[f64] } FR16X:{ *:[f16] }:$src) => (VCVTSH2SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR16X:{ *:[f16] }:$src) |
| 61289 | /* 173609 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 61290 | /* 173612 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61291 | /* 173616 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61292 | /* 173621 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61293 | /* 173623 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSH2SDZrr), |
| 61294 | /* 173626 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61295 | /* 173628 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61296 | /* 173631 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61297 | /* 173633 */ GIR_RootConstrainSelectedInstOperands, |
| 61298 | /* 173634 */ // GIR_Coverage, 21217, |
| 61299 | /* 173634 */ GIR_EraseRootFromParent_Done, |
| 61300 | /* 173635 */ // Label 3832: @173635 |
| 61301 | /* 173635 */ GIM_Reject, |
| 61302 | /* 173636 */ // Label 3815: @173636 |
| 61303 | /* 173636 */ GIM_Try, /*On fail goto*//*Label 3833*/ GIMT_Encode4(173666), // Rule ID 17719 // |
| 61304 | /* 173641 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61305 | /* 173644 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61306 | /* 173647 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61307 | /* 173651 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61308 | /* 173655 */ // (fpextend:{ *:[f80] } RFP32:{ *:[f32] }:$src) => (COPY_TO_REGCLASS:{ *:[f80] } RFP32:{ *:[f32] }:$src, RFP80:{ *:[i32] }) |
| 61309 | /* 173655 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61310 | /* 173660 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP80RegClassID), |
| 61311 | /* 173665 */ // GIR_Coverage, 17719, |
| 61312 | /* 173665 */ GIR_Done, |
| 61313 | /* 173666 */ // Label 3833: @173666 |
| 61314 | /* 173666 */ GIM_Try, /*On fail goto*//*Label 3834*/ GIMT_Encode4(173696), // Rule ID 17721 // |
| 61315 | /* 173671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 61316 | /* 173674 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61317 | /* 173677 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61318 | /* 173681 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61319 | /* 173685 */ // (fpextend:{ *:[f80] } RFP64:{ *:[f64] }:$src) => (COPY_TO_REGCLASS:{ *:[f80] } RFP64:{ *:[f64] }:$src, RFP80:{ *:[i32] }) |
| 61320 | /* 173685 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61321 | /* 173690 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP80RegClassID), |
| 61322 | /* 173695 */ // GIR_Coverage, 17721, |
| 61323 | /* 173695 */ GIR_Done, |
| 61324 | /* 173696 */ // Label 3834: @173696 |
| 61325 | /* 173696 */ GIM_Reject, |
| 61326 | /* 173697 */ // Label 3816: @173697 |
| 61327 | /* 173697 */ GIM_Try, /*On fail goto*//*Label 3835*/ GIMT_Encode4(173760), |
| 61328 | /* 173702 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 61329 | /* 173705 */ GIM_Try, /*On fail goto*//*Label 3836*/ GIMT_Encode4(173732), // Rule ID 1935 // |
| 61330 | /* 173710 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 61331 | /* 173713 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 61332 | /* 173717 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 61333 | /* 173721 */ // (fpextend:{ *:[v4f64] } VR128:{ *:[v4f32] }:$src) => (VCVTPS2PDYrr:{ *:[v4f64] } VR128:{ *:[v4f32] }:$src) |
| 61334 | /* 173721 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2PDYrr), |
| 61335 | /* 173726 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61336 | /* 173730 */ GIR_RootConstrainSelectedInstOperands, |
| 61337 | /* 173731 */ // GIR_Coverage, 1935, |
| 61338 | /* 173731 */ GIR_Done, |
| 61339 | /* 173732 */ // Label 3836: @173732 |
| 61340 | /* 173732 */ GIM_Try, /*On fail goto*//*Label 3837*/ GIMT_Encode4(173759), // Rule ID 10579 // |
| 61341 | /* 173737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 61342 | /* 173740 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61343 | /* 173744 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61344 | /* 173748 */ // (fpextend:{ *:[v4f64] } VR128X:{ *:[v4f32] }:$src) => (VCVTPS2PDZ256rr:{ *:[v4f64] } VR128X:{ *:[v4f32] }:$src) |
| 61345 | /* 173748 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2PDZ256rr), |
| 61346 | /* 173753 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61347 | /* 173757 */ GIR_RootConstrainSelectedInstOperands, |
| 61348 | /* 173758 */ // GIR_Coverage, 10579, |
| 61349 | /* 173758 */ GIR_Done, |
| 61350 | /* 173759 */ // Label 3837: @173759 |
| 61351 | /* 173759 */ GIM_Reject, |
| 61352 | /* 173760 */ // Label 3835: @173760 |
| 61353 | /* 173760 */ GIM_Reject, |
| 61354 | /* 173761 */ // Label 3817: @173761 |
| 61355 | /* 173761 */ GIM_Try, /*On fail goto*//*Label 3838*/ GIMT_Encode4(173791), // Rule ID 10642 // |
| 61356 | /* 173766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 61357 | /* 173769 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 61358 | /* 173772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61359 | /* 173776 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61360 | /* 173780 */ // (fpextend:{ *:[v8f32] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2PSXZ256rr:{ *:[v8f32] } VR128X:{ *:[v8f16] }:$src) |
| 61361 | /* 173780 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2PSXZ256rr), |
| 61362 | /* 173785 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61363 | /* 173789 */ GIR_RootConstrainSelectedInstOperands, |
| 61364 | /* 173790 */ // GIR_Coverage, 10642, |
| 61365 | /* 173790 */ GIR_Done, |
| 61366 | /* 173791 */ // Label 3838: @173791 |
| 61367 | /* 173791 */ GIM_Reject, |
| 61368 | /* 173792 */ // Label 3818: @173792 |
| 61369 | /* 173792 */ GIM_Try, /*On fail goto*//*Label 3839*/ GIMT_Encode4(173822), // Rule ID 10554 // |
| 61370 | /* 173797 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61371 | /* 173800 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 61372 | /* 173803 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61373 | /* 173807 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61374 | /* 173811 */ // (fpextend:{ *:[v8f64] } VR256X:{ *:[v8f32] }:$src) => (VCVTPS2PDZrr:{ *:[v8f64] } VR256X:{ *:[v8f32] }:$src) |
| 61375 | /* 173811 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPS2PDZrr), |
| 61376 | /* 173816 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61377 | /* 173820 */ GIR_RootConstrainSelectedInstOperands, |
| 61378 | /* 173821 */ // GIR_Coverage, 10554, |
| 61379 | /* 173821 */ GIR_Done, |
| 61380 | /* 173822 */ // Label 3839: @173822 |
| 61381 | /* 173822 */ GIM_Try, /*On fail goto*//*Label 3840*/ GIMT_Encode4(173852), // Rule ID 10668 // |
| 61382 | /* 173827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61383 | /* 173830 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 61384 | /* 173833 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61385 | /* 173837 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 61386 | /* 173841 */ // (fpextend:{ *:[v8f64] } VR128X:{ *:[v8f16] }:$src) => (VCVTPH2PDZrr:{ *:[v8f64] } VR128X:{ *:[v8f16] }:$src) |
| 61387 | /* 173841 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2PDZrr), |
| 61388 | /* 173846 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61389 | /* 173850 */ GIR_RootConstrainSelectedInstOperands, |
| 61390 | /* 173851 */ // GIR_Coverage, 10668, |
| 61391 | /* 173851 */ GIR_Done, |
| 61392 | /* 173852 */ // Label 3840: @173852 |
| 61393 | /* 173852 */ GIM_Reject, |
| 61394 | /* 173853 */ // Label 3819: @173853 |
| 61395 | /* 173853 */ GIM_Try, /*On fail goto*//*Label 3841*/ GIMT_Encode4(173883), // Rule ID 10617 // |
| 61396 | /* 173858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61397 | /* 173861 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 61398 | /* 173864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 61399 | /* 173868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 61400 | /* 173872 */ // (fpextend:{ *:[v16f32] } VR256X:{ *:[v16f16] }:$src) => (VCVTPH2PSXZrr:{ *:[v16f32] } VR256X:{ *:[v16f16] }:$src) |
| 61401 | /* 173872 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTPH2PSXZrr), |
| 61402 | /* 173877 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61403 | /* 173881 */ GIR_RootConstrainSelectedInstOperands, |
| 61404 | /* 173882 */ // GIR_Coverage, 10617, |
| 61405 | /* 173882 */ GIR_Done, |
| 61406 | /* 173883 */ // Label 3841: @173883 |
| 61407 | /* 173883 */ GIM_Reject, |
| 61408 | /* 173884 */ // Label 3820: @173884 |
| 61409 | /* 173884 */ GIM_Reject, |
| 61410 | /* 173885 */ // Label 49: @173885 |
| 61411 | /* 173885 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 3845*/ GIMT_Encode4(174270), |
| 61412 | /* 173896 */ /*GILLT_s16*//*Label 3842*/ GIMT_Encode4(173908), |
| 61413 | /* 173900 */ /*GILLT_s32*//*Label 3843*/ GIMT_Encode4(173999), |
| 61414 | /* 173904 */ /*GILLT_s64*//*Label 3844*/ GIMT_Encode4(174239), |
| 61415 | /* 173908 */ // Label 3842: @173908 |
| 61416 | /* 173908 */ GIM_Try, /*On fail goto*//*Label 3846*/ GIMT_Encode4(173953), // Rule ID 21221 // |
| 61417 | /* 173913 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61418 | /* 173916 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61419 | /* 173919 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61420 | /* 173923 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61421 | /* 173927 */ // (fpround:{ *:[f16] } FR32X:{ *:[f32] }:$src) => (VCVTSS2SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), FR32X:{ *:[f32] }:$src) |
| 61422 | /* 173927 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 61423 | /* 173930 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61424 | /* 173934 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61425 | /* 173939 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61426 | /* 173941 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSS2SHZrr), |
| 61427 | /* 173944 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61428 | /* 173946 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61429 | /* 173949 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61430 | /* 173951 */ GIR_RootConstrainSelectedInstOperands, |
| 61431 | /* 173952 */ // GIR_Coverage, 21221, |
| 61432 | /* 173952 */ GIR_EraseRootFromParent_Done, |
| 61433 | /* 173953 */ // Label 3846: @173953 |
| 61434 | /* 173953 */ GIM_Try, /*On fail goto*//*Label 3847*/ GIMT_Encode4(173998), // Rule ID 21223 // |
| 61435 | /* 173958 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61436 | /* 173961 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61437 | /* 173964 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61438 | /* 173968 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61439 | /* 173972 */ // (fpround:{ *:[f16] } FR64X:{ *:[f64] }:$src) => (VCVTSD2SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), FR64X:{ *:[f64] }:$src) |
| 61440 | /* 173972 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 61441 | /* 173975 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61442 | /* 173979 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61443 | /* 173984 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61444 | /* 173986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SHZrr), |
| 61445 | /* 173989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61446 | /* 173991 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61447 | /* 173994 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61448 | /* 173996 */ GIR_RootConstrainSelectedInstOperands, |
| 61449 | /* 173997 */ // GIR_Coverage, 21223, |
| 61450 | /* 173997 */ GIR_EraseRootFromParent_Done, |
| 61451 | /* 173998 */ // Label 3847: @173998 |
| 61452 | /* 173998 */ GIM_Reject, |
| 61453 | /* 173999 */ // Label 3843: @173999 |
| 61454 | /* 173999 */ GIM_Try, /*On fail goto*//*Label 3848*/ GIMT_Encode4(174058), // Rule ID 1882 // |
| 61455 | /* 174004 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE2), |
| 61456 | /* 174007 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61457 | /* 174010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61458 | /* 174014 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61459 | /* 174018 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61460 | /* 174022 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61461 | /* 174025 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61462 | /* 174029 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61463 | /* 174033 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61464 | /* 174035 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61465 | /* 174042 */ // (fpround:{ *:[f32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSD2SSrm:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 61466 | /* 174042 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSD2SSrm), |
| 61467 | /* 174045 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61468 | /* 174047 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61469 | /* 174051 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61470 | /* 174056 */ GIR_RootConstrainSelectedInstOperands, |
| 61471 | /* 174057 */ // GIR_Coverage, 1882, |
| 61472 | /* 174057 */ GIR_EraseRootFromParent_Done, |
| 61473 | /* 174058 */ // Label 3848: @174058 |
| 61474 | /* 174058 */ GIM_Try, /*On fail goto*//*Label 3849*/ GIMT_Encode4(174088), // Rule ID 1880 // |
| 61475 | /* 174063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61476 | /* 174066 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61477 | /* 174069 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61478 | /* 174073 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61479 | /* 174077 */ // (fpround:{ *:[f32] } FR64:{ *:[f64] }:$src) => (CVTSD2SSrr:{ *:[f32] } FR64:{ *:[f64] }:$src) |
| 61480 | /* 174077 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSD2SSrr), |
| 61481 | /* 174082 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61482 | /* 174086 */ GIR_RootConstrainSelectedInstOperands, |
| 61483 | /* 174087 */ // GIR_Coverage, 1880, |
| 61484 | /* 174087 */ GIR_Done, |
| 61485 | /* 174088 */ // Label 3849: @174088 |
| 61486 | /* 174088 */ GIM_Try, /*On fail goto*//*Label 3850*/ GIMT_Encode4(174118), // Rule ID 17723 // |
| 61487 | /* 174093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61488 | /* 174096 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61489 | /* 174099 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61490 | /* 174103 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61491 | /* 174107 */ // (fpround:{ *:[f32] } RFP64:{ *:[f64] }:$src) => (COPY_TO_REGCLASS:{ *:[f32] } RFP64:{ *:[f64] }:$src, RFP32:{ *:[i32] }) |
| 61492 | /* 174107 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61493 | /* 174112 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP32RegClassID), |
| 61494 | /* 174117 */ // GIR_Coverage, 17723, |
| 61495 | /* 174117 */ GIR_Done, |
| 61496 | /* 174118 */ // Label 3850: @174118 |
| 61497 | /* 174118 */ GIM_Try, /*On fail goto*//*Label 3851*/ GIMT_Encode4(174148), // Rule ID 17725 // |
| 61498 | /* 174123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 61499 | /* 174126 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 61500 | /* 174129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 61501 | /* 174133 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61502 | /* 174137 */ // (fpround:{ *:[f32] } RFP80:{ *:[f80] }:$src) => (COPY_TO_REGCLASS:{ *:[f32] } RFP80:{ *:[f80] }:$src, RFP32:{ *:[i32] }) |
| 61503 | /* 174137 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61504 | /* 174142 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP32RegClassID), |
| 61505 | /* 174147 */ // GIR_Coverage, 17725, |
| 61506 | /* 174147 */ GIR_Done, |
| 61507 | /* 174148 */ // Label 3851: @174148 |
| 61508 | /* 174148 */ GIM_Try, /*On fail goto*//*Label 3852*/ GIMT_Encode4(174193), // Rule ID 17988 // |
| 61509 | /* 174153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61510 | /* 174156 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61511 | /* 174159 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61512 | /* 174163 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61513 | /* 174167 */ // (fpround:{ *:[f32] } FR64:{ *:[f64] }:$src) => (VCVTSD2SSrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR64:{ *:[f64] }:$src) |
| 61514 | /* 174167 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 61515 | /* 174170 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61516 | /* 174174 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61517 | /* 174179 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61518 | /* 174181 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SSrr), |
| 61519 | /* 174184 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61520 | /* 174186 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61521 | /* 174189 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61522 | /* 174191 */ GIR_RootConstrainSelectedInstOperands, |
| 61523 | /* 174192 */ // GIR_Coverage, 17988, |
| 61524 | /* 174192 */ GIR_EraseRootFromParent_Done, |
| 61525 | /* 174193 */ // Label 3852: @174193 |
| 61526 | /* 174193 */ GIM_Try, /*On fail goto*//*Label 3853*/ GIMT_Encode4(174238), // Rule ID 21211 // |
| 61527 | /* 174198 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61528 | /* 174201 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61529 | /* 174204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61530 | /* 174208 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61531 | /* 174212 */ // (fpround:{ *:[f32] } FR64X:{ *:[f64] }:$src) => (VCVTSD2SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR64X:{ *:[f64] }:$src) |
| 61532 | /* 174212 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 61533 | /* 174215 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 61534 | /* 174219 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 61535 | /* 174224 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 61536 | /* 174226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSD2SSZrr), |
| 61537 | /* 174229 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61538 | /* 174231 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 61539 | /* 174234 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 61540 | /* 174236 */ GIR_RootConstrainSelectedInstOperands, |
| 61541 | /* 174237 */ // GIR_Coverage, 21211, |
| 61542 | /* 174237 */ GIR_EraseRootFromParent_Done, |
| 61543 | /* 174238 */ // Label 3853: @174238 |
| 61544 | /* 174238 */ GIM_Reject, |
| 61545 | /* 174239 */ // Label 3844: @174239 |
| 61546 | /* 174239 */ GIM_Try, /*On fail goto*//*Label 3854*/ GIMT_Encode4(174269), // Rule ID 17727 // |
| 61547 | /* 174244 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 61548 | /* 174247 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 61549 | /* 174250 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 61550 | /* 174254 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 61551 | /* 174258 */ // (fpround:{ *:[f64] } RFP80:{ *:[f80] }:$src) => (COPY_TO_REGCLASS:{ *:[f64] } RFP80:{ *:[f80] }:$src, RFP64:{ *:[i32] }) |
| 61552 | /* 174258 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 61553 | /* 174263 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::RFP64RegClassID), |
| 61554 | /* 174268 */ // GIR_Coverage, 17727, |
| 61555 | /* 174268 */ GIR_Done, |
| 61556 | /* 174269 */ // Label 3854: @174269 |
| 61557 | /* 174269 */ GIM_Reject, |
| 61558 | /* 174270 */ // Label 3845: @174270 |
| 61559 | /* 174270 */ GIM_Reject, |
| 61560 | /* 174271 */ // Label 50: @174271 |
| 61561 | /* 174271 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(11), /*)*//*default:*//*Label 3858*/ GIMT_Encode4(175651), |
| 61562 | /* 174282 */ /*GILLT_s32*//*Label 3855*/ GIMT_Encode4(174314), |
| 61563 | /* 174286 */ /*GILLT_s64*//*Label 3856*/ GIMT_Encode4(174938), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 61564 | /* 174310 */ /*GILLT_v4s32*//*Label 3857*/ GIMT_Encode4(175562), |
| 61565 | /* 174314 */ // Label 3855: @174314 |
| 61566 | /* 174314 */ GIM_Try, /*On fail goto*//*Label 3859*/ GIMT_Encode4(174373), // Rule ID 1742 // |
| 61567 | /* 174319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61568 | /* 174322 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61569 | /* 174325 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61570 | /* 174329 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61571 | /* 174333 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61572 | /* 174337 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61573 | /* 174340 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61574 | /* 174344 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61575 | /* 174348 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61576 | /* 174350 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61577 | /* 174357 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 61578 | /* 174357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SIrm), |
| 61579 | /* 174360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61580 | /* 174362 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61581 | /* 174366 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61582 | /* 174371 */ GIR_RootConstrainSelectedInstOperands, |
| 61583 | /* 174372 */ // GIR_Coverage, 1742, |
| 61584 | /* 174372 */ GIR_EraseRootFromParent_Done, |
| 61585 | /* 174373 */ // Label 3859: @174373 |
| 61586 | /* 174373 */ GIM_Try, /*On fail goto*//*Label 3860*/ GIMT_Encode4(174432), // Rule ID 1750 // |
| 61587 | /* 174378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61588 | /* 174381 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61589 | /* 174384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61590 | /* 174388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61591 | /* 174392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61592 | /* 174396 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61593 | /* 174399 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61594 | /* 174403 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61595 | /* 174407 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61596 | /* 174409 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61597 | /* 174416 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 61598 | /* 174416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SIrm), |
| 61599 | /* 174419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61600 | /* 174421 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61601 | /* 174425 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61602 | /* 174430 */ GIR_RootConstrainSelectedInstOperands, |
| 61603 | /* 174431 */ // GIR_Coverage, 1750, |
| 61604 | /* 174431 */ GIR_EraseRootFromParent_Done, |
| 61605 | /* 174432 */ // Label 3860: @174432 |
| 61606 | /* 174432 */ GIM_Try, /*On fail goto*//*Label 3861*/ GIMT_Encode4(174491), // Rule ID 1766 // |
| 61607 | /* 174437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 61608 | /* 174440 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61609 | /* 174443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61610 | /* 174447 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61611 | /* 174451 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61612 | /* 174455 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61613 | /* 174458 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61614 | /* 174462 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61615 | /* 174466 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61616 | /* 174468 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61617 | /* 174475 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTTSS2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 61618 | /* 174475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTTSS2SIrm), |
| 61619 | /* 174478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61620 | /* 174480 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61621 | /* 174484 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61622 | /* 174489 */ GIR_RootConstrainSelectedInstOperands, |
| 61623 | /* 174490 */ // GIR_Coverage, 1766, |
| 61624 | /* 174490 */ GIR_EraseRootFromParent_Done, |
| 61625 | /* 174491 */ // Label 3861: @174491 |
| 61626 | /* 174491 */ GIM_Try, /*On fail goto*//*Label 3862*/ GIMT_Encode4(174550), // Rule ID 1774 // |
| 61627 | /* 174496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61628 | /* 174499 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61629 | /* 174502 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61630 | /* 174506 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61631 | /* 174510 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61632 | /* 174514 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61633 | /* 174517 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61634 | /* 174521 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61635 | /* 174525 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61636 | /* 174527 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61637 | /* 174534 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTTSD2SIrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 61638 | /* 174534 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTTSD2SIrm), |
| 61639 | /* 174537 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61640 | /* 174539 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61641 | /* 174543 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61642 | /* 174548 */ GIR_RootConstrainSelectedInstOperands, |
| 61643 | /* 174549 */ // GIR_Coverage, 1774, |
| 61644 | /* 174549 */ GIR_EraseRootFromParent_Done, |
| 61645 | /* 174550 */ // Label 3862: @174550 |
| 61646 | /* 174550 */ GIM_Try, /*On fail goto*//*Label 3863*/ GIMT_Encode4(174609), // Rule ID 10367 // |
| 61647 | /* 174555 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61648 | /* 174558 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61649 | /* 174561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61650 | /* 174565 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61651 | /* 174569 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61652 | /* 174573 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61653 | /* 174576 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61654 | /* 174580 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61655 | /* 174584 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61656 | /* 174586 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61657 | /* 174593 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 61658 | /* 174593 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SIZrm), |
| 61659 | /* 174596 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61660 | /* 174598 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61661 | /* 174602 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61662 | /* 174607 */ GIR_RootConstrainSelectedInstOperands, |
| 61663 | /* 174608 */ // GIR_Coverage, 10367, |
| 61664 | /* 174608 */ GIR_EraseRootFromParent_Done, |
| 61665 | /* 174609 */ // Label 3863: @174609 |
| 61666 | /* 174609 */ GIM_Try, /*On fail goto*//*Label 3864*/ GIMT_Encode4(174668), // Rule ID 10385 // |
| 61667 | /* 174614 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61668 | /* 174617 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61669 | /* 174620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61670 | /* 174624 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61671 | /* 174628 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61672 | /* 174632 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61673 | /* 174635 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61674 | /* 174639 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61675 | /* 174643 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61676 | /* 174645 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61677 | /* 174652 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 61678 | /* 174652 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SIZrm), |
| 61679 | /* 174655 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61680 | /* 174657 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61681 | /* 174661 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61682 | /* 174666 */ GIR_RootConstrainSelectedInstOperands, |
| 61683 | /* 174667 */ // GIR_Coverage, 10385, |
| 61684 | /* 174667 */ GIR_EraseRootFromParent_Done, |
| 61685 | /* 174668 */ // Label 3864: @174668 |
| 61686 | /* 174668 */ GIM_Try, /*On fail goto*//*Label 3865*/ GIMT_Encode4(174727), // Rule ID 15175 // |
| 61687 | /* 174673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61688 | /* 174676 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61689 | /* 174679 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61690 | /* 174683 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61691 | /* 174687 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61692 | /* 174691 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61693 | /* 174694 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61694 | /* 174698 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61695 | /* 174702 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61696 | /* 174704 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61697 | /* 174711 */ // (fp_to_sint:{ *:[i32] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 61698 | /* 174711 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrm), |
| 61699 | /* 174714 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61700 | /* 174716 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61701 | /* 174720 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61702 | /* 174725 */ GIR_RootConstrainSelectedInstOperands, |
| 61703 | /* 174726 */ // GIR_Coverage, 15175, |
| 61704 | /* 174726 */ GIR_EraseRootFromParent_Done, |
| 61705 | /* 174727 */ // Label 3865: @174727 |
| 61706 | /* 174727 */ GIM_Try, /*On fail goto*//*Label 3866*/ GIMT_Encode4(174757), // Rule ID 1740 // |
| 61707 | /* 174732 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61708 | /* 174735 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61709 | /* 174738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61710 | /* 174742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61711 | /* 174746 */ // (fp_to_sint:{ *:[i32] } FR32:{ *:[f32] }:$src) => (VCVTTSS2SIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 61712 | /* 174746 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SIrr), |
| 61713 | /* 174751 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61714 | /* 174755 */ GIR_RootConstrainSelectedInstOperands, |
| 61715 | /* 174756 */ // GIR_Coverage, 1740, |
| 61716 | /* 174756 */ GIR_Done, |
| 61717 | /* 174757 */ // Label 3866: @174757 |
| 61718 | /* 174757 */ GIM_Try, /*On fail goto*//*Label 3867*/ GIMT_Encode4(174787), // Rule ID 1748 // |
| 61719 | /* 174762 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61720 | /* 174765 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61721 | /* 174768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61722 | /* 174772 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61723 | /* 174776 */ // (fp_to_sint:{ *:[i32] } FR64:{ *:[f64] }:$src) => (VCVTTSD2SIrr:{ *:[i32] } FR64:{ *:[f64] }:$src) |
| 61724 | /* 174776 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SIrr), |
| 61725 | /* 174781 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61726 | /* 174785 */ GIR_RootConstrainSelectedInstOperands, |
| 61727 | /* 174786 */ // GIR_Coverage, 1748, |
| 61728 | /* 174786 */ GIR_Done, |
| 61729 | /* 174787 */ // Label 3867: @174787 |
| 61730 | /* 174787 */ GIM_Try, /*On fail goto*//*Label 3868*/ GIMT_Encode4(174817), // Rule ID 1764 // |
| 61731 | /* 174792 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 61732 | /* 174795 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61733 | /* 174798 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61734 | /* 174802 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61735 | /* 174806 */ // (fp_to_sint:{ *:[i32] } FR32:{ *:[f32] }:$src) => (CVTTSS2SIrr:{ *:[i32] } FR32:{ *:[f32] }:$src) |
| 61736 | /* 174806 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTTSS2SIrr), |
| 61737 | /* 174811 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61738 | /* 174815 */ GIR_RootConstrainSelectedInstOperands, |
| 61739 | /* 174816 */ // GIR_Coverage, 1764, |
| 61740 | /* 174816 */ GIR_Done, |
| 61741 | /* 174817 */ // Label 3868: @174817 |
| 61742 | /* 174817 */ GIM_Try, /*On fail goto*//*Label 3869*/ GIMT_Encode4(174847), // Rule ID 1772 // |
| 61743 | /* 174822 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61744 | /* 174825 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61745 | /* 174828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61746 | /* 174832 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61747 | /* 174836 */ // (fp_to_sint:{ *:[i32] } FR64:{ *:[f64] }:$src) => (CVTTSD2SIrr:{ *:[i32] } FR64:{ *:[f64] }:$src) |
| 61748 | /* 174836 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTTSD2SIrr), |
| 61749 | /* 174841 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61750 | /* 174845 */ GIR_RootConstrainSelectedInstOperands, |
| 61751 | /* 174846 */ // GIR_Coverage, 1772, |
| 61752 | /* 174846 */ GIR_Done, |
| 61753 | /* 174847 */ // Label 3869: @174847 |
| 61754 | /* 174847 */ GIM_Try, /*On fail goto*//*Label 3870*/ GIMT_Encode4(174877), // Rule ID 10365 // |
| 61755 | /* 174852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61756 | /* 174855 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61757 | /* 174858 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61758 | /* 174862 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61759 | /* 174866 */ // (fp_to_sint:{ *:[i32] } FR32X:{ *:[f32] }:$src) => (VCVTTSS2SIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src) |
| 61760 | /* 174866 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SIZrr), |
| 61761 | /* 174871 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61762 | /* 174875 */ GIR_RootConstrainSelectedInstOperands, |
| 61763 | /* 174876 */ // GIR_Coverage, 10365, |
| 61764 | /* 174876 */ GIR_Done, |
| 61765 | /* 174877 */ // Label 3870: @174877 |
| 61766 | /* 174877 */ GIM_Try, /*On fail goto*//*Label 3871*/ GIMT_Encode4(174907), // Rule ID 10383 // |
| 61767 | /* 174882 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61768 | /* 174885 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61769 | /* 174888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61770 | /* 174892 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61771 | /* 174896 */ // (fp_to_sint:{ *:[i32] } FR64X:{ *:[f64] }:$src) => (VCVTTSD2SIZrr:{ *:[i32] } FR64X:{ *:[f64] }:$src) |
| 61772 | /* 174896 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SIZrr), |
| 61773 | /* 174901 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61774 | /* 174905 */ GIR_RootConstrainSelectedInstOperands, |
| 61775 | /* 174906 */ // GIR_Coverage, 10383, |
| 61776 | /* 174906 */ GIR_Done, |
| 61777 | /* 174907 */ // Label 3871: @174907 |
| 61778 | /* 174907 */ GIM_Try, /*On fail goto*//*Label 3872*/ GIMT_Encode4(174937), // Rule ID 15173 // |
| 61779 | /* 174912 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61780 | /* 174915 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61781 | /* 174918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 61782 | /* 174922 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 61783 | /* 174926 */ // (fp_to_sint:{ *:[i32] } FR16X:{ *:[f16] }:$src) => (VCVTTSH2SIZrr:{ *:[i32] } FR16X:{ *:[f16] }:$src) |
| 61784 | /* 174926 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SIZrr), |
| 61785 | /* 174931 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61786 | /* 174935 */ GIR_RootConstrainSelectedInstOperands, |
| 61787 | /* 174936 */ // GIR_Coverage, 15173, |
| 61788 | /* 174936 */ GIR_Done, |
| 61789 | /* 174937 */ // Label 3872: @174937 |
| 61790 | /* 174937 */ GIM_Reject, |
| 61791 | /* 174938 */ // Label 3856: @174938 |
| 61792 | /* 174938 */ GIM_Try, /*On fail goto*//*Label 3873*/ GIMT_Encode4(174997), // Rule ID 1746 // |
| 61793 | /* 174943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61794 | /* 174946 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61795 | /* 174949 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61796 | /* 174953 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61797 | /* 174957 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61798 | /* 174961 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61799 | /* 174964 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61800 | /* 174968 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61801 | /* 174972 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61802 | /* 174974 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61803 | /* 174981 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 61804 | /* 174981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SI64rm), |
| 61805 | /* 174984 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61806 | /* 174986 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61807 | /* 174990 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61808 | /* 174995 */ GIR_RootConstrainSelectedInstOperands, |
| 61809 | /* 174996 */ // GIR_Coverage, 1746, |
| 61810 | /* 174996 */ GIR_EraseRootFromParent_Done, |
| 61811 | /* 174997 */ // Label 3873: @174997 |
| 61812 | /* 174997 */ GIM_Try, /*On fail goto*//*Label 3874*/ GIMT_Encode4(175056), // Rule ID 1754 // |
| 61813 | /* 175002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61814 | /* 175005 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61815 | /* 175008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61816 | /* 175012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61817 | /* 175016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61818 | /* 175020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61819 | /* 175023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61820 | /* 175027 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61821 | /* 175031 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61822 | /* 175033 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61823 | /* 175040 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 61824 | /* 175040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SI64rm), |
| 61825 | /* 175043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61826 | /* 175045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61827 | /* 175049 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61828 | /* 175054 */ GIR_RootConstrainSelectedInstOperands, |
| 61829 | /* 175055 */ // GIR_Coverage, 1754, |
| 61830 | /* 175055 */ GIR_EraseRootFromParent_Done, |
| 61831 | /* 175056 */ // Label 3874: @175056 |
| 61832 | /* 175056 */ GIM_Try, /*On fail goto*//*Label 3875*/ GIMT_Encode4(175115), // Rule ID 1770 // |
| 61833 | /* 175061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 61834 | /* 175064 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61835 | /* 175067 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61836 | /* 175071 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61837 | /* 175075 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61838 | /* 175079 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61839 | /* 175082 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61840 | /* 175086 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61841 | /* 175090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61842 | /* 175092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61843 | /* 175099 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTTSS2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 61844 | /* 175099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTTSS2SI64rm), |
| 61845 | /* 175102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61846 | /* 175104 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61847 | /* 175108 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61848 | /* 175113 */ GIR_RootConstrainSelectedInstOperands, |
| 61849 | /* 175114 */ // GIR_Coverage, 1770, |
| 61850 | /* 175114 */ GIR_EraseRootFromParent_Done, |
| 61851 | /* 175115 */ // Label 3875: @175115 |
| 61852 | /* 175115 */ GIM_Try, /*On fail goto*//*Label 3876*/ GIMT_Encode4(175174), // Rule ID 1778 // |
| 61853 | /* 175120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61854 | /* 175123 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61855 | /* 175126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61856 | /* 175130 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61857 | /* 175134 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61858 | /* 175138 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61859 | /* 175141 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61860 | /* 175145 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61861 | /* 175149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61862 | /* 175151 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61863 | /* 175158 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTTSD2SI64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 61864 | /* 175158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTTSD2SI64rm), |
| 61865 | /* 175161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61866 | /* 175163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61867 | /* 175167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61868 | /* 175172 */ GIR_RootConstrainSelectedInstOperands, |
| 61869 | /* 175173 */ // GIR_Coverage, 1778, |
| 61870 | /* 175173 */ GIR_EraseRootFromParent_Done, |
| 61871 | /* 175174 */ // Label 3876: @175174 |
| 61872 | /* 175174 */ GIM_Try, /*On fail goto*//*Label 3877*/ GIMT_Encode4(175233), // Rule ID 10376 // |
| 61873 | /* 175179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61874 | /* 175182 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61875 | /* 175185 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61876 | /* 175189 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61877 | /* 175193 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61878 | /* 175197 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61879 | /* 175200 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61880 | /* 175204 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61881 | /* 175208 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61882 | /* 175210 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61883 | /* 175217 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 61884 | /* 175217 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SI64Zrm), |
| 61885 | /* 175220 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61886 | /* 175222 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61887 | /* 175226 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61888 | /* 175231 */ GIR_RootConstrainSelectedInstOperands, |
| 61889 | /* 175232 */ // GIR_Coverage, 10376, |
| 61890 | /* 175232 */ GIR_EraseRootFromParent_Done, |
| 61891 | /* 175233 */ // Label 3877: @175233 |
| 61892 | /* 175233 */ GIM_Try, /*On fail goto*//*Label 3878*/ GIMT_Encode4(175292), // Rule ID 10394 // |
| 61893 | /* 175238 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61894 | /* 175241 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61895 | /* 175244 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61896 | /* 175248 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61897 | /* 175252 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61898 | /* 175256 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61899 | /* 175259 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61900 | /* 175263 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61901 | /* 175267 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61902 | /* 175269 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61903 | /* 175276 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 61904 | /* 175276 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SI64Zrm), |
| 61905 | /* 175279 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61906 | /* 175281 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61907 | /* 175285 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61908 | /* 175290 */ GIR_RootConstrainSelectedInstOperands, |
| 61909 | /* 175291 */ // GIR_Coverage, 10394, |
| 61910 | /* 175291 */ GIR_EraseRootFromParent_Done, |
| 61911 | /* 175292 */ // Label 3878: @175292 |
| 61912 | /* 175292 */ GIM_Try, /*On fail goto*//*Label 3879*/ GIMT_Encode4(175351), // Rule ID 15184 // |
| 61913 | /* 175297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 61914 | /* 175300 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 61915 | /* 175303 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61916 | /* 175307 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 61917 | /* 175311 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 61918 | /* 175315 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 61919 | /* 175318 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 61920 | /* 175322 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 61921 | /* 175326 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 61922 | /* 175328 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 61923 | /* 175335 */ // (fp_to_sint:{ *:[i64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2SI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 61924 | /* 175335 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrm), |
| 61925 | /* 175338 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 61926 | /* 175340 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 61927 | /* 175344 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 61928 | /* 175349 */ GIR_RootConstrainSelectedInstOperands, |
| 61929 | /* 175350 */ // GIR_Coverage, 15184, |
| 61930 | /* 175350 */ GIR_EraseRootFromParent_Done, |
| 61931 | /* 175351 */ // Label 3879: @175351 |
| 61932 | /* 175351 */ GIM_Try, /*On fail goto*//*Label 3880*/ GIMT_Encode4(175381), // Rule ID 1744 // |
| 61933 | /* 175356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61934 | /* 175359 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61935 | /* 175362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61936 | /* 175366 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61937 | /* 175370 */ // (fp_to_sint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (VCVTTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 61938 | /* 175370 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SI64rr), |
| 61939 | /* 175375 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61940 | /* 175379 */ GIR_RootConstrainSelectedInstOperands, |
| 61941 | /* 175380 */ // GIR_Coverage, 1744, |
| 61942 | /* 175380 */ GIR_Done, |
| 61943 | /* 175381 */ // Label 3880: @175381 |
| 61944 | /* 175381 */ GIM_Try, /*On fail goto*//*Label 3881*/ GIMT_Encode4(175411), // Rule ID 1752 // |
| 61945 | /* 175386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 61946 | /* 175389 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61947 | /* 175392 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61948 | /* 175396 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61949 | /* 175400 */ // (fp_to_sint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (VCVTTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 61950 | /* 175400 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SI64rr), |
| 61951 | /* 175405 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61952 | /* 175409 */ GIR_RootConstrainSelectedInstOperands, |
| 61953 | /* 175410 */ // GIR_Coverage, 1752, |
| 61954 | /* 175410 */ GIR_Done, |
| 61955 | /* 175411 */ // Label 3881: @175411 |
| 61956 | /* 175411 */ GIM_Try, /*On fail goto*//*Label 3882*/ GIMT_Encode4(175441), // Rule ID 1768 // |
| 61957 | /* 175416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 61958 | /* 175419 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61959 | /* 175422 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61960 | /* 175426 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 61961 | /* 175430 */ // (fp_to_sint:{ *:[i64] } FR32:{ *:[f32] }:$src) => (CVTTSS2SI64rr:{ *:[i64] } FR32:{ *:[f32] }:$src) |
| 61962 | /* 175430 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTTSS2SI64rr), |
| 61963 | /* 175435 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61964 | /* 175439 */ GIR_RootConstrainSelectedInstOperands, |
| 61965 | /* 175440 */ // GIR_Coverage, 1768, |
| 61966 | /* 175440 */ GIR_Done, |
| 61967 | /* 175441 */ // Label 3882: @175441 |
| 61968 | /* 175441 */ GIM_Try, /*On fail goto*//*Label 3883*/ GIMT_Encode4(175471), // Rule ID 1776 // |
| 61969 | /* 175446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 61970 | /* 175449 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61971 | /* 175452 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61972 | /* 175456 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 61973 | /* 175460 */ // (fp_to_sint:{ *:[i64] } FR64:{ *:[f64] }:$src) => (CVTTSD2SI64rr:{ *:[i64] } FR64:{ *:[f64] }:$src) |
| 61974 | /* 175460 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTTSD2SI64rr), |
| 61975 | /* 175465 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61976 | /* 175469 */ GIR_RootConstrainSelectedInstOperands, |
| 61977 | /* 175470 */ // GIR_Coverage, 1776, |
| 61978 | /* 175470 */ GIR_Done, |
| 61979 | /* 175471 */ // Label 3883: @175471 |
| 61980 | /* 175471 */ GIM_Try, /*On fail goto*//*Label 3884*/ GIMT_Encode4(175501), // Rule ID 10374 // |
| 61981 | /* 175476 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61982 | /* 175479 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 61983 | /* 175482 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61984 | /* 175486 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 61985 | /* 175490 */ // (fp_to_sint:{ *:[i64] } FR32X:{ *:[f32] }:$src) => (VCVTTSS2SI64Zrr:{ *:[i64] } FR32X:{ *:[f32] }:$src) |
| 61986 | /* 175490 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2SI64Zrr), |
| 61987 | /* 175495 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 61988 | /* 175499 */ GIR_RootConstrainSelectedInstOperands, |
| 61989 | /* 175500 */ // GIR_Coverage, 10374, |
| 61990 | /* 175500 */ GIR_Done, |
| 61991 | /* 175501 */ // Label 3884: @175501 |
| 61992 | /* 175501 */ GIM_Try, /*On fail goto*//*Label 3885*/ GIMT_Encode4(175531), // Rule ID 10392 // |
| 61993 | /* 175506 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 61994 | /* 175509 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 61995 | /* 175512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 61996 | /* 175516 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 61997 | /* 175520 */ // (fp_to_sint:{ *:[i64] } FR64X:{ *:[f64] }:$src) => (VCVTTSD2SI64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src) |
| 61998 | /* 175520 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2SI64Zrr), |
| 61999 | /* 175525 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62000 | /* 175529 */ GIR_RootConstrainSelectedInstOperands, |
| 62001 | /* 175530 */ // GIR_Coverage, 10392, |
| 62002 | /* 175530 */ GIR_Done, |
| 62003 | /* 175531 */ // Label 3885: @175531 |
| 62004 | /* 175531 */ GIM_Try, /*On fail goto*//*Label 3886*/ GIMT_Encode4(175561), // Rule ID 15182 // |
| 62005 | /* 175536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62006 | /* 175539 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62007 | /* 175542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62008 | /* 175546 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62009 | /* 175550 */ // (fp_to_sint:{ *:[i64] } FR16X:{ *:[f16] }:$src) => (VCVTTSH2SI64Zrr:{ *:[i64] } FR16X:{ *:[f16] }:$src) |
| 62010 | /* 175550 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2SI64Zrr), |
| 62011 | /* 175555 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62012 | /* 175559 */ GIR_RootConstrainSelectedInstOperands, |
| 62013 | /* 175560 */ // GIR_Coverage, 15182, |
| 62014 | /* 175560 */ GIR_Done, |
| 62015 | /* 175561 */ // Label 3886: @175561 |
| 62016 | /* 175561 */ GIM_Reject, |
| 62017 | /* 175562 */ // Label 3857: @175562 |
| 62018 | /* 175562 */ GIM_Try, /*On fail goto*//*Label 3887*/ GIMT_Encode4(175650), |
| 62019 | /* 175567 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 62020 | /* 175570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 62021 | /* 175574 */ GIM_Try, /*On fail goto*//*Label 3888*/ GIMT_Encode4(175626), // Rule ID 18044 // |
| 62022 | /* 175579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 62023 | /* 175582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62024 | /* 175586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62025 | /* 175590 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62026 | /* 175593 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62027 | /* 175597 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62028 | /* 175601 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62029 | /* 175603 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62030 | /* 175610 */ // (fp_to_sint:{ *:[v4i32] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTPD2DQYrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 62031 | /* 175610 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTPD2DQYrm), |
| 62032 | /* 175613 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62033 | /* 175615 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62034 | /* 175619 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62035 | /* 175624 */ GIR_RootConstrainSelectedInstOperands, |
| 62036 | /* 175625 */ // GIR_Coverage, 18044, |
| 62037 | /* 175625 */ GIR_EraseRootFromParent_Done, |
| 62038 | /* 175626 */ // Label 3888: @175626 |
| 62039 | /* 175626 */ GIM_Try, /*On fail goto*//*Label 3889*/ GIMT_Encode4(175649), // Rule ID 18042 // |
| 62040 | /* 175631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 62041 | /* 175634 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 62042 | /* 175638 */ // (fp_to_sint:{ *:[v4i32] } VR256:{ *:[v4f64] }:$src) => (VCVTTPD2DQYrr:{ *:[v4i32] } VR256:{ *:[v4f64] }:$src) |
| 62043 | /* 175638 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTPD2DQYrr), |
| 62044 | /* 175643 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62045 | /* 175647 */ GIR_RootConstrainSelectedInstOperands, |
| 62046 | /* 175648 */ // GIR_Coverage, 18042, |
| 62047 | /* 175648 */ GIR_Done, |
| 62048 | /* 175649 */ // Label 3889: @175649 |
| 62049 | /* 175649 */ GIM_Reject, |
| 62050 | /* 175650 */ // Label 3887: @175650 |
| 62051 | /* 175650 */ GIM_Reject, |
| 62052 | /* 175651 */ // Label 3858: @175651 |
| 62053 | /* 175651 */ GIM_Reject, |
| 62054 | /* 175652 */ // Label 51: @175652 |
| 62055 | /* 175652 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(5), /*)*//*default:*//*Label 3892*/ GIMT_Encode4(176207), |
| 62056 | /* 175663 */ /*GILLT_s32*//*Label 3890*/ GIMT_Encode4(175671), |
| 62057 | /* 175667 */ /*GILLT_s64*//*Label 3891*/ GIMT_Encode4(175939), |
| 62058 | /* 175671 */ // Label 3890: @175671 |
| 62059 | /* 175671 */ GIM_Try, /*On fail goto*//*Label 3893*/ GIMT_Encode4(175730), // Rule ID 10403 // |
| 62060 | /* 175676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62061 | /* 175679 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62062 | /* 175682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62063 | /* 175686 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62064 | /* 175690 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62065 | /* 175694 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62066 | /* 175697 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62067 | /* 175701 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62068 | /* 175705 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62069 | /* 175707 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62070 | /* 175714 */ // (fp_to_uint:{ *:[i32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2USIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62071 | /* 175714 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2USIZrm), |
| 62072 | /* 175717 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62073 | /* 175719 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62074 | /* 175723 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62075 | /* 175728 */ GIR_RootConstrainSelectedInstOperands, |
| 62076 | /* 175729 */ // GIR_Coverage, 10403, |
| 62077 | /* 175729 */ GIR_EraseRootFromParent_Done, |
| 62078 | /* 175730 */ // Label 3893: @175730 |
| 62079 | /* 175730 */ GIM_Try, /*On fail goto*//*Label 3894*/ GIMT_Encode4(175789), // Rule ID 10421 // |
| 62080 | /* 175735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62081 | /* 175738 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62082 | /* 175741 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62083 | /* 175745 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62084 | /* 175749 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62085 | /* 175753 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62086 | /* 175756 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62087 | /* 175760 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62088 | /* 175764 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62089 | /* 175766 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62090 | /* 175773 */ // (fp_to_uint:{ *:[i32] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2USIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62091 | /* 175773 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2USIZrm), |
| 62092 | /* 175776 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62093 | /* 175778 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62094 | /* 175782 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62095 | /* 175787 */ GIR_RootConstrainSelectedInstOperands, |
| 62096 | /* 175788 */ // GIR_Coverage, 10421, |
| 62097 | /* 175788 */ GIR_EraseRootFromParent_Done, |
| 62098 | /* 175789 */ // Label 3894: @175789 |
| 62099 | /* 175789 */ GIM_Try, /*On fail goto*//*Label 3895*/ GIMT_Encode4(175848), // Rule ID 15193 // |
| 62100 | /* 175794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62101 | /* 175797 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62102 | /* 175800 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62103 | /* 175804 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62104 | /* 175808 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62105 | /* 175812 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62106 | /* 175815 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62107 | /* 175819 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62108 | /* 175823 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62109 | /* 175825 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62110 | /* 175832 */ // (fp_to_uint:{ *:[i32] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2USIZrm:{ *:[i32] } addr:{ *:[iPTR] }:$src) |
| 62111 | /* 175832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2USIZrm), |
| 62112 | /* 175835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62113 | /* 175837 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62114 | /* 175841 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62115 | /* 175846 */ GIR_RootConstrainSelectedInstOperands, |
| 62116 | /* 175847 */ // GIR_Coverage, 15193, |
| 62117 | /* 175847 */ GIR_EraseRootFromParent_Done, |
| 62118 | /* 175848 */ // Label 3895: @175848 |
| 62119 | /* 175848 */ GIM_Try, /*On fail goto*//*Label 3896*/ GIMT_Encode4(175878), // Rule ID 10401 // |
| 62120 | /* 175853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62121 | /* 175856 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62122 | /* 175859 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62123 | /* 175863 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62124 | /* 175867 */ // (fp_to_uint:{ *:[i32] } FR32X:{ *:[f32] }:$src) => (VCVTTSS2USIZrr:{ *:[i32] } FR32X:{ *:[f32] }:$src) |
| 62125 | /* 175867 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2USIZrr), |
| 62126 | /* 175872 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62127 | /* 175876 */ GIR_RootConstrainSelectedInstOperands, |
| 62128 | /* 175877 */ // GIR_Coverage, 10401, |
| 62129 | /* 175877 */ GIR_Done, |
| 62130 | /* 175878 */ // Label 3896: @175878 |
| 62131 | /* 175878 */ GIM_Try, /*On fail goto*//*Label 3897*/ GIMT_Encode4(175908), // Rule ID 10419 // |
| 62132 | /* 175883 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62133 | /* 175886 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62134 | /* 175889 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62135 | /* 175893 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62136 | /* 175897 */ // (fp_to_uint:{ *:[i32] } FR64X:{ *:[f64] }:$src) => (VCVTTSD2USIZrr:{ *:[i32] } FR64X:{ *:[f64] }:$src) |
| 62137 | /* 175897 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2USIZrr), |
| 62138 | /* 175902 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62139 | /* 175906 */ GIR_RootConstrainSelectedInstOperands, |
| 62140 | /* 175907 */ // GIR_Coverage, 10419, |
| 62141 | /* 175907 */ GIR_Done, |
| 62142 | /* 175908 */ // Label 3897: @175908 |
| 62143 | /* 175908 */ GIM_Try, /*On fail goto*//*Label 3898*/ GIMT_Encode4(175938), // Rule ID 15191 // |
| 62144 | /* 175913 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62145 | /* 175916 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62146 | /* 175919 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62147 | /* 175923 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62148 | /* 175927 */ // (fp_to_uint:{ *:[i32] } FR16X:{ *:[f16] }:$src) => (VCVTTSH2USIZrr:{ *:[i32] } FR16X:{ *:[f16] }:$src) |
| 62149 | /* 175927 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2USIZrr), |
| 62150 | /* 175932 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62151 | /* 175936 */ GIR_RootConstrainSelectedInstOperands, |
| 62152 | /* 175937 */ // GIR_Coverage, 15191, |
| 62153 | /* 175937 */ GIR_Done, |
| 62154 | /* 175938 */ // Label 3898: @175938 |
| 62155 | /* 175938 */ GIM_Reject, |
| 62156 | /* 175939 */ // Label 3891: @175939 |
| 62157 | /* 175939 */ GIM_Try, /*On fail goto*//*Label 3899*/ GIMT_Encode4(175998), // Rule ID 10412 // |
| 62158 | /* 175944 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62159 | /* 175947 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62160 | /* 175950 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62161 | /* 175954 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62162 | /* 175958 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62163 | /* 175962 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62164 | /* 175965 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62165 | /* 175969 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62166 | /* 175973 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62167 | /* 175975 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62168 | /* 175982 */ // (fp_to_uint:{ *:[i64] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSS2USI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62169 | /* 175982 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2USI64Zrm), |
| 62170 | /* 175985 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62171 | /* 175987 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62172 | /* 175991 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62173 | /* 175996 */ GIR_RootConstrainSelectedInstOperands, |
| 62174 | /* 175997 */ // GIR_Coverage, 10412, |
| 62175 | /* 175997 */ GIR_EraseRootFromParent_Done, |
| 62176 | /* 175998 */ // Label 3899: @175998 |
| 62177 | /* 175998 */ GIM_Try, /*On fail goto*//*Label 3900*/ GIMT_Encode4(176057), // Rule ID 10430 // |
| 62178 | /* 176003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62179 | /* 176006 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62180 | /* 176009 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62181 | /* 176013 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62182 | /* 176017 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62183 | /* 176021 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62184 | /* 176024 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62185 | /* 176028 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62186 | /* 176032 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62187 | /* 176034 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62188 | /* 176041 */ // (fp_to_uint:{ *:[i64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSD2USI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62189 | /* 176041 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2USI64Zrm), |
| 62190 | /* 176044 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62191 | /* 176046 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62192 | /* 176050 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62193 | /* 176055 */ GIR_RootConstrainSelectedInstOperands, |
| 62194 | /* 176056 */ // GIR_Coverage, 10430, |
| 62195 | /* 176056 */ GIR_EraseRootFromParent_Done, |
| 62196 | /* 176057 */ // Label 3900: @176057 |
| 62197 | /* 176057 */ GIM_Try, /*On fail goto*//*Label 3901*/ GIMT_Encode4(176116), // Rule ID 15202 // |
| 62198 | /* 176062 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62199 | /* 176065 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62200 | /* 176068 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62201 | /* 176072 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62202 | /* 176076 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62203 | /* 176080 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62204 | /* 176083 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62205 | /* 176087 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62206 | /* 176091 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62207 | /* 176093 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62208 | /* 176100 */ // (fp_to_uint:{ *:[i64] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTTSH2USI64Zrm:{ *:[i64] } addr:{ *:[iPTR] }:$src) |
| 62209 | /* 176100 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2USI64Zrm), |
| 62210 | /* 176103 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62211 | /* 176105 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62212 | /* 176109 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62213 | /* 176114 */ GIR_RootConstrainSelectedInstOperands, |
| 62214 | /* 176115 */ // GIR_Coverage, 15202, |
| 62215 | /* 176115 */ GIR_EraseRootFromParent_Done, |
| 62216 | /* 176116 */ // Label 3901: @176116 |
| 62217 | /* 176116 */ GIM_Try, /*On fail goto*//*Label 3902*/ GIMT_Encode4(176146), // Rule ID 10410 // |
| 62218 | /* 176121 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62219 | /* 176124 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62220 | /* 176127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62221 | /* 176131 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62222 | /* 176135 */ // (fp_to_uint:{ *:[i64] } FR32X:{ *:[f32] }:$src) => (VCVTTSS2USI64Zrr:{ *:[i64] } FR32X:{ *:[f32] }:$src) |
| 62223 | /* 176135 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSS2USI64Zrr), |
| 62224 | /* 176140 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62225 | /* 176144 */ GIR_RootConstrainSelectedInstOperands, |
| 62226 | /* 176145 */ // GIR_Coverage, 10410, |
| 62227 | /* 176145 */ GIR_Done, |
| 62228 | /* 176146 */ // Label 3902: @176146 |
| 62229 | /* 176146 */ GIM_Try, /*On fail goto*//*Label 3903*/ GIMT_Encode4(176176), // Rule ID 10428 // |
| 62230 | /* 176151 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62231 | /* 176154 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62232 | /* 176157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62233 | /* 176161 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62234 | /* 176165 */ // (fp_to_uint:{ *:[i64] } FR64X:{ *:[f64] }:$src) => (VCVTTSD2USI64Zrr:{ *:[i64] } FR64X:{ *:[f64] }:$src) |
| 62235 | /* 176165 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSD2USI64Zrr), |
| 62236 | /* 176170 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62237 | /* 176174 */ GIR_RootConstrainSelectedInstOperands, |
| 62238 | /* 176175 */ // GIR_Coverage, 10428, |
| 62239 | /* 176175 */ GIR_Done, |
| 62240 | /* 176176 */ // Label 3903: @176176 |
| 62241 | /* 176176 */ GIM_Try, /*On fail goto*//*Label 3904*/ GIMT_Encode4(176206), // Rule ID 15200 // |
| 62242 | /* 176181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62243 | /* 176184 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 62244 | /* 176187 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62245 | /* 176191 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62246 | /* 176195 */ // (fp_to_uint:{ *:[i64] } FR16X:{ *:[f16] }:$src) => (VCVTTSH2USI64Zrr:{ *:[i64] } FR16X:{ *:[f16] }:$src) |
| 62247 | /* 176195 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTTSH2USI64Zrr), |
| 62248 | /* 176200 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62249 | /* 176204 */ GIR_RootConstrainSelectedInstOperands, |
| 62250 | /* 176205 */ // GIR_Coverage, 15200, |
| 62251 | /* 176205 */ GIR_Done, |
| 62252 | /* 176206 */ // Label 3904: @176206 |
| 62253 | /* 176206 */ GIM_Reject, |
| 62254 | /* 176207 */ // Label 3892: @176207 |
| 62255 | /* 176207 */ GIM_Reject, |
| 62256 | /* 176208 */ // Label 52: @176208 |
| 62257 | /* 176208 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 3917*/ GIMT_Encode4(179583), |
| 62258 | /* 176219 */ /*GILLT_s16*//*Label 3905*/ GIMT_Encode4(176303), |
| 62259 | /* 176223 */ /*GILLT_s32*//*Label 3906*/ GIMT_Encode4(176546), |
| 62260 | /* 176227 */ /*GILLT_s64*//*Label 3907*/ GIMT_Encode4(177209), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 62261 | /* 176243 */ /*GILLT_v2s64*//*Label 3908*/ GIMT_Encode4(177868), GIMT_Encode4(0), |
| 62262 | /* 176251 */ /*GILLT_v4s32*//*Label 3909*/ GIMT_Encode4(177957), |
| 62263 | /* 176255 */ /*GILLT_v4s64*//*Label 3910*/ GIMT_Encode4(178255), GIMT_Encode4(0), |
| 62264 | /* 176263 */ /*GILLT_v8s16*//*Label 3911*/ GIMT_Encode4(178515), |
| 62265 | /* 176267 */ /*GILLT_v8s32*//*Label 3912*/ GIMT_Encode4(178783), |
| 62266 | /* 176271 */ /*GILLT_v8s64*//*Label 3913*/ GIMT_Encode4(179051), GIMT_Encode4(0), GIMT_Encode4(0), |
| 62267 | /* 176283 */ /*GILLT_v16s16*//*Label 3914*/ GIMT_Encode4(179226), |
| 62268 | /* 176287 */ /*GILLT_v16s32*//*Label 3915*/ GIMT_Encode4(179405), GIMT_Encode4(0), GIMT_Encode4(0), |
| 62269 | /* 176299 */ /*GILLT_v32s16*//*Label 3916*/ GIMT_Encode4(179494), |
| 62270 | /* 176303 */ // Label 3905: @176303 |
| 62271 | /* 176303 */ GIM_Try, /*On fail goto*//*Label 3918*/ GIMT_Encode4(176379), // Rule ID 22240 // |
| 62272 | /* 176308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62273 | /* 176311 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62274 | /* 176314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62275 | /* 176318 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62276 | /* 176322 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62277 | /* 176326 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62278 | /* 176329 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62279 | /* 176333 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62280 | /* 176337 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62281 | /* 176339 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62282 | /* 176346 */ // (sint_to_fp:{ *:[f16] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SHZrm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 62283 | /* 176346 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 62284 | /* 176349 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62285 | /* 176353 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62286 | /* 176358 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62287 | /* 176360 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SHZrm), |
| 62288 | /* 176363 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62289 | /* 176365 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62290 | /* 176368 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62291 | /* 176372 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62292 | /* 176377 */ GIR_RootConstrainSelectedInstOperands, |
| 62293 | /* 176378 */ // GIR_Coverage, 22240, |
| 62294 | /* 176378 */ GIR_EraseRootFromParent_Done, |
| 62295 | /* 176379 */ // Label 3918: @176379 |
| 62296 | /* 176379 */ GIM_Try, /*On fail goto*//*Label 3919*/ GIMT_Encode4(176455), // Rule ID 22238 // |
| 62297 | /* 176384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62298 | /* 176387 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62299 | /* 176390 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62300 | /* 176394 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62301 | /* 176398 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62302 | /* 176402 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62303 | /* 176405 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62304 | /* 176409 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62305 | /* 176413 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62306 | /* 176415 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62307 | /* 176422 */ // (sint_to_fp:{ *:[f16] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SHZrm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 62308 | /* 176422 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 62309 | /* 176425 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62310 | /* 176429 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62311 | /* 176434 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62312 | /* 176436 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SHZrm), |
| 62313 | /* 176439 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62314 | /* 176441 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62315 | /* 176444 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62316 | /* 176448 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62317 | /* 176453 */ GIR_RootConstrainSelectedInstOperands, |
| 62318 | /* 176454 */ // GIR_Coverage, 22238, |
| 62319 | /* 176454 */ GIR_EraseRootFromParent_Done, |
| 62320 | /* 176455 */ // Label 3919: @176455 |
| 62321 | /* 176455 */ GIM_Try, /*On fail goto*//*Label 3920*/ GIMT_Encode4(176500), // Rule ID 22242 // |
| 62322 | /* 176460 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62323 | /* 176463 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62324 | /* 176466 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62325 | /* 176470 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62326 | /* 176474 */ // (sint_to_fp:{ *:[f16] } GR32:{ *:[i32] }:$src) => (VCVTSI2SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), GR32:{ *:[i32] }:$src) |
| 62327 | /* 176474 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 62328 | /* 176477 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62329 | /* 176481 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62330 | /* 176486 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62331 | /* 176488 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SHZrr), |
| 62332 | /* 176491 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62333 | /* 176493 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62334 | /* 176496 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62335 | /* 176498 */ GIR_RootConstrainSelectedInstOperands, |
| 62336 | /* 176499 */ // GIR_Coverage, 22242, |
| 62337 | /* 176499 */ GIR_EraseRootFromParent_Done, |
| 62338 | /* 176500 */ // Label 3920: @176500 |
| 62339 | /* 176500 */ GIM_Try, /*On fail goto*//*Label 3921*/ GIMT_Encode4(176545), // Rule ID 22244 // |
| 62340 | /* 176505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 62341 | /* 176508 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62342 | /* 176511 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 62343 | /* 176515 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62344 | /* 176519 */ // (sint_to_fp:{ *:[f16] } GR64:{ *:[i64] }:$src) => (VCVTSI642SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), GR64:{ *:[i64] }:$src) |
| 62345 | /* 176519 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 62346 | /* 176522 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62347 | /* 176526 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62348 | /* 176531 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62349 | /* 176533 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SHZrr), |
| 62350 | /* 176536 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62351 | /* 176538 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62352 | /* 176541 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62353 | /* 176543 */ GIR_RootConstrainSelectedInstOperands, |
| 62354 | /* 176544 */ // GIR_Coverage, 22244, |
| 62355 | /* 176544 */ GIR_EraseRootFromParent_Done, |
| 62356 | /* 176545 */ // Label 3921: @176545 |
| 62357 | /* 176545 */ GIM_Reject, |
| 62358 | /* 176546 */ // Label 3906: @176546 |
| 62359 | /* 176546 */ GIM_Try, /*On fail goto*//*Label 3922*/ GIMT_Encode4(176605), // Rule ID 1794 // |
| 62360 | /* 176551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62361 | /* 176554 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62362 | /* 176557 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62363 | /* 176561 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62364 | /* 176565 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62365 | /* 176569 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62366 | /* 176572 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62367 | /* 176576 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62368 | /* 176580 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62369 | /* 176582 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62370 | /* 176589 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSI642SSrm:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 62371 | /* 176589 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSI642SSrm), |
| 62372 | /* 176592 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62373 | /* 176594 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62374 | /* 176598 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62375 | /* 176603 */ GIR_RootConstrainSelectedInstOperands, |
| 62376 | /* 176604 */ // GIR_Coverage, 1794, |
| 62377 | /* 176604 */ GIR_EraseRootFromParent_Done, |
| 62378 | /* 176605 */ // Label 3922: @176605 |
| 62379 | /* 176605 */ GIM_Try, /*On fail goto*//*Label 3923*/ GIMT_Encode4(176681), // Rule ID 17966 // |
| 62380 | /* 176610 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62381 | /* 176613 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62382 | /* 176616 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62383 | /* 176620 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62384 | /* 176624 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62385 | /* 176628 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62386 | /* 176631 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62387 | /* 176635 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62388 | /* 176639 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62389 | /* 176641 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62390 | /* 176648 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SSrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 62391 | /* 176648 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62392 | /* 176651 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62393 | /* 176655 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62394 | /* 176660 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62395 | /* 176662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SSrm), |
| 62396 | /* 176665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62397 | /* 176667 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62398 | /* 176670 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62399 | /* 176674 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62400 | /* 176679 */ GIR_RootConstrainSelectedInstOperands, |
| 62401 | /* 176680 */ // GIR_Coverage, 17966, |
| 62402 | /* 176680 */ GIR_EraseRootFromParent_Done, |
| 62403 | /* 176681 */ // Label 3923: @176681 |
| 62404 | /* 176681 */ GIM_Try, /*On fail goto*//*Label 3924*/ GIMT_Encode4(176757), // Rule ID 21141 // |
| 62405 | /* 176686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62406 | /* 176689 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62407 | /* 176692 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62408 | /* 176696 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62409 | /* 176700 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62410 | /* 176704 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62411 | /* 176707 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62412 | /* 176711 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62413 | /* 176715 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62414 | /* 176717 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62415 | /* 176724 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 62416 | /* 176724 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62417 | /* 176727 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62418 | /* 176731 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62419 | /* 176736 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62420 | /* 176738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SSZrm), |
| 62421 | /* 176741 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62422 | /* 176743 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62423 | /* 176746 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62424 | /* 176750 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62425 | /* 176755 */ GIR_RootConstrainSelectedInstOperands, |
| 62426 | /* 176756 */ // GIR_Coverage, 21141, |
| 62427 | /* 176756 */ GIR_EraseRootFromParent_Done, |
| 62428 | /* 176757 */ // Label 3924: @176757 |
| 62429 | /* 176757 */ GIM_Try, /*On fail goto*//*Label 3925*/ GIMT_Encode4(176816), // Rule ID 1790 // |
| 62430 | /* 176762 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62431 | /* 176765 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62432 | /* 176768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62433 | /* 176772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62434 | /* 176776 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62435 | /* 176780 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62436 | /* 176783 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62437 | /* 176787 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62438 | /* 176791 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62439 | /* 176793 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62440 | /* 176800 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (CVTSI2SSrm:{ *:[f32] } addr:{ *:[iPTR] }:$src) |
| 62441 | /* 176800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSI2SSrm), |
| 62442 | /* 176803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62443 | /* 176805 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62444 | /* 176809 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62445 | /* 176814 */ GIR_RootConstrainSelectedInstOperands, |
| 62446 | /* 176815 */ // GIR_Coverage, 1790, |
| 62447 | /* 176815 */ GIR_EraseRootFromParent_Done, |
| 62448 | /* 176816 */ // Label 3925: @176816 |
| 62449 | /* 176816 */ GIM_Try, /*On fail goto*//*Label 3926*/ GIMT_Encode4(176892), // Rule ID 17964 // |
| 62450 | /* 176821 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62451 | /* 176824 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62452 | /* 176827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62453 | /* 176831 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62454 | /* 176835 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62455 | /* 176839 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62456 | /* 176842 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62457 | /* 176846 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62458 | /* 176850 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62459 | /* 176852 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62460 | /* 176859 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SSrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 62461 | /* 176859 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62462 | /* 176862 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62463 | /* 176866 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62464 | /* 176871 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62465 | /* 176873 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SSrm), |
| 62466 | /* 176876 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62467 | /* 176878 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62468 | /* 176881 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62469 | /* 176885 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62470 | /* 176890 */ GIR_RootConstrainSelectedInstOperands, |
| 62471 | /* 176891 */ // GIR_Coverage, 17964, |
| 62472 | /* 176891 */ GIR_EraseRootFromParent_Done, |
| 62473 | /* 176892 */ // Label 3926: @176892 |
| 62474 | /* 176892 */ GIM_Try, /*On fail goto*//*Label 3927*/ GIMT_Encode4(176968), // Rule ID 21139 // |
| 62475 | /* 176897 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62476 | /* 176900 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62477 | /* 176903 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62478 | /* 176907 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62479 | /* 176911 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62480 | /* 176915 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62481 | /* 176918 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62482 | /* 176922 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62483 | /* 176926 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62484 | /* 176928 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62485 | /* 176935 */ // (sint_to_fp:{ *:[f32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 62486 | /* 176935 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62487 | /* 176938 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62488 | /* 176942 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62489 | /* 176947 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62490 | /* 176949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SSZrm), |
| 62491 | /* 176952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62492 | /* 176954 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62493 | /* 176957 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62494 | /* 176961 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62495 | /* 176966 */ GIR_RootConstrainSelectedInstOperands, |
| 62496 | /* 176967 */ // GIR_Coverage, 21139, |
| 62497 | /* 176967 */ GIR_EraseRootFromParent_Done, |
| 62498 | /* 176968 */ // Label 3927: @176968 |
| 62499 | /* 176968 */ GIM_Try, /*On fail goto*//*Label 3928*/ GIMT_Encode4(176998), // Rule ID 1788 // |
| 62500 | /* 176973 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62501 | /* 176976 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62502 | /* 176979 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62503 | /* 176983 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62504 | /* 176987 */ // (sint_to_fp:{ *:[f32] } GR32:{ *:[i32] }:$src) => (CVTSI2SSrr:{ *:[f32] } GR32:{ *:[i32] }:$src) |
| 62505 | /* 176987 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSI2SSrr), |
| 62506 | /* 176992 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62507 | /* 176996 */ GIR_RootConstrainSelectedInstOperands, |
| 62508 | /* 176997 */ // GIR_Coverage, 1788, |
| 62509 | /* 176997 */ GIR_Done, |
| 62510 | /* 176998 */ // Label 3928: @176998 |
| 62511 | /* 176998 */ GIM_Try, /*On fail goto*//*Label 3929*/ GIMT_Encode4(177028), // Rule ID 1792 // |
| 62512 | /* 177003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 62513 | /* 177006 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62514 | /* 177009 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62515 | /* 177013 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62516 | /* 177017 */ // (sint_to_fp:{ *:[f32] } GR64:{ *:[i64] }:$src) => (CVTSI642SSrr:{ *:[f32] } GR64:{ *:[i64] }:$src) |
| 62517 | /* 177017 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSI642SSrr), |
| 62518 | /* 177022 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62519 | /* 177026 */ GIR_RootConstrainSelectedInstOperands, |
| 62520 | /* 177027 */ // GIR_Coverage, 1792, |
| 62521 | /* 177027 */ GIR_Done, |
| 62522 | /* 177028 */ // Label 3929: @177028 |
| 62523 | /* 177028 */ GIM_Try, /*On fail goto*//*Label 3930*/ GIMT_Encode4(177073), // Rule ID 17972 // |
| 62524 | /* 177033 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62525 | /* 177036 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62526 | /* 177039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62527 | /* 177043 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62528 | /* 177047 */ // (sint_to_fp:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VCVTSI2SSrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR32:{ *:[i32] }:$src) |
| 62529 | /* 177047 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62530 | /* 177050 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62531 | /* 177054 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62532 | /* 177059 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62533 | /* 177061 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SSrr), |
| 62534 | /* 177064 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62535 | /* 177066 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62536 | /* 177069 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62537 | /* 177071 */ GIR_RootConstrainSelectedInstOperands, |
| 62538 | /* 177072 */ // GIR_Coverage, 17972, |
| 62539 | /* 177072 */ GIR_EraseRootFromParent_Done, |
| 62540 | /* 177073 */ // Label 3930: @177073 |
| 62541 | /* 177073 */ GIM_Try, /*On fail goto*//*Label 3931*/ GIMT_Encode4(177118), // Rule ID 17974 // |
| 62542 | /* 177078 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62543 | /* 177081 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62544 | /* 177084 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 62545 | /* 177088 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62546 | /* 177092 */ // (sint_to_fp:{ *:[f32] } GR64:{ *:[i64] }:$src) => (VCVTSI642SSrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR64:{ *:[i64] }:$src) |
| 62547 | /* 177092 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62548 | /* 177095 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62549 | /* 177099 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62550 | /* 177104 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62551 | /* 177106 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SSrr), |
| 62552 | /* 177109 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62553 | /* 177111 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62554 | /* 177114 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62555 | /* 177116 */ GIR_RootConstrainSelectedInstOperands, |
| 62556 | /* 177117 */ // GIR_Coverage, 17974, |
| 62557 | /* 177117 */ GIR_EraseRootFromParent_Done, |
| 62558 | /* 177118 */ // Label 3931: @177118 |
| 62559 | /* 177118 */ GIM_Try, /*On fail goto*//*Label 3932*/ GIMT_Encode4(177163), // Rule ID 21147 // |
| 62560 | /* 177123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62561 | /* 177126 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62562 | /* 177129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62563 | /* 177133 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62564 | /* 177137 */ // (sint_to_fp:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VCVTSI2SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR32:{ *:[i32] }:$src) |
| 62565 | /* 177137 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62566 | /* 177140 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62567 | /* 177144 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62568 | /* 177149 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62569 | /* 177151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SSZrr), |
| 62570 | /* 177154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62571 | /* 177156 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62572 | /* 177159 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62573 | /* 177161 */ GIR_RootConstrainSelectedInstOperands, |
| 62574 | /* 177162 */ // GIR_Coverage, 21147, |
| 62575 | /* 177162 */ GIR_EraseRootFromParent_Done, |
| 62576 | /* 177163 */ // Label 3932: @177163 |
| 62577 | /* 177163 */ GIM_Try, /*On fail goto*//*Label 3933*/ GIMT_Encode4(177208), // Rule ID 21149 // |
| 62578 | /* 177168 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62579 | /* 177171 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62580 | /* 177174 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 62581 | /* 177178 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62582 | /* 177182 */ // (sint_to_fp:{ *:[f32] } GR64:{ *:[i64] }:$src) => (VCVTSI642SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR64:{ *:[i64] }:$src) |
| 62583 | /* 177182 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 62584 | /* 177185 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62585 | /* 177189 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62586 | /* 177194 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62587 | /* 177196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SSZrr), |
| 62588 | /* 177199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62589 | /* 177201 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62590 | /* 177204 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62591 | /* 177206 */ GIR_RootConstrainSelectedInstOperands, |
| 62592 | /* 177207 */ // GIR_Coverage, 21149, |
| 62593 | /* 177207 */ GIR_EraseRootFromParent_Done, |
| 62594 | /* 177208 */ // Label 3933: @177208 |
| 62595 | /* 177208 */ GIM_Reject, |
| 62596 | /* 177209 */ // Label 3907: @177209 |
| 62597 | /* 177209 */ GIM_Try, /*On fail goto*//*Label 3934*/ GIMT_Encode4(177268), // Rule ID 1802 // |
| 62598 | /* 177214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62599 | /* 177217 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62600 | /* 177220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62601 | /* 177224 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62602 | /* 177228 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62603 | /* 177232 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62604 | /* 177235 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62605 | /* 177239 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62606 | /* 177243 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62607 | /* 177245 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62608 | /* 177252 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (CVTSI642SDrm:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 62609 | /* 177252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSI642SDrm), |
| 62610 | /* 177255 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62611 | /* 177257 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62612 | /* 177261 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62613 | /* 177266 */ GIR_RootConstrainSelectedInstOperands, |
| 62614 | /* 177267 */ // GIR_Coverage, 1802, |
| 62615 | /* 177267 */ GIR_EraseRootFromParent_Done, |
| 62616 | /* 177268 */ // Label 3934: @177268 |
| 62617 | /* 177268 */ GIM_Try, /*On fail goto*//*Label 3935*/ GIMT_Encode4(177344), // Rule ID 17970 // |
| 62618 | /* 177273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62619 | /* 177276 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62620 | /* 177279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62621 | /* 177283 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62622 | /* 177287 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62623 | /* 177291 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62624 | /* 177294 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62625 | /* 177298 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62626 | /* 177302 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62627 | /* 177304 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62628 | /* 177311 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SDrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 62629 | /* 177311 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 62630 | /* 177314 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62631 | /* 177318 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62632 | /* 177323 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62633 | /* 177325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SDrm), |
| 62634 | /* 177328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62635 | /* 177330 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62636 | /* 177333 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62637 | /* 177337 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62638 | /* 177342 */ GIR_RootConstrainSelectedInstOperands, |
| 62639 | /* 177343 */ // GIR_Coverage, 17970, |
| 62640 | /* 177343 */ GIR_EraseRootFromParent_Done, |
| 62641 | /* 177344 */ // Label 3935: @177344 |
| 62642 | /* 177344 */ GIM_Try, /*On fail goto*//*Label 3936*/ GIMT_Encode4(177420), // Rule ID 21145 // |
| 62643 | /* 177349 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62644 | /* 177352 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62645 | /* 177355 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62646 | /* 177359 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62647 | /* 177363 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62648 | /* 177367 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62649 | /* 177370 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62650 | /* 177374 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62651 | /* 177378 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62652 | /* 177380 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62653 | /* 177387 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTSI642SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 62654 | /* 177387 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 62655 | /* 177390 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62656 | /* 177394 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62657 | /* 177399 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62658 | /* 177401 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SDZrm), |
| 62659 | /* 177404 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62660 | /* 177406 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62661 | /* 177409 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62662 | /* 177413 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62663 | /* 177418 */ GIR_RootConstrainSelectedInstOperands, |
| 62664 | /* 177419 */ // GIR_Coverage, 21145, |
| 62665 | /* 177419 */ GIR_EraseRootFromParent_Done, |
| 62666 | /* 177420 */ // Label 3936: @177420 |
| 62667 | /* 177420 */ GIM_Try, /*On fail goto*//*Label 3937*/ GIMT_Encode4(177479), // Rule ID 1798 // |
| 62668 | /* 177425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62669 | /* 177428 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62670 | /* 177431 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62671 | /* 177435 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62672 | /* 177439 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62673 | /* 177443 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62674 | /* 177446 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62675 | /* 177450 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62676 | /* 177454 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62677 | /* 177456 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62678 | /* 177463 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (CVTSI2SDrm:{ *:[f64] } addr:{ *:[iPTR] }:$src) |
| 62679 | /* 177463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::CVTSI2SDrm), |
| 62680 | /* 177466 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62681 | /* 177468 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62682 | /* 177472 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62683 | /* 177477 */ GIR_RootConstrainSelectedInstOperands, |
| 62684 | /* 177478 */ // GIR_Coverage, 1798, |
| 62685 | /* 177478 */ GIR_EraseRootFromParent_Done, |
| 62686 | /* 177479 */ // Label 3937: @177479 |
| 62687 | /* 177479 */ GIM_Try, /*On fail goto*//*Label 3938*/ GIMT_Encode4(177555), // Rule ID 17968 // |
| 62688 | /* 177484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62689 | /* 177487 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62690 | /* 177490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62691 | /* 177494 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62692 | /* 177498 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62693 | /* 177502 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62694 | /* 177505 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62695 | /* 177509 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62696 | /* 177513 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62697 | /* 177515 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62698 | /* 177522 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SDrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 62699 | /* 177522 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 62700 | /* 177525 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62701 | /* 177529 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62702 | /* 177534 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62703 | /* 177536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SDrm), |
| 62704 | /* 177539 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62705 | /* 177541 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62706 | /* 177544 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62707 | /* 177548 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62708 | /* 177553 */ GIR_RootConstrainSelectedInstOperands, |
| 62709 | /* 177554 */ // GIR_Coverage, 17968, |
| 62710 | /* 177554 */ GIR_EraseRootFromParent_Done, |
| 62711 | /* 177555 */ // Label 3938: @177555 |
| 62712 | /* 177555 */ GIM_Try, /*On fail goto*//*Label 3939*/ GIMT_Encode4(177631), // Rule ID 21143 // |
| 62713 | /* 177560 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62714 | /* 177563 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62715 | /* 177566 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62716 | /* 177570 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62717 | /* 177574 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62718 | /* 177578 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62719 | /* 177581 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62720 | /* 177585 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 62721 | /* 177589 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62722 | /* 177591 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62723 | /* 177598 */ // (sint_to_fp:{ *:[f64] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTSI2SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 62724 | /* 177598 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 62725 | /* 177601 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62726 | /* 177605 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62727 | /* 177610 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62728 | /* 177612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SDZrm), |
| 62729 | /* 177615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62730 | /* 177617 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62731 | /* 177620 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62732 | /* 177624 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62733 | /* 177629 */ GIR_RootConstrainSelectedInstOperands, |
| 62734 | /* 177630 */ // GIR_Coverage, 21143, |
| 62735 | /* 177630 */ GIR_EraseRootFromParent_Done, |
| 62736 | /* 177631 */ // Label 3939: @177631 |
| 62737 | /* 177631 */ GIM_Try, /*On fail goto*//*Label 3940*/ GIMT_Encode4(177657), // Rule ID 1796 // |
| 62738 | /* 177636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62739 | /* 177639 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62740 | /* 177642 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62741 | /* 177646 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62742 | /* 177650 */ // (sint_to_fp:{ *:[f64] } GR32:{ *:[i32] }:$src) => (CVTSI2SDrr:{ *:[f64] } GR32:{ *:[i32] }:$src) |
| 62743 | /* 177650 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSI2SDrr), |
| 62744 | /* 177655 */ GIR_RootConstrainSelectedInstOperands, |
| 62745 | /* 177656 */ // GIR_Coverage, 1796, |
| 62746 | /* 177656 */ GIR_Done, |
| 62747 | /* 177657 */ // Label 3940: @177657 |
| 62748 | /* 177657 */ GIM_Try, /*On fail goto*//*Label 3941*/ GIMT_Encode4(177687), // Rule ID 1800 // |
| 62749 | /* 177662 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62750 | /* 177665 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62751 | /* 177668 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62752 | /* 177672 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62753 | /* 177676 */ // (sint_to_fp:{ *:[f64] } GR64:{ *:[i64] }:$src) => (CVTSI642SDrr:{ *:[f64] } GR64:{ *:[i64] }:$src) |
| 62754 | /* 177676 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTSI642SDrr), |
| 62755 | /* 177681 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62756 | /* 177685 */ GIR_RootConstrainSelectedInstOperands, |
| 62757 | /* 177686 */ // GIR_Coverage, 1800, |
| 62758 | /* 177686 */ GIR_Done, |
| 62759 | /* 177687 */ // Label 3941: @177687 |
| 62760 | /* 177687 */ GIM_Try, /*On fail goto*//*Label 3942*/ GIMT_Encode4(177732), // Rule ID 17976 // |
| 62761 | /* 177692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62762 | /* 177695 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62763 | /* 177698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62764 | /* 177702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62765 | /* 177706 */ // (sint_to_fp:{ *:[f64] } GR32:{ *:[i32] }:$src) => (VCVTSI2SDrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR32:{ *:[i32] }:$src) |
| 62766 | /* 177706 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 62767 | /* 177709 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62768 | /* 177713 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62769 | /* 177718 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62770 | /* 177720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SDrr), |
| 62771 | /* 177723 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62772 | /* 177725 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62773 | /* 177728 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62774 | /* 177730 */ GIR_RootConstrainSelectedInstOperands, |
| 62775 | /* 177731 */ // GIR_Coverage, 17976, |
| 62776 | /* 177731 */ GIR_EraseRootFromParent_Done, |
| 62777 | /* 177732 */ // Label 3942: @177732 |
| 62778 | /* 177732 */ GIM_Try, /*On fail goto*//*Label 3943*/ GIMT_Encode4(177777), // Rule ID 17978 // |
| 62779 | /* 177737 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 62780 | /* 177740 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62781 | /* 177743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 62782 | /* 177747 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62783 | /* 177751 */ // (sint_to_fp:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VCVTSI642SDrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR64:{ *:[i64] }:$src) |
| 62784 | /* 177751 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 62785 | /* 177754 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62786 | /* 177758 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62787 | /* 177763 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62788 | /* 177765 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SDrr), |
| 62789 | /* 177768 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62790 | /* 177770 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62791 | /* 177773 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62792 | /* 177775 */ GIR_RootConstrainSelectedInstOperands, |
| 62793 | /* 177776 */ // GIR_Coverage, 17978, |
| 62794 | /* 177776 */ GIR_EraseRootFromParent_Done, |
| 62795 | /* 177777 */ // Label 3943: @177777 |
| 62796 | /* 177777 */ GIM_Try, /*On fail goto*//*Label 3944*/ GIMT_Encode4(177822), // Rule ID 21151 // |
| 62797 | /* 177782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62798 | /* 177785 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 62799 | /* 177788 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62800 | /* 177792 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 62801 | /* 177796 */ // (sint_to_fp:{ *:[f64] } GR32:{ *:[i32] }:$src) => (VCVTSI2SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR32:{ *:[i32] }:$src) |
| 62802 | /* 177796 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 62803 | /* 177799 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62804 | /* 177803 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62805 | /* 177808 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62806 | /* 177810 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI2SDZrr), |
| 62807 | /* 177813 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62808 | /* 177815 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62809 | /* 177818 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62810 | /* 177820 */ GIR_RootConstrainSelectedInstOperands, |
| 62811 | /* 177821 */ // GIR_Coverage, 21151, |
| 62812 | /* 177821 */ GIR_EraseRootFromParent_Done, |
| 62813 | /* 177822 */ // Label 3944: @177822 |
| 62814 | /* 177822 */ GIM_Try, /*On fail goto*//*Label 3945*/ GIMT_Encode4(177867), // Rule ID 21153 // |
| 62815 | /* 177827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 62816 | /* 177830 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 62817 | /* 177833 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 62818 | /* 177837 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 62819 | /* 177841 */ // (sint_to_fp:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VCVTSI642SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR64:{ *:[i64] }:$src) |
| 62820 | /* 177841 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 62821 | /* 177844 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 62822 | /* 177848 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 62823 | /* 177853 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 62824 | /* 177855 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTSI642SDZrr), |
| 62825 | /* 177858 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62826 | /* 177860 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 62827 | /* 177863 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 62828 | /* 177865 */ GIR_RootConstrainSelectedInstOperands, |
| 62829 | /* 177866 */ // GIR_Coverage, 21153, |
| 62830 | /* 177866 */ GIR_EraseRootFromParent_Done, |
| 62831 | /* 177867 */ // Label 3945: @177867 |
| 62832 | /* 177867 */ GIM_Reject, |
| 62833 | /* 177868 */ // Label 3908: @177868 |
| 62834 | /* 177868 */ GIM_Try, /*On fail goto*//*Label 3946*/ GIMT_Encode4(177956), |
| 62835 | /* 177873 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 62836 | /* 177876 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 62837 | /* 177880 */ GIM_Try, /*On fail goto*//*Label 3947*/ GIMT_Encode4(177932), // Rule ID 11383 // |
| 62838 | /* 177885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 62839 | /* 177888 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62840 | /* 177892 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62841 | /* 177896 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62842 | /* 177899 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62843 | /* 177903 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62844 | /* 177907 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62845 | /* 177909 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62846 | /* 177916 */ // (sint_to_fp:{ *:[v2f64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PDZ128rm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 62847 | /* 177916 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZ128rm), |
| 62848 | /* 177919 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62849 | /* 177921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62850 | /* 177925 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62851 | /* 177930 */ GIR_RootConstrainSelectedInstOperands, |
| 62852 | /* 177931 */ // GIR_Coverage, 11383, |
| 62853 | /* 177931 */ GIR_EraseRootFromParent_Done, |
| 62854 | /* 177932 */ // Label 3947: @177932 |
| 62855 | /* 177932 */ GIM_Try, /*On fail goto*//*Label 3948*/ GIMT_Encode4(177955), // Rule ID 11379 // |
| 62856 | /* 177937 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 62857 | /* 177940 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 62858 | /* 177944 */ // (sint_to_fp:{ *:[v2f64] } VR128X:{ *:[v2i64] }:$src) => (VCVTQQ2PDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2i64] }:$src) |
| 62859 | /* 177944 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZ128rr), |
| 62860 | /* 177949 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62861 | /* 177953 */ GIR_RootConstrainSelectedInstOperands, |
| 62862 | /* 177954 */ // GIR_Coverage, 11379, |
| 62863 | /* 177954 */ GIR_Done, |
| 62864 | /* 177955 */ // Label 3948: @177955 |
| 62865 | /* 177955 */ GIM_Reject, |
| 62866 | /* 177956 */ // Label 3946: @177956 |
| 62867 | /* 177956 */ GIM_Reject, |
| 62868 | /* 177957 */ // Label 3909: @177957 |
| 62869 | /* 177957 */ GIM_Try, /*On fail goto*//*Label 3949*/ GIMT_Encode4(178016), // Rule ID 1870 // |
| 62870 | /* 177962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 62871 | /* 177965 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 62872 | /* 177968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 62873 | /* 177972 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62874 | /* 177976 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62875 | /* 177980 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62876 | /* 177983 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62877 | /* 177987 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62878 | /* 177991 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62879 | /* 177993 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62880 | /* 178000 */ // (sint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSrm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 62881 | /* 178000 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSrm), |
| 62882 | /* 178003 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62883 | /* 178005 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62884 | /* 178009 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62885 | /* 178014 */ GIR_RootConstrainSelectedInstOperands, |
| 62886 | /* 178015 */ // GIR_Coverage, 1870, |
| 62887 | /* 178015 */ GIR_EraseRootFromParent_Done, |
| 62888 | /* 178016 */ // Label 3949: @178016 |
| 62889 | /* 178016 */ GIM_Try, /*On fail goto*//*Label 3950*/ GIMT_Encode4(178075), // Rule ID 10759 // |
| 62890 | /* 178021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 62891 | /* 178024 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 62892 | /* 178027 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 62893 | /* 178031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62894 | /* 178035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62895 | /* 178039 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62896 | /* 178042 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62897 | /* 178046 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62898 | /* 178050 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62899 | /* 178052 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62900 | /* 178059 */ // (sint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSZ128rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 62901 | /* 178059 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZ128rm), |
| 62902 | /* 178062 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62903 | /* 178064 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62904 | /* 178068 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62905 | /* 178073 */ GIR_RootConstrainSelectedInstOperands, |
| 62906 | /* 178074 */ // GIR_Coverage, 10759, |
| 62907 | /* 178074 */ GIR_EraseRootFromParent_Done, |
| 62908 | /* 178075 */ // Label 3950: @178075 |
| 62909 | /* 178075 */ GIM_Try, /*On fail goto*//*Label 3951*/ GIMT_Encode4(178134), // Rule ID 11515 // |
| 62910 | /* 178080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 62911 | /* 178083 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 62912 | /* 178086 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 62913 | /* 178090 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62914 | /* 178094 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62915 | /* 178098 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62916 | /* 178101 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62917 | /* 178105 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62918 | /* 178109 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62919 | /* 178111 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62920 | /* 178118 */ // (sint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PSZ256rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 62921 | /* 178118 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PSZ256rm), |
| 62922 | /* 178121 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62923 | /* 178123 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62924 | /* 178127 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62925 | /* 178132 */ GIR_RootConstrainSelectedInstOperands, |
| 62926 | /* 178133 */ // GIR_Coverage, 11515, |
| 62927 | /* 178133 */ GIR_EraseRootFromParent_Done, |
| 62928 | /* 178134 */ // Label 3951: @178134 |
| 62929 | /* 178134 */ GIM_Try, /*On fail goto*//*Label 3952*/ GIMT_Encode4(178164), // Rule ID 1868 // |
| 62930 | /* 178139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 62931 | /* 178142 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 62932 | /* 178145 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 62933 | /* 178149 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 62934 | /* 178153 */ // (sint_to_fp:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src) => (VCVTDQ2PSrr:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src) |
| 62935 | /* 178153 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSrr), |
| 62936 | /* 178158 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62937 | /* 178162 */ GIR_RootConstrainSelectedInstOperands, |
| 62938 | /* 178163 */ // GIR_Coverage, 1868, |
| 62939 | /* 178163 */ GIR_Done, |
| 62940 | /* 178164 */ // Label 3952: @178164 |
| 62941 | /* 178164 */ GIM_Try, /*On fail goto*//*Label 3953*/ GIMT_Encode4(178194), // Rule ID 1876 // |
| 62942 | /* 178169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 62943 | /* 178172 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 62944 | /* 178175 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 62945 | /* 178179 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 62946 | /* 178183 */ // (sint_to_fp:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src) => (CVTDQ2PSrr:{ *:[v4f32] } VR128:{ *:[v4i32] }:$src) |
| 62947 | /* 178183 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::CVTDQ2PSrr), |
| 62948 | /* 178188 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62949 | /* 178192 */ GIR_RootConstrainSelectedInstOperands, |
| 62950 | /* 178193 */ // GIR_Coverage, 1876, |
| 62951 | /* 178193 */ GIR_Done, |
| 62952 | /* 178194 */ // Label 3953: @178194 |
| 62953 | /* 178194 */ GIM_Try, /*On fail goto*//*Label 3954*/ GIMT_Encode4(178224), // Rule ID 10755 // |
| 62954 | /* 178199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 62955 | /* 178202 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 62956 | /* 178205 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 62957 | /* 178209 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 62958 | /* 178213 */ // (sint_to_fp:{ *:[v4f32] } VR128X:{ *:[v4i32] }:$src) => (VCVTDQ2PSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4i32] }:$src) |
| 62959 | /* 178213 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZ128rr), |
| 62960 | /* 178218 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62961 | /* 178222 */ GIR_RootConstrainSelectedInstOperands, |
| 62962 | /* 178223 */ // GIR_Coverage, 10755, |
| 62963 | /* 178223 */ GIR_Done, |
| 62964 | /* 178224 */ // Label 3954: @178224 |
| 62965 | /* 178224 */ GIM_Try, /*On fail goto*//*Label 3955*/ GIMT_Encode4(178254), // Rule ID 11511 // |
| 62966 | /* 178229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 62967 | /* 178232 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 62968 | /* 178235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 62969 | /* 178239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 62970 | /* 178243 */ // (sint_to_fp:{ *:[v4f32] } VR256X:{ *:[v4i64] }:$src) => (VCVTQQ2PSZ256rr:{ *:[v4f32] } VR256X:{ *:[v4i64] }:$src) |
| 62971 | /* 178243 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PSZ256rr), |
| 62972 | /* 178248 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 62973 | /* 178252 */ GIR_RootConstrainSelectedInstOperands, |
| 62974 | /* 178253 */ // GIR_Coverage, 11511, |
| 62975 | /* 178253 */ GIR_Done, |
| 62976 | /* 178254 */ // Label 3955: @178254 |
| 62977 | /* 178254 */ GIM_Reject, |
| 62978 | /* 178255 */ // Label 3910: @178255 |
| 62979 | /* 178255 */ GIM_Try, /*On fail goto*//*Label 3956*/ GIMT_Encode4(178314), // Rule ID 1945 // |
| 62980 | /* 178260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 62981 | /* 178263 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 62982 | /* 178266 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 62983 | /* 178270 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 62984 | /* 178274 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 62985 | /* 178278 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 62986 | /* 178281 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 62987 | /* 178285 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 62988 | /* 178289 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 62989 | /* 178291 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 62990 | /* 178298 */ // (sint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PDYrm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 62991 | /* 178298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDYrm), |
| 62992 | /* 178301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 62993 | /* 178303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 62994 | /* 178307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 62995 | /* 178312 */ GIR_RootConstrainSelectedInstOperands, |
| 62996 | /* 178313 */ // GIR_Coverage, 1945, |
| 62997 | /* 178313 */ GIR_EraseRootFromParent_Done, |
| 62998 | /* 178314 */ // Label 3956: @178314 |
| 62999 | /* 178314 */ GIM_Try, /*On fail goto*//*Label 3957*/ GIMT_Encode4(178373), // Rule ID 10732 // |
| 63000 | /* 178319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63001 | /* 178322 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63002 | /* 178325 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63003 | /* 178329 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63004 | /* 178333 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63005 | /* 178337 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63006 | /* 178340 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63007 | /* 178344 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63008 | /* 178348 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63009 | /* 178350 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63010 | /* 178357 */ // (sint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 63011 | /* 178357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDZ256rm), |
| 63012 | /* 178360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63013 | /* 178362 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63014 | /* 178366 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63015 | /* 178371 */ GIR_RootConstrainSelectedInstOperands, |
| 63016 | /* 178372 */ // GIR_Coverage, 10732, |
| 63017 | /* 178372 */ GIR_EraseRootFromParent_Done, |
| 63018 | /* 178373 */ // Label 3957: @178373 |
| 63019 | /* 178373 */ GIM_Try, /*On fail goto*//*Label 3958*/ GIMT_Encode4(178432), // Rule ID 11395 // |
| 63020 | /* 178378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63021 | /* 178381 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63022 | /* 178384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63023 | /* 178388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63024 | /* 178392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63025 | /* 178396 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63026 | /* 178399 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63027 | /* 178403 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63028 | /* 178407 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63029 | /* 178409 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63030 | /* 178416 */ // (sint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 63031 | /* 178416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZ256rm), |
| 63032 | /* 178419 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63033 | /* 178421 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63034 | /* 178425 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63035 | /* 178430 */ GIR_RootConstrainSelectedInstOperands, |
| 63036 | /* 178431 */ // GIR_Coverage, 11395, |
| 63037 | /* 178431 */ GIR_EraseRootFromParent_Done, |
| 63038 | /* 178432 */ // Label 3958: @178432 |
| 63039 | /* 178432 */ GIM_Try, /*On fail goto*//*Label 3959*/ GIMT_Encode4(178458), // Rule ID 1947 // |
| 63040 | /* 178437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63041 | /* 178440 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63042 | /* 178443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63043 | /* 178447 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 63044 | /* 178451 */ // (sint_to_fp:{ *:[v4f64] } VR128:{ *:[v4i32] }:$src) => (VCVTDQ2PDYrr:{ *:[v4f64] } VR128:{ *:[v4i32] }:$src) |
| 63045 | /* 178451 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDYrr), |
| 63046 | /* 178456 */ GIR_RootConstrainSelectedInstOperands, |
| 63047 | /* 178457 */ // GIR_Coverage, 1947, |
| 63048 | /* 178457 */ GIR_Done, |
| 63049 | /* 178458 */ // Label 3959: @178458 |
| 63050 | /* 178458 */ GIM_Try, /*On fail goto*//*Label 3960*/ GIMT_Encode4(178484), // Rule ID 10728 // |
| 63051 | /* 178463 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63052 | /* 178466 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63053 | /* 178469 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63054 | /* 178473 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63055 | /* 178477 */ // (sint_to_fp:{ *:[v4f64] } VR128X:{ *:[v4i32] }:$src) => (VCVTDQ2PDZ256rr:{ *:[v4f64] } VR128X:{ *:[v4i32] }:$src) |
| 63056 | /* 178477 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDZ256rr), |
| 63057 | /* 178482 */ GIR_RootConstrainSelectedInstOperands, |
| 63058 | /* 178483 */ // GIR_Coverage, 10728, |
| 63059 | /* 178483 */ GIR_Done, |
| 63060 | /* 178484 */ // Label 3960: @178484 |
| 63061 | /* 178484 */ GIM_Try, /*On fail goto*//*Label 3961*/ GIMT_Encode4(178514), // Rule ID 11391 // |
| 63062 | /* 178489 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63063 | /* 178492 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63064 | /* 178495 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63065 | /* 178499 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63066 | /* 178503 */ // (sint_to_fp:{ *:[v4f64] } VR256X:{ *:[v4i64] }:$src) => (VCVTQQ2PDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4i64] }:$src) |
| 63067 | /* 178503 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZ256rr), |
| 63068 | /* 178508 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63069 | /* 178512 */ GIR_RootConstrainSelectedInstOperands, |
| 63070 | /* 178513 */ // GIR_Coverage, 11391, |
| 63071 | /* 178513 */ GIR_Done, |
| 63072 | /* 178514 */ // Label 3961: @178514 |
| 63073 | /* 178514 */ GIM_Reject, |
| 63074 | /* 178515 */ // Label 3911: @178515 |
| 63075 | /* 178515 */ GIM_Try, /*On fail goto*//*Label 3962*/ GIMT_Encode4(178574), // Rule ID 11461 // |
| 63076 | /* 178520 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63077 | /* 178523 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63078 | /* 178526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63079 | /* 178530 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63080 | /* 178534 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63081 | /* 178538 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63082 | /* 178541 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63083 | /* 178545 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63084 | /* 178549 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63085 | /* 178551 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63086 | /* 178558 */ // (sint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PHZ256rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63087 | /* 178558 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PHZ256rm), |
| 63088 | /* 178561 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63089 | /* 178563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63090 | /* 178567 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63091 | /* 178572 */ GIR_RootConstrainSelectedInstOperands, |
| 63092 | /* 178573 */ // GIR_Coverage, 11461, |
| 63093 | /* 178573 */ GIR_EraseRootFromParent_Done, |
| 63094 | /* 178574 */ // Label 3962: @178574 |
| 63095 | /* 178574 */ GIM_Try, /*On fail goto*//*Label 3963*/ GIMT_Encode4(178633), // Rule ID 14827 // |
| 63096 | /* 178579 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63097 | /* 178582 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 63098 | /* 178585 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63099 | /* 178589 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63100 | /* 178593 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63101 | /* 178597 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63102 | /* 178600 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63103 | /* 178604 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63104 | /* 178608 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63105 | /* 178610 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63106 | /* 178617 */ // (sint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTW2PHZ128rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63107 | /* 178617 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZ128rm), |
| 63108 | /* 178620 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63109 | /* 178622 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63110 | /* 178626 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63111 | /* 178631 */ GIR_RootConstrainSelectedInstOperands, |
| 63112 | /* 178632 */ // GIR_Coverage, 14827, |
| 63113 | /* 178632 */ GIR_EraseRootFromParent_Done, |
| 63114 | /* 178633 */ // Label 3963: @178633 |
| 63115 | /* 178633 */ GIM_Try, /*On fail goto*//*Label 3964*/ GIMT_Encode4(178692), // Rule ID 15127 // |
| 63116 | /* 178638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63117 | /* 178641 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63118 | /* 178644 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63119 | /* 178648 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63120 | /* 178652 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63121 | /* 178656 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63122 | /* 178659 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63123 | /* 178663 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63124 | /* 178667 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63125 | /* 178669 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63126 | /* 178676 */ // (sint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PHZrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63127 | /* 178676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PHZrm), |
| 63128 | /* 178679 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63129 | /* 178681 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63130 | /* 178685 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63131 | /* 178690 */ GIR_RootConstrainSelectedInstOperands, |
| 63132 | /* 178691 */ // GIR_Coverage, 15127, |
| 63133 | /* 178691 */ GIR_EraseRootFromParent_Done, |
| 63134 | /* 178692 */ // Label 3964: @178692 |
| 63135 | /* 178692 */ GIM_Try, /*On fail goto*//*Label 3965*/ GIMT_Encode4(178722), // Rule ID 11457 // |
| 63136 | /* 178697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63137 | /* 178700 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63138 | /* 178703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63139 | /* 178707 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63140 | /* 178711 */ // (sint_to_fp:{ *:[v8f16] } VR256X:{ *:[v8i32] }:$src) => (VCVTDQ2PHZ256rr:{ *:[v8f16] } VR256X:{ *:[v8i32] }:$src) |
| 63141 | /* 178711 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PHZ256rr), |
| 63142 | /* 178716 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63143 | /* 178720 */ GIR_RootConstrainSelectedInstOperands, |
| 63144 | /* 178721 */ // GIR_Coverage, 11457, |
| 63145 | /* 178721 */ GIR_Done, |
| 63146 | /* 178722 */ // Label 3965: @178722 |
| 63147 | /* 178722 */ GIM_Try, /*On fail goto*//*Label 3966*/ GIMT_Encode4(178752), // Rule ID 14823 // |
| 63148 | /* 178727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63149 | /* 178730 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 63150 | /* 178733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63151 | /* 178737 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63152 | /* 178741 */ // (sint_to_fp:{ *:[v8f16] } VR128X:{ *:[v8i16] }:$src) => (VCVTW2PHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8i16] }:$src) |
| 63153 | /* 178741 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZ128rr), |
| 63154 | /* 178746 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63155 | /* 178750 */ GIR_RootConstrainSelectedInstOperands, |
| 63156 | /* 178751 */ // GIR_Coverage, 14823, |
| 63157 | /* 178751 */ GIR_Done, |
| 63158 | /* 178752 */ // Label 3966: @178752 |
| 63159 | /* 178752 */ GIM_Try, /*On fail goto*//*Label 3967*/ GIMT_Encode4(178782), // Rule ID 15123 // |
| 63160 | /* 178757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63161 | /* 178760 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63162 | /* 178763 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63163 | /* 178767 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63164 | /* 178771 */ // (sint_to_fp:{ *:[v8f16] } VR512:{ *:[v8i64] }:$src) => (VCVTQQ2PHZrr:{ *:[v8f16] } VR512:{ *:[v8i64] }:$src) |
| 63165 | /* 178771 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PHZrr), |
| 63166 | /* 178776 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63167 | /* 178780 */ GIR_RootConstrainSelectedInstOperands, |
| 63168 | /* 178781 */ // GIR_Coverage, 15123, |
| 63169 | /* 178781 */ GIR_Done, |
| 63170 | /* 178782 */ // Label 3967: @178782 |
| 63171 | /* 178782 */ GIM_Reject, |
| 63172 | /* 178783 */ // Label 3912: @178783 |
| 63173 | /* 178783 */ GIM_Try, /*On fail goto*//*Label 3968*/ GIMT_Encode4(178842), // Rule ID 1874 // |
| 63174 | /* 178788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63175 | /* 178791 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63176 | /* 178794 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63177 | /* 178798 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63178 | /* 178802 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63179 | /* 178806 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63180 | /* 178809 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63181 | /* 178813 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63182 | /* 178817 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63183 | /* 178819 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63184 | /* 178826 */ // (sint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSYrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 63185 | /* 178826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSYrm), |
| 63186 | /* 178829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63187 | /* 178831 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63188 | /* 178835 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63189 | /* 178840 */ GIR_RootConstrainSelectedInstOperands, |
| 63190 | /* 178841 */ // GIR_Coverage, 1874, |
| 63191 | /* 178841 */ GIR_EraseRootFromParent_Done, |
| 63192 | /* 178842 */ // Label 3968: @178842 |
| 63193 | /* 178842 */ GIM_Try, /*On fail goto*//*Label 3969*/ GIMT_Encode4(178901), // Rule ID 10771 // |
| 63194 | /* 178847 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63195 | /* 178850 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63196 | /* 178853 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63197 | /* 178857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63198 | /* 178861 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63199 | /* 178865 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63200 | /* 178868 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63201 | /* 178872 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63202 | /* 178876 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63203 | /* 178878 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63204 | /* 178885 */ // (sint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSZ256rm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 63205 | /* 178885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZ256rm), |
| 63206 | /* 178888 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63207 | /* 178890 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63208 | /* 178894 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63209 | /* 178899 */ GIR_RootConstrainSelectedInstOperands, |
| 63210 | /* 178900 */ // GIR_Coverage, 10771, |
| 63211 | /* 178900 */ GIR_EraseRootFromParent_Done, |
| 63212 | /* 178901 */ // Label 3969: @178901 |
| 63213 | /* 178901 */ GIM_Try, /*On fail goto*//*Label 3970*/ GIMT_Encode4(178960), // Rule ID 11500 // |
| 63214 | /* 178906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 63215 | /* 178909 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63216 | /* 178912 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63217 | /* 178916 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63218 | /* 178920 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63219 | /* 178924 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63220 | /* 178927 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63221 | /* 178931 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63222 | /* 178935 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63223 | /* 178937 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63224 | /* 178944 */ // (sint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PSZrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 63225 | /* 178944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PSZrm), |
| 63226 | /* 178947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63227 | /* 178949 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63228 | /* 178953 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63229 | /* 178958 */ GIR_RootConstrainSelectedInstOperands, |
| 63230 | /* 178959 */ // GIR_Coverage, 11500, |
| 63231 | /* 178959 */ GIR_EraseRootFromParent_Done, |
| 63232 | /* 178960 */ // Label 3970: @178960 |
| 63233 | /* 178960 */ GIM_Try, /*On fail goto*//*Label 3971*/ GIMT_Encode4(178990), // Rule ID 1872 // |
| 63234 | /* 178965 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 63235 | /* 178968 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63236 | /* 178971 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63237 | /* 178975 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 63238 | /* 178979 */ // (sint_to_fp:{ *:[v8f32] } VR256:{ *:[v8i32] }:$src) => (VCVTDQ2PSYrr:{ *:[v8f32] } VR256:{ *:[v8i32] }:$src) |
| 63239 | /* 178979 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSYrr), |
| 63240 | /* 178984 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63241 | /* 178988 */ GIR_RootConstrainSelectedInstOperands, |
| 63242 | /* 178989 */ // GIR_Coverage, 1872, |
| 63243 | /* 178989 */ GIR_Done, |
| 63244 | /* 178990 */ // Label 3971: @178990 |
| 63245 | /* 178990 */ GIM_Try, /*On fail goto*//*Label 3972*/ GIMT_Encode4(179020), // Rule ID 10767 // |
| 63246 | /* 178995 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63247 | /* 178998 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63248 | /* 179001 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63249 | /* 179005 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63250 | /* 179009 */ // (sint_to_fp:{ *:[v8f32] } VR256X:{ *:[v8i32] }:$src) => (VCVTDQ2PSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8i32] }:$src) |
| 63251 | /* 179009 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZ256rr), |
| 63252 | /* 179014 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63253 | /* 179018 */ GIR_RootConstrainSelectedInstOperands, |
| 63254 | /* 179019 */ // GIR_Coverage, 10767, |
| 63255 | /* 179019 */ GIR_Done, |
| 63256 | /* 179020 */ // Label 3972: @179020 |
| 63257 | /* 179020 */ GIM_Try, /*On fail goto*//*Label 3973*/ GIMT_Encode4(179050), // Rule ID 11496 // |
| 63258 | /* 179025 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 63259 | /* 179028 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63260 | /* 179031 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63261 | /* 179035 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63262 | /* 179039 */ // (sint_to_fp:{ *:[v8f32] } VR512:{ *:[v8i64] }:$src) => (VCVTQQ2PSZrr:{ *:[v8f32] } VR512:{ *:[v8i64] }:$src) |
| 63263 | /* 179039 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PSZrr), |
| 63264 | /* 179044 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63265 | /* 179048 */ GIR_RootConstrainSelectedInstOperands, |
| 63266 | /* 179049 */ // GIR_Coverage, 11496, |
| 63267 | /* 179049 */ GIR_Done, |
| 63268 | /* 179050 */ // Label 3973: @179050 |
| 63269 | /* 179050 */ GIM_Reject, |
| 63270 | /* 179051 */ // Label 3913: @179051 |
| 63271 | /* 179051 */ GIM_Try, /*On fail goto*//*Label 3974*/ GIMT_Encode4(179110), // Rule ID 10708 // |
| 63272 | /* 179056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63273 | /* 179059 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63274 | /* 179062 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63275 | /* 179066 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63276 | /* 179070 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63277 | /* 179074 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63278 | /* 179077 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63279 | /* 179081 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63280 | /* 179085 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63281 | /* 179087 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63282 | /* 179094 */ // (sint_to_fp:{ *:[v8f64] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 63283 | /* 179094 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDZrm), |
| 63284 | /* 179097 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63285 | /* 179099 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63286 | /* 179103 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63287 | /* 179108 */ GIR_RootConstrainSelectedInstOperands, |
| 63288 | /* 179109 */ // GIR_Coverage, 10708, |
| 63289 | /* 179109 */ GIR_EraseRootFromParent_Done, |
| 63290 | /* 179110 */ // Label 3974: @179110 |
| 63291 | /* 179110 */ GIM_Try, /*On fail goto*//*Label 3975*/ GIMT_Encode4(179169), // Rule ID 11368 // |
| 63292 | /* 179115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 63293 | /* 179118 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63294 | /* 179121 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63295 | /* 179125 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63296 | /* 179129 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63297 | /* 179133 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63298 | /* 179136 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63299 | /* 179140 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63300 | /* 179144 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63301 | /* 179146 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63302 | /* 179153 */ // (sint_to_fp:{ *:[v8f64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTQQ2PDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 63303 | /* 179153 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZrm), |
| 63304 | /* 179156 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63305 | /* 179158 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63306 | /* 179162 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63307 | /* 179167 */ GIR_RootConstrainSelectedInstOperands, |
| 63308 | /* 179168 */ // GIR_Coverage, 11368, |
| 63309 | /* 179168 */ GIR_EraseRootFromParent_Done, |
| 63310 | /* 179169 */ // Label 3975: @179169 |
| 63311 | /* 179169 */ GIM_Try, /*On fail goto*//*Label 3976*/ GIMT_Encode4(179195), // Rule ID 10704 // |
| 63312 | /* 179174 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63313 | /* 179177 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63314 | /* 179180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63315 | /* 179184 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63316 | /* 179188 */ // (sint_to_fp:{ *:[v8f64] } VR256X:{ *:[v8i32] }:$src) => (VCVTDQ2PDZrr:{ *:[v8f64] } VR256X:{ *:[v8i32] }:$src) |
| 63317 | /* 179188 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PDZrr), |
| 63318 | /* 179193 */ GIR_RootConstrainSelectedInstOperands, |
| 63319 | /* 179194 */ // GIR_Coverage, 10704, |
| 63320 | /* 179194 */ GIR_Done, |
| 63321 | /* 179195 */ // Label 3976: @179195 |
| 63322 | /* 179195 */ GIM_Try, /*On fail goto*//*Label 3977*/ GIMT_Encode4(179225), // Rule ID 11364 // |
| 63323 | /* 179200 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 63324 | /* 179203 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63325 | /* 179206 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63326 | /* 179210 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63327 | /* 179214 */ // (sint_to_fp:{ *:[v8f64] } VR512:{ *:[v8i64] }:$src) => (VCVTQQ2PDZrr:{ *:[v8f64] } VR512:{ *:[v8i64] }:$src) |
| 63328 | /* 179214 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTQQ2PDZrr), |
| 63329 | /* 179219 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63330 | /* 179223 */ GIR_RootConstrainSelectedInstOperands, |
| 63331 | /* 179224 */ // GIR_Coverage, 11364, |
| 63332 | /* 179224 */ GIR_Done, |
| 63333 | /* 179225 */ // Label 3977: @179225 |
| 63334 | /* 179225 */ GIM_Reject, |
| 63335 | /* 179226 */ // Label 3914: @179226 |
| 63336 | /* 179226 */ GIM_Try, /*On fail goto*//*Label 3978*/ GIMT_Encode4(179285), // Rule ID 11446 // |
| 63337 | /* 179231 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63338 | /* 179234 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 63339 | /* 179237 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63340 | /* 179241 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63341 | /* 179245 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63342 | /* 179249 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63343 | /* 179252 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63344 | /* 179256 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63345 | /* 179260 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63346 | /* 179262 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63347 | /* 179269 */ // (sint_to_fp:{ *:[v16f16] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PHZrm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 63348 | /* 179269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PHZrm), |
| 63349 | /* 179272 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63350 | /* 179274 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63351 | /* 179278 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63352 | /* 179283 */ GIR_RootConstrainSelectedInstOperands, |
| 63353 | /* 179284 */ // GIR_Coverage, 11446, |
| 63354 | /* 179284 */ GIR_EraseRootFromParent_Done, |
| 63355 | /* 179285 */ // Label 3978: @179285 |
| 63356 | /* 179285 */ GIM_Try, /*On fail goto*//*Label 3979*/ GIMT_Encode4(179344), // Rule ID 14839 // |
| 63357 | /* 179290 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63358 | /* 179293 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 63359 | /* 179296 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63360 | /* 179300 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63361 | /* 179304 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63362 | /* 179308 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63363 | /* 179311 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63364 | /* 179315 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63365 | /* 179319 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63366 | /* 179321 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63367 | /* 179328 */ // (sint_to_fp:{ *:[v16f16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTW2PHZ256rm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 63368 | /* 179328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZ256rm), |
| 63369 | /* 179331 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63370 | /* 179333 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63371 | /* 179337 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63372 | /* 179342 */ GIR_RootConstrainSelectedInstOperands, |
| 63373 | /* 179343 */ // GIR_Coverage, 14839, |
| 63374 | /* 179343 */ GIR_EraseRootFromParent_Done, |
| 63375 | /* 179344 */ // Label 3979: @179344 |
| 63376 | /* 179344 */ GIM_Try, /*On fail goto*//*Label 3980*/ GIMT_Encode4(179374), // Rule ID 11442 // |
| 63377 | /* 179349 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63378 | /* 179352 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 63379 | /* 179355 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63380 | /* 179359 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63381 | /* 179363 */ // (sint_to_fp:{ *:[v16f16] } VR512:{ *:[v16i32] }:$src) => (VCVTDQ2PHZrr:{ *:[v16f16] } VR512:{ *:[v16i32] }:$src) |
| 63382 | /* 179363 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PHZrr), |
| 63383 | /* 179368 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63384 | /* 179372 */ GIR_RootConstrainSelectedInstOperands, |
| 63385 | /* 179373 */ // GIR_Coverage, 11442, |
| 63386 | /* 179373 */ GIR_Done, |
| 63387 | /* 179374 */ // Label 3980: @179374 |
| 63388 | /* 179374 */ GIM_Try, /*On fail goto*//*Label 3981*/ GIMT_Encode4(179404), // Rule ID 14835 // |
| 63389 | /* 179379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63390 | /* 179382 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 63391 | /* 179385 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63392 | /* 179389 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63393 | /* 179393 */ // (sint_to_fp:{ *:[v16f16] } VR256X:{ *:[v16i16] }:$src) => (VCVTW2PHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16i16] }:$src) |
| 63394 | /* 179393 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZ256rr), |
| 63395 | /* 179398 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63396 | /* 179402 */ GIR_RootConstrainSelectedInstOperands, |
| 63397 | /* 179403 */ // GIR_Coverage, 14835, |
| 63398 | /* 179403 */ GIR_Done, |
| 63399 | /* 179404 */ // Label 3981: @179404 |
| 63400 | /* 179404 */ GIM_Reject, |
| 63401 | /* 179405 */ // Label 3915: @179405 |
| 63402 | /* 179405 */ GIM_Try, /*On fail goto*//*Label 3982*/ GIMT_Encode4(179493), |
| 63403 | /* 179410 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 63404 | /* 179413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63405 | /* 179417 */ GIM_Try, /*On fail goto*//*Label 3983*/ GIMT_Encode4(179469), // Rule ID 10744 // |
| 63406 | /* 179422 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63407 | /* 179425 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63408 | /* 179429 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63409 | /* 179433 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63410 | /* 179436 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63411 | /* 179440 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63412 | /* 179444 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63413 | /* 179446 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63414 | /* 179453 */ // (sint_to_fp:{ *:[v16f32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTDQ2PSZrm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 63415 | /* 179453 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZrm), |
| 63416 | /* 179456 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63417 | /* 179458 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63418 | /* 179462 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63419 | /* 179467 */ GIR_RootConstrainSelectedInstOperands, |
| 63420 | /* 179468 */ // GIR_Coverage, 10744, |
| 63421 | /* 179468 */ GIR_EraseRootFromParent_Done, |
| 63422 | /* 179469 */ // Label 3983: @179469 |
| 63423 | /* 179469 */ GIM_Try, /*On fail goto*//*Label 3984*/ GIMT_Encode4(179492), // Rule ID 10740 // |
| 63424 | /* 179474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63425 | /* 179477 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63426 | /* 179481 */ // (sint_to_fp:{ *:[v16f32] } VR512:{ *:[v16i32] }:$src) => (VCVTDQ2PSZrr:{ *:[v16f32] } VR512:{ *:[v16i32] }:$src) |
| 63427 | /* 179481 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTDQ2PSZrr), |
| 63428 | /* 179486 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63429 | /* 179490 */ GIR_RootConstrainSelectedInstOperands, |
| 63430 | /* 179491 */ // GIR_Coverage, 10740, |
| 63431 | /* 179491 */ GIR_Done, |
| 63432 | /* 179492 */ // Label 3984: @179492 |
| 63433 | /* 179492 */ GIM_Reject, |
| 63434 | /* 179493 */ // Label 3982: @179493 |
| 63435 | /* 179493 */ GIM_Reject, |
| 63436 | /* 179494 */ // Label 3916: @179494 |
| 63437 | /* 179494 */ GIM_Try, /*On fail goto*//*Label 3985*/ GIMT_Encode4(179582), |
| 63438 | /* 179499 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 63439 | /* 179502 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63440 | /* 179506 */ GIM_Try, /*On fail goto*//*Label 3986*/ GIMT_Encode4(179558), // Rule ID 14812 // |
| 63441 | /* 179511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63442 | /* 179514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63443 | /* 179518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63444 | /* 179522 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63445 | /* 179525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63446 | /* 179529 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63447 | /* 179533 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63448 | /* 179535 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63449 | /* 179542 */ // (sint_to_fp:{ *:[v32f16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTW2PHZrm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 63450 | /* 179542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZrm), |
| 63451 | /* 179545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63452 | /* 179547 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63453 | /* 179551 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63454 | /* 179556 */ GIR_RootConstrainSelectedInstOperands, |
| 63455 | /* 179557 */ // GIR_Coverage, 14812, |
| 63456 | /* 179557 */ GIR_EraseRootFromParent_Done, |
| 63457 | /* 179558 */ // Label 3986: @179558 |
| 63458 | /* 179558 */ GIM_Try, /*On fail goto*//*Label 3987*/ GIMT_Encode4(179581), // Rule ID 14808 // |
| 63459 | /* 179563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63460 | /* 179566 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 63461 | /* 179570 */ // (sint_to_fp:{ *:[v32f16] } VR512:{ *:[v32i16] }:$src) => (VCVTW2PHZrr:{ *:[v32f16] } VR512:{ *:[v32i16] }:$src) |
| 63462 | /* 179570 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTW2PHZrr), |
| 63463 | /* 179575 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63464 | /* 179579 */ GIR_RootConstrainSelectedInstOperands, |
| 63465 | /* 179580 */ // GIR_Coverage, 14808, |
| 63466 | /* 179580 */ GIR_Done, |
| 63467 | /* 179581 */ // Label 3987: @179581 |
| 63468 | /* 179581 */ GIM_Reject, |
| 63469 | /* 179582 */ // Label 3985: @179582 |
| 63470 | /* 179582 */ GIM_Reject, |
| 63471 | /* 179583 */ // Label 3917: @179583 |
| 63472 | /* 179583 */ GIM_Reject, |
| 63473 | /* 179584 */ // Label 53: @179584 |
| 63474 | /* 179584 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 4000*/ GIMT_Encode4(181830), |
| 63475 | /* 179595 */ /*GILLT_s16*//*Label 3988*/ GIMT_Encode4(179679), |
| 63476 | /* 179599 */ /*GILLT_s32*//*Label 3989*/ GIMT_Encode4(179922), |
| 63477 | /* 179603 */ /*GILLT_s64*//*Label 3990*/ GIMT_Encode4(180165), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 63478 | /* 179619 */ /*GILLT_v2s64*//*Label 3991*/ GIMT_Encode4(180408), GIMT_Encode4(0), |
| 63479 | /* 179627 */ /*GILLT_v4s32*//*Label 3992*/ GIMT_Encode4(180497), |
| 63480 | /* 179631 */ /*GILLT_v4s64*//*Label 3993*/ GIMT_Encode4(180676), GIMT_Encode4(0), |
| 63481 | /* 179639 */ /*GILLT_v8s16*//*Label 3994*/ GIMT_Encode4(180851), |
| 63482 | /* 179643 */ /*GILLT_v8s32*//*Label 3995*/ GIMT_Encode4(181119), |
| 63483 | /* 179647 */ /*GILLT_v8s64*//*Label 3996*/ GIMT_Encode4(181298), GIMT_Encode4(0), GIMT_Encode4(0), |
| 63484 | /* 179659 */ /*GILLT_v16s16*//*Label 3997*/ GIMT_Encode4(181473), |
| 63485 | /* 179663 */ /*GILLT_v16s32*//*Label 3998*/ GIMT_Encode4(181652), GIMT_Encode4(0), GIMT_Encode4(0), |
| 63486 | /* 179675 */ /*GILLT_v32s16*//*Label 3999*/ GIMT_Encode4(181741), |
| 63487 | /* 179679 */ // Label 3988: @179679 |
| 63488 | /* 179679 */ GIM_Try, /*On fail goto*//*Label 4001*/ GIMT_Encode4(179755), // Rule ID 22248 // |
| 63489 | /* 179684 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63490 | /* 179687 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63491 | /* 179690 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 63492 | /* 179694 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63493 | /* 179698 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63494 | /* 179702 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63495 | /* 179705 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63496 | /* 179709 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63497 | /* 179713 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63498 | /* 179715 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63499 | /* 179722 */ // (uint_to_fp:{ *:[f16] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUSI642SHZrm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 63500 | /* 179722 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 63501 | /* 179725 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63502 | /* 179729 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63503 | /* 179734 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63504 | /* 179736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SHZrm), |
| 63505 | /* 179739 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63506 | /* 179741 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63507 | /* 179744 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63508 | /* 179748 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63509 | /* 179753 */ GIR_RootConstrainSelectedInstOperands, |
| 63510 | /* 179754 */ // GIR_Coverage, 22248, |
| 63511 | /* 179754 */ GIR_EraseRootFromParent_Done, |
| 63512 | /* 179755 */ // Label 4001: @179755 |
| 63513 | /* 179755 */ GIM_Try, /*On fail goto*//*Label 4002*/ GIMT_Encode4(179831), // Rule ID 22246 // |
| 63514 | /* 179760 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63515 | /* 179763 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63516 | /* 179766 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 63517 | /* 179770 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63518 | /* 179774 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63519 | /* 179778 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63520 | /* 179781 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63521 | /* 179785 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 63522 | /* 179789 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63523 | /* 179791 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63524 | /* 179798 */ // (uint_to_fp:{ *:[f16] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTUSI2SHZrm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 63525 | /* 179798 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 63526 | /* 179801 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63527 | /* 179805 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63528 | /* 179810 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63529 | /* 179812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SHZrm), |
| 63530 | /* 179815 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63531 | /* 179817 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63532 | /* 179820 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63533 | /* 179824 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63534 | /* 179829 */ GIR_RootConstrainSelectedInstOperands, |
| 63535 | /* 179830 */ // GIR_Coverage, 22246, |
| 63536 | /* 179830 */ GIR_EraseRootFromParent_Done, |
| 63537 | /* 179831 */ // Label 4002: @179831 |
| 63538 | /* 179831 */ GIM_Try, /*On fail goto*//*Label 4003*/ GIMT_Encode4(179876), // Rule ID 22250 // |
| 63539 | /* 179836 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63540 | /* 179839 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63541 | /* 179842 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 63542 | /* 179846 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 63543 | /* 179850 */ // (uint_to_fp:{ *:[f16] } GR32:{ *:[i32] }:$src) => (VCVTUSI2SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), GR32:{ *:[i32] }:$src) |
| 63544 | /* 179850 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 63545 | /* 179853 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63546 | /* 179857 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63547 | /* 179862 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63548 | /* 179864 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SHZrr), |
| 63549 | /* 179867 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63550 | /* 179869 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63551 | /* 179872 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63552 | /* 179874 */ GIR_RootConstrainSelectedInstOperands, |
| 63553 | /* 179875 */ // GIR_Coverage, 22250, |
| 63554 | /* 179875 */ GIR_EraseRootFromParent_Done, |
| 63555 | /* 179876 */ // Label 4003: @179876 |
| 63556 | /* 179876 */ GIM_Try, /*On fail goto*//*Label 4004*/ GIMT_Encode4(179921), // Rule ID 22252 // |
| 63557 | /* 179881 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63558 | /* 179884 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63559 | /* 179887 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 63560 | /* 179891 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 63561 | /* 179895 */ // (uint_to_fp:{ *:[f16] } GR64:{ *:[i64] }:$src) => (VCVTUSI642SHZrr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), GR64:{ *:[i64] }:$src) |
| 63562 | /* 179895 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 63563 | /* 179898 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63564 | /* 179902 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63565 | /* 179907 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63566 | /* 179909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SHZrr), |
| 63567 | /* 179912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63568 | /* 179914 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63569 | /* 179917 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63570 | /* 179919 */ GIR_RootConstrainSelectedInstOperands, |
| 63571 | /* 179920 */ // GIR_Coverage, 22252, |
| 63572 | /* 179920 */ GIR_EraseRootFromParent_Done, |
| 63573 | /* 179921 */ // Label 4004: @179921 |
| 63574 | /* 179921 */ GIM_Reject, |
| 63575 | /* 179922 */ // Label 3989: @179922 |
| 63576 | /* 179922 */ GIM_Try, /*On fail goto*//*Label 4005*/ GIMT_Encode4(179998), // Rule ID 21157 // |
| 63577 | /* 179927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63578 | /* 179930 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63579 | /* 179933 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 63580 | /* 179937 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63581 | /* 179941 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63582 | /* 179945 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63583 | /* 179948 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63584 | /* 179952 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63585 | /* 179956 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63586 | /* 179958 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63587 | /* 179965 */ // (uint_to_fp:{ *:[f32] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUSI642SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 63588 | /* 179965 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 63589 | /* 179968 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63590 | /* 179972 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63591 | /* 179977 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63592 | /* 179979 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SSZrm), |
| 63593 | /* 179982 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63594 | /* 179984 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63595 | /* 179987 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63596 | /* 179991 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63597 | /* 179996 */ GIR_RootConstrainSelectedInstOperands, |
| 63598 | /* 179997 */ // GIR_Coverage, 21157, |
| 63599 | /* 179997 */ GIR_EraseRootFromParent_Done, |
| 63600 | /* 179998 */ // Label 4005: @179998 |
| 63601 | /* 179998 */ GIM_Try, /*On fail goto*//*Label 4006*/ GIMT_Encode4(180074), // Rule ID 21155 // |
| 63602 | /* 180003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63603 | /* 180006 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63604 | /* 180009 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 63605 | /* 180013 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63606 | /* 180017 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63607 | /* 180021 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63608 | /* 180024 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63609 | /* 180028 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 63610 | /* 180032 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63611 | /* 180034 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63612 | /* 180041 */ // (uint_to_fp:{ *:[f32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTUSI2SSZrm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 63613 | /* 180041 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 63614 | /* 180044 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63615 | /* 180048 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63616 | /* 180053 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63617 | /* 180055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SSZrm), |
| 63618 | /* 180058 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63619 | /* 180060 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63620 | /* 180063 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63621 | /* 180067 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63622 | /* 180072 */ GIR_RootConstrainSelectedInstOperands, |
| 63623 | /* 180073 */ // GIR_Coverage, 21155, |
| 63624 | /* 180073 */ GIR_EraseRootFromParent_Done, |
| 63625 | /* 180074 */ // Label 4006: @180074 |
| 63626 | /* 180074 */ GIM_Try, /*On fail goto*//*Label 4007*/ GIMT_Encode4(180119), // Rule ID 21163 // |
| 63627 | /* 180079 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63628 | /* 180082 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63629 | /* 180085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 63630 | /* 180089 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 63631 | /* 180093 */ // (uint_to_fp:{ *:[f32] } GR32:{ *:[i32] }:$src) => (VCVTUSI2SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR32:{ *:[i32] }:$src) |
| 63632 | /* 180093 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 63633 | /* 180096 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63634 | /* 180100 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63635 | /* 180105 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63636 | /* 180107 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SSZrr), |
| 63637 | /* 180110 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63638 | /* 180112 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63639 | /* 180115 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63640 | /* 180117 */ GIR_RootConstrainSelectedInstOperands, |
| 63641 | /* 180118 */ // GIR_Coverage, 21163, |
| 63642 | /* 180118 */ GIR_EraseRootFromParent_Done, |
| 63643 | /* 180119 */ // Label 4007: @180119 |
| 63644 | /* 180119 */ GIM_Try, /*On fail goto*//*Label 4008*/ GIMT_Encode4(180164), // Rule ID 21165 // |
| 63645 | /* 180124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63646 | /* 180127 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63647 | /* 180130 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 63648 | /* 180134 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 63649 | /* 180138 */ // (uint_to_fp:{ *:[f32] } GR64:{ *:[i64] }:$src) => (VCVTUSI642SSZrr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), GR64:{ *:[i64] }:$src) |
| 63650 | /* 180138 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 63651 | /* 180141 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63652 | /* 180145 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63653 | /* 180150 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63654 | /* 180152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SSZrr), |
| 63655 | /* 180155 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63656 | /* 180157 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63657 | /* 180160 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63658 | /* 180162 */ GIR_RootConstrainSelectedInstOperands, |
| 63659 | /* 180163 */ // GIR_Coverage, 21165, |
| 63660 | /* 180163 */ GIR_EraseRootFromParent_Done, |
| 63661 | /* 180164 */ // Label 4008: @180164 |
| 63662 | /* 180164 */ GIM_Reject, |
| 63663 | /* 180165 */ // Label 3990: @180165 |
| 63664 | /* 180165 */ GIM_Try, /*On fail goto*//*Label 4009*/ GIMT_Encode4(180241), // Rule ID 21161 // |
| 63665 | /* 180170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63666 | /* 180173 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63667 | /* 180176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 63668 | /* 180180 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63669 | /* 180184 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63670 | /* 180188 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63671 | /* 180191 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63672 | /* 180195 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63673 | /* 180199 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63674 | /* 180201 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63675 | /* 180208 */ // (uint_to_fp:{ *:[f64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUSI642SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 63676 | /* 180208 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63677 | /* 180211 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63678 | /* 180215 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63679 | /* 180220 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63680 | /* 180222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SDZrm), |
| 63681 | /* 180225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63682 | /* 180227 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63683 | /* 180230 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63684 | /* 180234 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63685 | /* 180239 */ GIR_RootConstrainSelectedInstOperands, |
| 63686 | /* 180240 */ // GIR_Coverage, 21161, |
| 63687 | /* 180240 */ GIR_EraseRootFromParent_Done, |
| 63688 | /* 180241 */ // Label 4009: @180241 |
| 63689 | /* 180241 */ GIM_Try, /*On fail goto*//*Label 4010*/ GIMT_Encode4(180317), // Rule ID 21159 // |
| 63690 | /* 180246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63691 | /* 180249 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63692 | /* 180252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 63693 | /* 180256 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63694 | /* 180260 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63695 | /* 180264 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63696 | /* 180267 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63697 | /* 180271 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 63698 | /* 180275 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63699 | /* 180277 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63700 | /* 180284 */ // (uint_to_fp:{ *:[f64] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (VCVTUSI2SDZrm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 63701 | /* 180284 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63702 | /* 180287 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63703 | /* 180291 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63704 | /* 180296 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63705 | /* 180298 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SDZrm), |
| 63706 | /* 180301 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63707 | /* 180303 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63708 | /* 180306 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63709 | /* 180310 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63710 | /* 180315 */ GIR_RootConstrainSelectedInstOperands, |
| 63711 | /* 180316 */ // GIR_Coverage, 21159, |
| 63712 | /* 180316 */ GIR_EraseRootFromParent_Done, |
| 63713 | /* 180317 */ // Label 4010: @180317 |
| 63714 | /* 180317 */ GIM_Try, /*On fail goto*//*Label 4011*/ GIMT_Encode4(180362), // Rule ID 21167 // |
| 63715 | /* 180322 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63716 | /* 180325 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 63717 | /* 180328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 63718 | /* 180332 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 63719 | /* 180336 */ // (uint_to_fp:{ *:[f64] } GR32:{ *:[i32] }:$src) => (VCVTUSI2SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR32:{ *:[i32] }:$src) |
| 63720 | /* 180336 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63721 | /* 180339 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63722 | /* 180343 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63723 | /* 180348 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63724 | /* 180350 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI2SDZrr), |
| 63725 | /* 180353 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63726 | /* 180355 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63727 | /* 180358 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63728 | /* 180360 */ GIR_RootConstrainSelectedInstOperands, |
| 63729 | /* 180361 */ // GIR_Coverage, 21167, |
| 63730 | /* 180361 */ GIR_EraseRootFromParent_Done, |
| 63731 | /* 180362 */ // Label 4011: @180362 |
| 63732 | /* 180362 */ GIM_Try, /*On fail goto*//*Label 4012*/ GIMT_Encode4(180407), // Rule ID 21169 // |
| 63733 | /* 180367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 63734 | /* 180370 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 63735 | /* 180373 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 63736 | /* 180377 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 63737 | /* 180381 */ // (uint_to_fp:{ *:[f64] } GR64:{ *:[i64] }:$src) => (VCVTUSI642SDZrr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), GR64:{ *:[i64] }:$src) |
| 63738 | /* 180381 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 63739 | /* 180384 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 63740 | /* 180388 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 63741 | /* 180393 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 63742 | /* 180395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUSI642SDZrr), |
| 63743 | /* 180398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63744 | /* 180400 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 63745 | /* 180403 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 63746 | /* 180405 */ GIR_RootConstrainSelectedInstOperands, |
| 63747 | /* 180406 */ // GIR_Coverage, 21169, |
| 63748 | /* 180406 */ GIR_EraseRootFromParent_Done, |
| 63749 | /* 180407 */ // Label 4012: @180407 |
| 63750 | /* 180407 */ GIM_Reject, |
| 63751 | /* 180408 */ // Label 3991: @180408 |
| 63752 | /* 180408 */ GIM_Try, /*On fail goto*//*Label 4013*/ GIMT_Encode4(180496), |
| 63753 | /* 180413 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 63754 | /* 180416 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63755 | /* 180420 */ GIM_Try, /*On fail goto*//*Label 4014*/ GIMT_Encode4(180472), // Rule ID 11422 // |
| 63756 | /* 180425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63757 | /* 180428 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63758 | /* 180432 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63759 | /* 180436 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63760 | /* 180439 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63761 | /* 180443 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63762 | /* 180447 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63763 | /* 180449 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63764 | /* 180456 */ // (uint_to_fp:{ *:[v2f64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PDZ128rm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 63765 | /* 180456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZ128rm), |
| 63766 | /* 180459 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63767 | /* 180461 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63768 | /* 180465 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63769 | /* 180470 */ GIR_RootConstrainSelectedInstOperands, |
| 63770 | /* 180471 */ // GIR_Coverage, 11422, |
| 63771 | /* 180471 */ GIR_EraseRootFromParent_Done, |
| 63772 | /* 180472 */ // Label 4014: @180472 |
| 63773 | /* 180472 */ GIM_Try, /*On fail goto*//*Label 4015*/ GIMT_Encode4(180495), // Rule ID 11418 // |
| 63774 | /* 180477 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63775 | /* 180480 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63776 | /* 180484 */ // (uint_to_fp:{ *:[v2f64] } VR128X:{ *:[v2i64] }:$src) => (VCVTUQQ2PDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2i64] }:$src) |
| 63777 | /* 180484 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZ128rr), |
| 63778 | /* 180489 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63779 | /* 180493 */ GIR_RootConstrainSelectedInstOperands, |
| 63780 | /* 180494 */ // GIR_Coverage, 11418, |
| 63781 | /* 180494 */ GIR_Done, |
| 63782 | /* 180495 */ // Label 4015: @180495 |
| 63783 | /* 180495 */ GIM_Reject, |
| 63784 | /* 180496 */ // Label 4013: @180496 |
| 63785 | /* 180496 */ GIM_Reject, |
| 63786 | /* 180497 */ // Label 3992: @180497 |
| 63787 | /* 180497 */ GIM_Try, /*On fail goto*//*Label 4016*/ GIMT_Encode4(180556), // Rule ID 10966 // |
| 63788 | /* 180502 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63789 | /* 180505 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63790 | /* 180508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63791 | /* 180512 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63792 | /* 180516 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63793 | /* 180520 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63794 | /* 180523 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63795 | /* 180527 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63796 | /* 180531 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63797 | /* 180533 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63798 | /* 180540 */ // (uint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PSZ128rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 63799 | /* 180540 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZ128rm), |
| 63800 | /* 180543 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63801 | /* 180545 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63802 | /* 180549 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63803 | /* 180554 */ GIR_RootConstrainSelectedInstOperands, |
| 63804 | /* 180555 */ // GIR_Coverage, 10966, |
| 63805 | /* 180555 */ GIR_EraseRootFromParent_Done, |
| 63806 | /* 180556 */ // Label 4016: @180556 |
| 63807 | /* 180556 */ GIM_Try, /*On fail goto*//*Label 4017*/ GIMT_Encode4(180615), // Rule ID 11542 // |
| 63808 | /* 180561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63809 | /* 180564 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63810 | /* 180567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63811 | /* 180571 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63812 | /* 180575 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63813 | /* 180579 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63814 | /* 180582 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63815 | /* 180586 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63816 | /* 180590 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63817 | /* 180592 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63818 | /* 180599 */ // (uint_to_fp:{ *:[v4f32] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PSZ256rm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 63819 | /* 180599 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PSZ256rm), |
| 63820 | /* 180602 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63821 | /* 180604 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63822 | /* 180608 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63823 | /* 180613 */ GIR_RootConstrainSelectedInstOperands, |
| 63824 | /* 180614 */ // GIR_Coverage, 11542, |
| 63825 | /* 180614 */ GIR_EraseRootFromParent_Done, |
| 63826 | /* 180615 */ // Label 4017: @180615 |
| 63827 | /* 180615 */ GIM_Try, /*On fail goto*//*Label 4018*/ GIMT_Encode4(180645), // Rule ID 10962 // |
| 63828 | /* 180620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63829 | /* 180623 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63830 | /* 180626 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63831 | /* 180630 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63832 | /* 180634 */ // (uint_to_fp:{ *:[v4f32] } VR128X:{ *:[v4i32] }:$src) => (VCVTUDQ2PSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4i32] }:$src) |
| 63833 | /* 180634 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZ128rr), |
| 63834 | /* 180639 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63835 | /* 180643 */ GIR_RootConstrainSelectedInstOperands, |
| 63836 | /* 180644 */ // GIR_Coverage, 10962, |
| 63837 | /* 180644 */ GIR_Done, |
| 63838 | /* 180645 */ // Label 4018: @180645 |
| 63839 | /* 180645 */ GIM_Try, /*On fail goto*//*Label 4019*/ GIMT_Encode4(180675), // Rule ID 11538 // |
| 63840 | /* 180650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63841 | /* 180653 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63842 | /* 180656 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63843 | /* 180660 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63844 | /* 180664 */ // (uint_to_fp:{ *:[v4f32] } VR256X:{ *:[v4i64] }:$src) => (VCVTUQQ2PSZ256rr:{ *:[v4f32] } VR256X:{ *:[v4i64] }:$src) |
| 63845 | /* 180664 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PSZ256rr), |
| 63846 | /* 180669 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63847 | /* 180673 */ GIR_RootConstrainSelectedInstOperands, |
| 63848 | /* 180674 */ // GIR_Coverage, 11538, |
| 63849 | /* 180674 */ GIR_Done, |
| 63850 | /* 180675 */ // Label 4019: @180675 |
| 63851 | /* 180675 */ GIM_Reject, |
| 63852 | /* 180676 */ // Label 3993: @180676 |
| 63853 | /* 180676 */ GIM_Try, /*On fail goto*//*Label 4020*/ GIMT_Encode4(180735), // Rule ID 10939 // |
| 63854 | /* 180681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63855 | /* 180684 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63856 | /* 180687 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63857 | /* 180691 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63858 | /* 180695 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63859 | /* 180699 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63860 | /* 180702 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63861 | /* 180706 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63862 | /* 180710 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63863 | /* 180712 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63864 | /* 180719 */ // (uint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 63865 | /* 180719 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PDZ256rm), |
| 63866 | /* 180722 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63867 | /* 180724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63868 | /* 180728 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63869 | /* 180733 */ GIR_RootConstrainSelectedInstOperands, |
| 63870 | /* 180734 */ // GIR_Coverage, 10939, |
| 63871 | /* 180734 */ GIR_EraseRootFromParent_Done, |
| 63872 | /* 180735 */ // Label 4020: @180735 |
| 63873 | /* 180735 */ GIM_Try, /*On fail goto*//*Label 4021*/ GIMT_Encode4(180794), // Rule ID 11434 // |
| 63874 | /* 180740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63875 | /* 180743 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63876 | /* 180746 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63877 | /* 180750 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63878 | /* 180754 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63879 | /* 180758 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63880 | /* 180761 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63881 | /* 180765 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63882 | /* 180769 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63883 | /* 180771 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63884 | /* 180778 */ // (uint_to_fp:{ *:[v4f64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PDZ256rm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 63885 | /* 180778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZ256rm), |
| 63886 | /* 180781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63887 | /* 180783 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63888 | /* 180787 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63889 | /* 180792 */ GIR_RootConstrainSelectedInstOperands, |
| 63890 | /* 180793 */ // GIR_Coverage, 11434, |
| 63891 | /* 180793 */ GIR_EraseRootFromParent_Done, |
| 63892 | /* 180794 */ // Label 4021: @180794 |
| 63893 | /* 180794 */ GIM_Try, /*On fail goto*//*Label 4022*/ GIMT_Encode4(180820), // Rule ID 10935 // |
| 63894 | /* 180799 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 63895 | /* 180802 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 63896 | /* 180805 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63897 | /* 180809 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63898 | /* 180813 */ // (uint_to_fp:{ *:[v4f64] } VR128X:{ *:[v4i32] }:$src) => (VCVTUDQ2PDZ256rr:{ *:[v4f64] } VR128X:{ *:[v4i32] }:$src) |
| 63899 | /* 180813 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PDZ256rr), |
| 63900 | /* 180818 */ GIR_RootConstrainSelectedInstOperands, |
| 63901 | /* 180819 */ // GIR_Coverage, 10935, |
| 63902 | /* 180819 */ GIR_Done, |
| 63903 | /* 180820 */ // Label 4022: @180820 |
| 63904 | /* 180820 */ GIM_Try, /*On fail goto*//*Label 4023*/ GIMT_Encode4(180850), // Rule ID 11430 // |
| 63905 | /* 180825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI_HasVLX), |
| 63906 | /* 180828 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 63907 | /* 180831 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63908 | /* 180835 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63909 | /* 180839 */ // (uint_to_fp:{ *:[v4f64] } VR256X:{ *:[v4i64] }:$src) => (VCVTUQQ2PDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4i64] }:$src) |
| 63910 | /* 180839 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZ256rr), |
| 63911 | /* 180844 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63912 | /* 180848 */ GIR_RootConstrainSelectedInstOperands, |
| 63913 | /* 180849 */ // GIR_Coverage, 11430, |
| 63914 | /* 180849 */ GIR_Done, |
| 63915 | /* 180850 */ // Label 4023: @180850 |
| 63916 | /* 180850 */ GIM_Reject, |
| 63917 | /* 180851 */ // Label 3994: @180851 |
| 63918 | /* 180851 */ GIM_Try, /*On fail goto*//*Label 4024*/ GIMT_Encode4(180910), // Rule ID 11488 // |
| 63919 | /* 180856 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63920 | /* 180859 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63921 | /* 180862 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63922 | /* 180866 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63923 | /* 180870 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63924 | /* 180874 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63925 | /* 180877 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63926 | /* 180881 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63927 | /* 180885 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63928 | /* 180887 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63929 | /* 180894 */ // (uint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PHZ256rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63930 | /* 180894 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PHZ256rm), |
| 63931 | /* 180897 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63932 | /* 180899 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63933 | /* 180903 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63934 | /* 180908 */ GIR_RootConstrainSelectedInstOperands, |
| 63935 | /* 180909 */ // GIR_Coverage, 11488, |
| 63936 | /* 180909 */ GIR_EraseRootFromParent_Done, |
| 63937 | /* 180910 */ // Label 4024: @180910 |
| 63938 | /* 180910 */ GIM_Try, /*On fail goto*//*Label 4025*/ GIMT_Encode4(180969), // Rule ID 14680 // |
| 63939 | /* 180915 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63940 | /* 180918 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 63941 | /* 180921 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63942 | /* 180925 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63943 | /* 180929 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63944 | /* 180933 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63945 | /* 180936 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63946 | /* 180940 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63947 | /* 180944 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63948 | /* 180946 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63949 | /* 180953 */ // (uint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUW2PHZ128rm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63950 | /* 180953 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZ128rm), |
| 63951 | /* 180956 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63952 | /* 180958 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63953 | /* 180962 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63954 | /* 180967 */ GIR_RootConstrainSelectedInstOperands, |
| 63955 | /* 180968 */ // GIR_Coverage, 14680, |
| 63956 | /* 180968 */ GIR_EraseRootFromParent_Done, |
| 63957 | /* 180969 */ // Label 4025: @180969 |
| 63958 | /* 180969 */ GIM_Try, /*On fail goto*//*Label 4026*/ GIMT_Encode4(181028), // Rule ID 15142 // |
| 63959 | /* 180974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 63960 | /* 180977 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 63961 | /* 180980 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63962 | /* 180984 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 63963 | /* 180988 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 63964 | /* 180992 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 63965 | /* 180995 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 63966 | /* 180999 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 63967 | /* 181003 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 63968 | /* 181005 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 63969 | /* 181012 */ // (uint_to_fp:{ *:[v8f16] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PHZrm:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 63970 | /* 181012 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PHZrm), |
| 63971 | /* 181015 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 63972 | /* 181017 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 63973 | /* 181021 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 63974 | /* 181026 */ GIR_RootConstrainSelectedInstOperands, |
| 63975 | /* 181027 */ // GIR_Coverage, 15142, |
| 63976 | /* 181027 */ GIR_EraseRootFromParent_Done, |
| 63977 | /* 181028 */ // Label 4026: @181028 |
| 63978 | /* 181028 */ GIM_Try, /*On fail goto*//*Label 4027*/ GIMT_Encode4(181058), // Rule ID 11484 // |
| 63979 | /* 181033 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63980 | /* 181036 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 63981 | /* 181039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63982 | /* 181043 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 63983 | /* 181047 */ // (uint_to_fp:{ *:[v8f16] } VR256X:{ *:[v8i32] }:$src) => (VCVTUDQ2PHZ256rr:{ *:[v8f16] } VR256X:{ *:[v8i32] }:$src) |
| 63984 | /* 181047 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PHZ256rr), |
| 63985 | /* 181052 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63986 | /* 181056 */ GIR_RootConstrainSelectedInstOperands, |
| 63987 | /* 181057 */ // GIR_Coverage, 11484, |
| 63988 | /* 181057 */ GIR_Done, |
| 63989 | /* 181058 */ // Label 4027: @181058 |
| 63990 | /* 181058 */ GIM_Try, /*On fail goto*//*Label 4028*/ GIMT_Encode4(181088), // Rule ID 14676 // |
| 63991 | /* 181063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 63992 | /* 181066 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 63993 | /* 181069 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63994 | /* 181073 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 63995 | /* 181077 */ // (uint_to_fp:{ *:[v8f16] } VR128X:{ *:[v8i16] }:$src) => (VCVTUW2PHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8i16] }:$src) |
| 63996 | /* 181077 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZ128rr), |
| 63997 | /* 181082 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 63998 | /* 181086 */ GIR_RootConstrainSelectedInstOperands, |
| 63999 | /* 181087 */ // GIR_Coverage, 14676, |
| 64000 | /* 181087 */ GIR_Done, |
| 64001 | /* 181088 */ // Label 4028: @181088 |
| 64002 | /* 181088 */ GIM_Try, /*On fail goto*//*Label 4029*/ GIMT_Encode4(181118), // Rule ID 15138 // |
| 64003 | /* 181093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64004 | /* 181096 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64005 | /* 181099 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64006 | /* 181103 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64007 | /* 181107 */ // (uint_to_fp:{ *:[v8f16] } VR512:{ *:[v8i64] }:$src) => (VCVTUQQ2PHZrr:{ *:[v8f16] } VR512:{ *:[v8i64] }:$src) |
| 64008 | /* 181107 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PHZrr), |
| 64009 | /* 181112 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64010 | /* 181116 */ GIR_RootConstrainSelectedInstOperands, |
| 64011 | /* 181117 */ // GIR_Coverage, 15138, |
| 64012 | /* 181117 */ GIR_Done, |
| 64013 | /* 181118 */ // Label 4029: @181118 |
| 64014 | /* 181118 */ GIM_Reject, |
| 64015 | /* 181119 */ // Label 3995: @181119 |
| 64016 | /* 181119 */ GIM_Try, /*On fail goto*//*Label 4030*/ GIMT_Encode4(181178), // Rule ID 10978 // |
| 64017 | /* 181124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 64018 | /* 181127 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64019 | /* 181130 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64020 | /* 181134 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64021 | /* 181138 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64022 | /* 181142 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64023 | /* 181145 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64024 | /* 181149 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64025 | /* 181153 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64026 | /* 181155 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64027 | /* 181162 */ // (uint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PSZ256rm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 64028 | /* 181162 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZ256rm), |
| 64029 | /* 181165 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64030 | /* 181167 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64031 | /* 181171 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64032 | /* 181176 */ GIR_RootConstrainSelectedInstOperands, |
| 64033 | /* 181177 */ // GIR_Coverage, 10978, |
| 64034 | /* 181177 */ GIR_EraseRootFromParent_Done, |
| 64035 | /* 181178 */ // Label 4030: @181178 |
| 64036 | /* 181178 */ GIM_Try, /*On fail goto*//*Label 4031*/ GIMT_Encode4(181237), // Rule ID 11527 // |
| 64037 | /* 181183 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 64038 | /* 181186 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64039 | /* 181189 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64040 | /* 181193 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64041 | /* 181197 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64042 | /* 181201 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64043 | /* 181204 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64044 | /* 181208 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64045 | /* 181212 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64046 | /* 181214 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64047 | /* 181221 */ // (uint_to_fp:{ *:[v8f32] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PSZrm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 64048 | /* 181221 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PSZrm), |
| 64049 | /* 181224 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64050 | /* 181226 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64051 | /* 181230 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64052 | /* 181235 */ GIR_RootConstrainSelectedInstOperands, |
| 64053 | /* 181236 */ // GIR_Coverage, 11527, |
| 64054 | /* 181236 */ GIR_EraseRootFromParent_Done, |
| 64055 | /* 181237 */ // Label 4031: @181237 |
| 64056 | /* 181237 */ GIM_Try, /*On fail goto*//*Label 4032*/ GIMT_Encode4(181267), // Rule ID 10974 // |
| 64057 | /* 181242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 64058 | /* 181245 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64059 | /* 181248 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64060 | /* 181252 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64061 | /* 181256 */ // (uint_to_fp:{ *:[v8f32] } VR256X:{ *:[v8i32] }:$src) => (VCVTUDQ2PSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8i32] }:$src) |
| 64062 | /* 181256 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZ256rr), |
| 64063 | /* 181261 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64064 | /* 181265 */ GIR_RootConstrainSelectedInstOperands, |
| 64065 | /* 181266 */ // GIR_Coverage, 10974, |
| 64066 | /* 181266 */ GIR_Done, |
| 64067 | /* 181267 */ // Label 4032: @181267 |
| 64068 | /* 181267 */ GIM_Try, /*On fail goto*//*Label 4033*/ GIMT_Encode4(181297), // Rule ID 11523 // |
| 64069 | /* 181272 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 64070 | /* 181275 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64071 | /* 181278 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64072 | /* 181282 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64073 | /* 181286 */ // (uint_to_fp:{ *:[v8f32] } VR512:{ *:[v8i64] }:$src) => (VCVTUQQ2PSZrr:{ *:[v8f32] } VR512:{ *:[v8i64] }:$src) |
| 64074 | /* 181286 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PSZrr), |
| 64075 | /* 181291 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64076 | /* 181295 */ GIR_RootConstrainSelectedInstOperands, |
| 64077 | /* 181296 */ // GIR_Coverage, 11523, |
| 64078 | /* 181296 */ GIR_Done, |
| 64079 | /* 181297 */ // Label 4033: @181297 |
| 64080 | /* 181297 */ GIM_Reject, |
| 64081 | /* 181298 */ // Label 3996: @181298 |
| 64082 | /* 181298 */ GIM_Try, /*On fail goto*//*Label 4034*/ GIMT_Encode4(181357), // Rule ID 10915 // |
| 64083 | /* 181303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64084 | /* 181306 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64085 | /* 181309 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64086 | /* 181313 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64087 | /* 181317 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64088 | /* 181321 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64089 | /* 181324 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64090 | /* 181328 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64091 | /* 181332 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64092 | /* 181334 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64093 | /* 181341 */ // (uint_to_fp:{ *:[v8f64] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 64094 | /* 181341 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PDZrm), |
| 64095 | /* 181344 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64096 | /* 181346 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64097 | /* 181350 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64098 | /* 181355 */ GIR_RootConstrainSelectedInstOperands, |
| 64099 | /* 181356 */ // GIR_Coverage, 10915, |
| 64100 | /* 181356 */ GIR_EraseRootFromParent_Done, |
| 64101 | /* 181357 */ // Label 4034: @181357 |
| 64102 | /* 181357 */ GIM_Try, /*On fail goto*//*Label 4035*/ GIMT_Encode4(181416), // Rule ID 11407 // |
| 64103 | /* 181362 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 64104 | /* 181365 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64105 | /* 181368 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64106 | /* 181372 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64107 | /* 181376 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64108 | /* 181380 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64109 | /* 181383 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64110 | /* 181387 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64111 | /* 181391 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64112 | /* 181393 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64113 | /* 181400 */ // (uint_to_fp:{ *:[v8f64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUQQ2PDZrm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 64114 | /* 181400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZrm), |
| 64115 | /* 181403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64116 | /* 181405 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64117 | /* 181409 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64118 | /* 181414 */ GIR_RootConstrainSelectedInstOperands, |
| 64119 | /* 181415 */ // GIR_Coverage, 11407, |
| 64120 | /* 181415 */ GIR_EraseRootFromParent_Done, |
| 64121 | /* 181416 */ // Label 4035: @181416 |
| 64122 | /* 181416 */ GIM_Try, /*On fail goto*//*Label 4036*/ GIMT_Encode4(181442), // Rule ID 10911 // |
| 64123 | /* 181421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64124 | /* 181424 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64125 | /* 181427 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64126 | /* 181431 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64127 | /* 181435 */ // (uint_to_fp:{ *:[v8f64] } VR256X:{ *:[v8i32] }:$src) => (VCVTUDQ2PDZrr:{ *:[v8f64] } VR256X:{ *:[v8i32] }:$src) |
| 64128 | /* 181435 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PDZrr), |
| 64129 | /* 181440 */ GIR_RootConstrainSelectedInstOperands, |
| 64130 | /* 181441 */ // GIR_Coverage, 10911, |
| 64131 | /* 181441 */ GIR_Done, |
| 64132 | /* 181442 */ // Label 4036: @181442 |
| 64133 | /* 181442 */ GIM_Try, /*On fail goto*//*Label 4037*/ GIMT_Encode4(181472), // Rule ID 11403 // |
| 64134 | /* 181447 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDQI), |
| 64135 | /* 181450 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64136 | /* 181453 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64137 | /* 181457 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64138 | /* 181461 */ // (uint_to_fp:{ *:[v8f64] } VR512:{ *:[v8i64] }:$src) => (VCVTUQQ2PDZrr:{ *:[v8f64] } VR512:{ *:[v8i64] }:$src) |
| 64139 | /* 181461 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUQQ2PDZrr), |
| 64140 | /* 181466 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64141 | /* 181470 */ GIR_RootConstrainSelectedInstOperands, |
| 64142 | /* 181471 */ // GIR_Coverage, 11403, |
| 64143 | /* 181471 */ GIR_Done, |
| 64144 | /* 181472 */ // Label 4037: @181472 |
| 64145 | /* 181472 */ GIM_Reject, |
| 64146 | /* 181473 */ // Label 3997: @181473 |
| 64147 | /* 181473 */ GIM_Try, /*On fail goto*//*Label 4038*/ GIMT_Encode4(181532), // Rule ID 11473 // |
| 64148 | /* 181478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64149 | /* 181481 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 64150 | /* 181484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64151 | /* 181488 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64152 | /* 181492 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64153 | /* 181496 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64154 | /* 181499 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64155 | /* 181503 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64156 | /* 181507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64157 | /* 181509 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64158 | /* 181516 */ // (uint_to_fp:{ *:[v16f16] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PHZrm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 64159 | /* 181516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PHZrm), |
| 64160 | /* 181519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64161 | /* 181521 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64162 | /* 181525 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64163 | /* 181530 */ GIR_RootConstrainSelectedInstOperands, |
| 64164 | /* 181531 */ // GIR_Coverage, 11473, |
| 64165 | /* 181531 */ GIR_EraseRootFromParent_Done, |
| 64166 | /* 181532 */ // Label 4038: @181532 |
| 64167 | /* 181532 */ GIM_Try, /*On fail goto*//*Label 4039*/ GIMT_Encode4(181591), // Rule ID 14692 // |
| 64168 | /* 181537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 64169 | /* 181540 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 64170 | /* 181543 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64171 | /* 181547 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64172 | /* 181551 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64173 | /* 181555 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64174 | /* 181558 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64175 | /* 181562 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64176 | /* 181566 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64177 | /* 181568 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64178 | /* 181575 */ // (uint_to_fp:{ *:[v16f16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUW2PHZ256rm:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 64179 | /* 181575 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZ256rm), |
| 64180 | /* 181578 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64181 | /* 181580 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64182 | /* 181584 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64183 | /* 181589 */ GIR_RootConstrainSelectedInstOperands, |
| 64184 | /* 181590 */ // GIR_Coverage, 14692, |
| 64185 | /* 181590 */ GIR_EraseRootFromParent_Done, |
| 64186 | /* 181591 */ // Label 4039: @181591 |
| 64187 | /* 181591 */ GIM_Try, /*On fail goto*//*Label 4040*/ GIMT_Encode4(181621), // Rule ID 11469 // |
| 64188 | /* 181596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64189 | /* 181599 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 64190 | /* 181602 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64191 | /* 181606 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64192 | /* 181610 */ // (uint_to_fp:{ *:[v16f16] } VR512:{ *:[v16i32] }:$src) => (VCVTUDQ2PHZrr:{ *:[v16f16] } VR512:{ *:[v16i32] }:$src) |
| 64193 | /* 181610 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PHZrr), |
| 64194 | /* 181615 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64195 | /* 181619 */ GIR_RootConstrainSelectedInstOperands, |
| 64196 | /* 181620 */ // GIR_Coverage, 11469, |
| 64197 | /* 181620 */ GIR_Done, |
| 64198 | /* 181621 */ // Label 4040: @181621 |
| 64199 | /* 181621 */ GIM_Try, /*On fail goto*//*Label 4041*/ GIMT_Encode4(181651), // Rule ID 14688 // |
| 64200 | /* 181626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 64201 | /* 181629 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 64202 | /* 181632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64203 | /* 181636 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64204 | /* 181640 */ // (uint_to_fp:{ *:[v16f16] } VR256X:{ *:[v16i16] }:$src) => (VCVTUW2PHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16i16] }:$src) |
| 64205 | /* 181640 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZ256rr), |
| 64206 | /* 181645 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64207 | /* 181649 */ GIR_RootConstrainSelectedInstOperands, |
| 64208 | /* 181650 */ // GIR_Coverage, 14688, |
| 64209 | /* 181650 */ GIR_Done, |
| 64210 | /* 181651 */ // Label 4041: @181651 |
| 64211 | /* 181651 */ GIM_Reject, |
| 64212 | /* 181652 */ // Label 3998: @181652 |
| 64213 | /* 181652 */ GIM_Try, /*On fail goto*//*Label 4042*/ GIMT_Encode4(181740), |
| 64214 | /* 181657 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 64215 | /* 181660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64216 | /* 181664 */ GIM_Try, /*On fail goto*//*Label 4043*/ GIMT_Encode4(181716), // Rule ID 10951 // |
| 64217 | /* 181669 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64218 | /* 181672 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64219 | /* 181676 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64220 | /* 181680 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64221 | /* 181683 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64222 | /* 181687 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64223 | /* 181691 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64224 | /* 181693 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64225 | /* 181700 */ // (uint_to_fp:{ *:[v16f32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUDQ2PSZrm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 64226 | /* 181700 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZrm), |
| 64227 | /* 181703 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64228 | /* 181705 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64229 | /* 181709 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64230 | /* 181714 */ GIR_RootConstrainSelectedInstOperands, |
| 64231 | /* 181715 */ // GIR_Coverage, 10951, |
| 64232 | /* 181715 */ GIR_EraseRootFromParent_Done, |
| 64233 | /* 181716 */ // Label 4043: @181716 |
| 64234 | /* 181716 */ GIM_Try, /*On fail goto*//*Label 4044*/ GIMT_Encode4(181739), // Rule ID 10947 // |
| 64235 | /* 181721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64236 | /* 181724 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64237 | /* 181728 */ // (uint_to_fp:{ *:[v16f32] } VR512:{ *:[v16i32] }:$src) => (VCVTUDQ2PSZrr:{ *:[v16f32] } VR512:{ *:[v16i32] }:$src) |
| 64238 | /* 181728 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUDQ2PSZrr), |
| 64239 | /* 181733 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64240 | /* 181737 */ GIR_RootConstrainSelectedInstOperands, |
| 64241 | /* 181738 */ // GIR_Coverage, 10947, |
| 64242 | /* 181738 */ GIR_Done, |
| 64243 | /* 181739 */ // Label 4044: @181739 |
| 64244 | /* 181739 */ GIM_Reject, |
| 64245 | /* 181740 */ // Label 4042: @181740 |
| 64246 | /* 181740 */ GIM_Reject, |
| 64247 | /* 181741 */ // Label 3999: @181741 |
| 64248 | /* 181741 */ GIM_Try, /*On fail goto*//*Label 4045*/ GIMT_Encode4(181829), |
| 64249 | /* 181746 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 64250 | /* 181749 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64251 | /* 181753 */ GIM_Try, /*On fail goto*//*Label 4046*/ GIMT_Encode4(181805), // Rule ID 14665 // |
| 64252 | /* 181758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64253 | /* 181761 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64254 | /* 181765 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64255 | /* 181769 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64256 | /* 181772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64257 | /* 181776 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64258 | /* 181780 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64259 | /* 181782 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64260 | /* 181789 */ // (uint_to_fp:{ *:[v32f16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VCVTUW2PHZrm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 64261 | /* 181789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZrm), |
| 64262 | /* 181792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64263 | /* 181794 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 64264 | /* 181798 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64265 | /* 181803 */ GIR_RootConstrainSelectedInstOperands, |
| 64266 | /* 181804 */ // GIR_Coverage, 14665, |
| 64267 | /* 181804 */ GIR_EraseRootFromParent_Done, |
| 64268 | /* 181805 */ // Label 4046: @181805 |
| 64269 | /* 181805 */ GIM_Try, /*On fail goto*//*Label 4047*/ GIMT_Encode4(181828), // Rule ID 14661 // |
| 64270 | /* 181810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 64271 | /* 181813 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64272 | /* 181817 */ // (uint_to_fp:{ *:[v32f16] } VR512:{ *:[v32i16] }:$src) => (VCVTUW2PHZrr:{ *:[v32f16] } VR512:{ *:[v32i16] }:$src) |
| 64273 | /* 181817 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VCVTUW2PHZrr), |
| 64274 | /* 181822 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 64275 | /* 181826 */ GIR_RootConstrainSelectedInstOperands, |
| 64276 | /* 181827 */ // GIR_Coverage, 14661, |
| 64277 | /* 181827 */ GIR_Done, |
| 64278 | /* 181828 */ // Label 4047: @181828 |
| 64279 | /* 181828 */ GIM_Reject, |
| 64280 | /* 181829 */ // Label 4045: @181829 |
| 64281 | /* 181829 */ GIM_Reject, |
| 64282 | /* 181830 */ // Label 4000: @181830 |
| 64283 | /* 181830 */ GIM_Reject, |
| 64284 | /* 181831 */ // Label 54: @181831 |
| 64285 | /* 181831 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 4051*/ GIMT_Encode4(181953), |
| 64286 | /* 181842 */ /*GILLT_s32*//*Label 4048*/ GIMT_Encode4(181854), |
| 64287 | /* 181846 */ /*GILLT_s64*//*Label 4049*/ GIMT_Encode4(181887), |
| 64288 | /* 181850 */ /*GILLT_s80*//*Label 4050*/ GIMT_Encode4(181920), |
| 64289 | /* 181854 */ // Label 4048: @181854 |
| 64290 | /* 181854 */ GIM_Try, /*On fail goto*//*Label 4052*/ GIMT_Encode4(181886), // Rule ID 1045 // |
| 64291 | /* 181859 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 64292 | /* 181862 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 64293 | /* 181865 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 64294 | /* 181869 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 64295 | /* 181873 */ // (fabs:{ *:[f32] } RFP32:{ *:[f32] }:$src) => (ABS_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src) |
| 64296 | /* 181873 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ABS_Fp32), |
| 64297 | /* 181878 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 64298 | /* 181884 */ GIR_RootConstrainSelectedInstOperands, |
| 64299 | /* 181885 */ // GIR_Coverage, 1045, |
| 64300 | /* 181885 */ GIR_Done, |
| 64301 | /* 181886 */ // Label 4052: @181886 |
| 64302 | /* 181886 */ GIM_Reject, |
| 64303 | /* 181887 */ // Label 4049: @181887 |
| 64304 | /* 181887 */ GIM_Try, /*On fail goto*//*Label 4053*/ GIMT_Encode4(181919), // Rule ID 1046 // |
| 64305 | /* 181892 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 64306 | /* 181895 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 64307 | /* 181898 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 64308 | /* 181902 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 64309 | /* 181906 */ // (fabs:{ *:[f64] } RFP64:{ *:[f64] }:$src) => (ABS_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src) |
| 64310 | /* 181906 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ABS_Fp64), |
| 64311 | /* 181911 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 64312 | /* 181917 */ GIR_RootConstrainSelectedInstOperands, |
| 64313 | /* 181918 */ // GIR_Coverage, 1046, |
| 64314 | /* 181918 */ GIR_Done, |
| 64315 | /* 181919 */ // Label 4053: @181919 |
| 64316 | /* 181919 */ GIM_Reject, |
| 64317 | /* 181920 */ // Label 4050: @181920 |
| 64318 | /* 181920 */ GIM_Try, /*On fail goto*//*Label 4054*/ GIMT_Encode4(181952), // Rule ID 1047 // |
| 64319 | /* 181925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 64320 | /* 181928 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 64321 | /* 181931 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 64322 | /* 181935 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 64323 | /* 181939 */ // (fabs:{ *:[f80] } RFP80:{ *:[f80] }:$src) => (ABS_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src) |
| 64324 | /* 181939 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ABS_Fp80), |
| 64325 | /* 181944 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 64326 | /* 181950 */ GIR_RootConstrainSelectedInstOperands, |
| 64327 | /* 181951 */ // GIR_Coverage, 1047, |
| 64328 | /* 181951 */ GIR_Done, |
| 64329 | /* 181952 */ // Label 4054: @181952 |
| 64330 | /* 181952 */ GIM_Reject, |
| 64331 | /* 181953 */ // Label 4051: @181953 |
| 64332 | /* 181953 */ GIM_Reject, |
| 64333 | /* 181954 */ // Label 55: @181954 |
| 64334 | /* 181954 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4067*/ GIMT_Encode4(185274), |
| 64335 | /* 181965 */ /*GILLT_v2s64*//*Label 4055*/ GIMT_Encode4(182033), GIMT_Encode4(0), |
| 64336 | /* 181973 */ /*GILLT_v4s32*//*Label 4056*/ GIMT_Encode4(182362), |
| 64337 | /* 181977 */ /*GILLT_v4s64*//*Label 4057*/ GIMT_Encode4(182704), GIMT_Encode4(0), |
| 64338 | /* 181985 */ /*GILLT_v8s16*//*Label 4058*/ GIMT_Encode4(183021), |
| 64339 | /* 181989 */ /*GILLT_v8s32*//*Label 4059*/ GIMT_Encode4(183363), |
| 64340 | /* 181993 */ /*GILLT_v8s64*//*Label 4060*/ GIMT_Encode4(183678), GIMT_Encode4(0), |
| 64341 | /* 182001 */ /*GILLT_v16s8*//*Label 4061*/ GIMT_Encode4(183834), |
| 64342 | /* 182005 */ /*GILLT_v16s16*//*Label 4062*/ GIMT_Encode4(184176), |
| 64343 | /* 182009 */ /*GILLT_v16s32*//*Label 4063*/ GIMT_Encode4(184491), GIMT_Encode4(0), |
| 64344 | /* 182017 */ /*GILLT_v32s8*//*Label 4064*/ GIMT_Encode4(184647), |
| 64345 | /* 182021 */ /*GILLT_v32s16*//*Label 4065*/ GIMT_Encode4(184962), GIMT_Encode4(0), |
| 64346 | /* 182029 */ /*GILLT_v64s8*//*Label 4066*/ GIMT_Encode4(185118), |
| 64347 | /* 182033 */ // Label 4055: @182033 |
| 64348 | /* 182033 */ GIM_Try, /*On fail goto*//*Label 4068*/ GIMT_Encode4(182361), |
| 64349 | /* 182038 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 64350 | /* 182041 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 64351 | /* 182044 */ GIM_Try, /*On fail goto*//*Label 4069*/ GIMT_Encode4(182106), // Rule ID 24159 // |
| 64352 | /* 182049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64353 | /* 182052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64354 | /* 182056 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64355 | /* 182060 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64356 | /* 182064 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64357 | /* 182067 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64358 | /* 182071 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64359 | /* 182075 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64360 | /* 182079 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64361 | /* 182081 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64362 | /* 182088 */ // (smin:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMINSQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64363 | /* 182088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ128rm), |
| 64364 | /* 182091 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64365 | /* 182093 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64366 | /* 182095 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64367 | /* 182099 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64368 | /* 182104 */ GIR_RootConstrainSelectedInstOperands, |
| 64369 | /* 182105 */ // GIR_Coverage, 24159, |
| 64370 | /* 182105 */ GIR_EraseRootFromParent_Done, |
| 64371 | /* 182106 */ // Label 4069: @182106 |
| 64372 | /* 182106 */ GIM_Try, /*On fail goto*//*Label 4070*/ GIMT_Encode4(182168), // Rule ID 5594 // |
| 64373 | /* 182111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64374 | /* 182114 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64375 | /* 182118 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64376 | /* 182122 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64377 | /* 182126 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64378 | /* 182130 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64379 | /* 182133 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64380 | /* 182137 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64381 | /* 182141 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64382 | /* 182143 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64383 | /* 182150 */ // (smin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64384 | /* 182150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ128rm), |
| 64385 | /* 182153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64386 | /* 182155 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64387 | /* 182157 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64388 | /* 182161 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64389 | /* 182166 */ GIR_RootConstrainSelectedInstOperands, |
| 64390 | /* 182167 */ // GIR_Coverage, 5594, |
| 64391 | /* 182167 */ GIR_EraseRootFromParent_Done, |
| 64392 | /* 182168 */ // Label 4070: @182168 |
| 64393 | /* 182168 */ GIM_Try, /*On fail goto*//*Label 4071*/ GIMT_Encode4(182195), // Rule ID 5591 // |
| 64394 | /* 182173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64395 | /* 182176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64396 | /* 182180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64397 | /* 182184 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64398 | /* 182188 */ // (smin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMINSQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 64399 | /* 182188 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ128rr), |
| 64400 | /* 182193 */ GIR_RootConstrainSelectedInstOperands, |
| 64401 | /* 182194 */ // GIR_Coverage, 5591, |
| 64402 | /* 182194 */ GIR_Done, |
| 64403 | /* 182195 */ // Label 4071: @182195 |
| 64404 | /* 182195 */ GIM_Try, /*On fail goto*//*Label 4072*/ GIMT_Encode4(182360), // Rule ID 20023 // |
| 64405 | /* 182200 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 64406 | /* 182203 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 64407 | /* 182207 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64408 | /* 182211 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64409 | /* 182215 */ // (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] }) |
| 64410 | /* 182215 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 64411 | /* 182218 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64412 | /* 182222 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64413 | /* 182227 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 64414 | /* 182229 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 64415 | /* 182232 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 64416 | /* 182236 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64417 | /* 182241 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 64418 | /* 182244 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 64419 | /* 182248 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 64420 | /* 182251 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 64421 | /* 182256 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64422 | /* 182261 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 64423 | /* 182266 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 64424 | /* 182269 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64425 | /* 182273 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64426 | /* 182278 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 64427 | /* 182280 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 64428 | /* 182283 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 64429 | /* 182287 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64430 | /* 182292 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 64431 | /* 182295 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 64432 | /* 182299 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 64433 | /* 182302 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 64434 | /* 182307 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64435 | /* 182312 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 64436 | /* 182317 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 64437 | /* 182320 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrr), |
| 64438 | /* 182324 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64439 | /* 182329 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 64440 | /* 182332 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 64441 | /* 182335 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64442 | /* 182337 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 64443 | /* 182340 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64444 | /* 182342 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 64445 | /* 182349 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 64446 | /* 182354 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64447 | /* 182359 */ // GIR_Coverage, 20023, |
| 64448 | /* 182359 */ GIR_EraseRootFromParent_Done, |
| 64449 | /* 182360 */ // Label 4072: @182360 |
| 64450 | /* 182360 */ GIM_Reject, |
| 64451 | /* 182361 */ // Label 4068: @182361 |
| 64452 | /* 182361 */ GIM_Reject, |
| 64453 | /* 182362 */ // Label 4056: @182362 |
| 64454 | /* 182362 */ GIM_Try, /*On fail goto*//*Label 4073*/ GIMT_Encode4(182703), |
| 64455 | /* 182367 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 64456 | /* 182370 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 64457 | /* 182373 */ GIM_Try, /*On fail goto*//*Label 4074*/ GIMT_Encode4(182435), // Rule ID 23583 // |
| 64458 | /* 182378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 64459 | /* 182381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64460 | /* 182385 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64461 | /* 182389 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64462 | /* 182393 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64463 | /* 182396 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64464 | /* 182400 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64465 | /* 182404 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64466 | /* 182408 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64467 | /* 182410 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64468 | /* 182417 */ // (smin:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMINSDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64469 | /* 182417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDrm), |
| 64470 | /* 182420 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64471 | /* 182422 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64472 | /* 182424 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64473 | /* 182428 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64474 | /* 182433 */ GIR_RootConstrainSelectedInstOperands, |
| 64475 | /* 182434 */ // GIR_Coverage, 23583, |
| 64476 | /* 182434 */ GIR_EraseRootFromParent_Done, |
| 64477 | /* 182435 */ // Label 4074: @182435 |
| 64478 | /* 182435 */ GIM_Try, /*On fail goto*//*Label 4075*/ GIMT_Encode4(182497), // Rule ID 24141 // |
| 64479 | /* 182440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64480 | /* 182443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64481 | /* 182447 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64482 | /* 182451 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64483 | /* 182455 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64484 | /* 182458 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64485 | /* 182462 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64486 | /* 182466 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64487 | /* 182470 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64488 | /* 182472 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64489 | /* 182479 */ // (smin:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMINSDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64490 | /* 182479 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ128rm), |
| 64491 | /* 182482 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64492 | /* 182484 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64493 | /* 182486 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64494 | /* 182490 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64495 | /* 182495 */ GIR_RootConstrainSelectedInstOperands, |
| 64496 | /* 182496 */ // GIR_Coverage, 24141, |
| 64497 | /* 182496 */ GIR_EraseRootFromParent_Done, |
| 64498 | /* 182497 */ // Label 4075: @182497 |
| 64499 | /* 182497 */ GIM_Try, /*On fail goto*//*Label 4076*/ GIMT_Encode4(182559), // Rule ID 3186 // |
| 64500 | /* 182502 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 64501 | /* 182505 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64502 | /* 182509 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64503 | /* 182513 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64504 | /* 182517 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64505 | /* 182521 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64506 | /* 182524 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64507 | /* 182528 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64508 | /* 182532 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64509 | /* 182534 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64510 | /* 182541 */ // (smin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64511 | /* 182541 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDrm), |
| 64512 | /* 182544 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64513 | /* 182546 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64514 | /* 182548 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64515 | /* 182552 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64516 | /* 182557 */ GIR_RootConstrainSelectedInstOperands, |
| 64517 | /* 182558 */ // GIR_Coverage, 3186, |
| 64518 | /* 182558 */ GIR_EraseRootFromParent_Done, |
| 64519 | /* 182559 */ // Label 4076: @182559 |
| 64520 | /* 182559 */ GIM_Try, /*On fail goto*//*Label 4077*/ GIMT_Encode4(182621), // Rule ID 5567 // |
| 64521 | /* 182564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64522 | /* 182567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64523 | /* 182571 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64524 | /* 182575 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64525 | /* 182579 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64526 | /* 182583 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64527 | /* 182586 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64528 | /* 182590 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64529 | /* 182594 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64530 | /* 182596 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64531 | /* 182603 */ // (smin:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64532 | /* 182603 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ128rm), |
| 64533 | /* 182606 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64534 | /* 182608 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64535 | /* 182610 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64536 | /* 182614 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64537 | /* 182619 */ GIR_RootConstrainSelectedInstOperands, |
| 64538 | /* 182620 */ // GIR_Coverage, 5567, |
| 64539 | /* 182620 */ GIR_EraseRootFromParent_Done, |
| 64540 | /* 182621 */ // Label 4077: @182621 |
| 64541 | /* 182621 */ GIM_Try, /*On fail goto*//*Label 4078*/ GIMT_Encode4(182648), // Rule ID 3185 // |
| 64542 | /* 182626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 64543 | /* 182629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64544 | /* 182633 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64545 | /* 182637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64546 | /* 182641 */ // (smin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMINSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 64547 | /* 182641 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDrr), |
| 64548 | /* 182646 */ GIR_RootConstrainSelectedInstOperands, |
| 64549 | /* 182647 */ // GIR_Coverage, 3185, |
| 64550 | /* 182647 */ GIR_Done, |
| 64551 | /* 182648 */ // Label 4078: @182648 |
| 64552 | /* 182648 */ GIM_Try, /*On fail goto*//*Label 4079*/ GIMT_Encode4(182675), // Rule ID 3223 // |
| 64553 | /* 182653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 64554 | /* 182656 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64555 | /* 182660 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64556 | /* 182664 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64557 | /* 182668 */ // (smin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMINSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 64558 | /* 182668 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINSDrr), |
| 64559 | /* 182673 */ GIR_RootConstrainSelectedInstOperands, |
| 64560 | /* 182674 */ // GIR_Coverage, 3223, |
| 64561 | /* 182674 */ GIR_Done, |
| 64562 | /* 182675 */ // Label 4079: @182675 |
| 64563 | /* 182675 */ GIM_Try, /*On fail goto*//*Label 4080*/ GIMT_Encode4(182702), // Rule ID 5564 // |
| 64564 | /* 182680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64565 | /* 182683 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64566 | /* 182687 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64567 | /* 182691 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64568 | /* 182695 */ // (smin:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMINSDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 64569 | /* 182695 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ128rr), |
| 64570 | /* 182700 */ GIR_RootConstrainSelectedInstOperands, |
| 64571 | /* 182701 */ // GIR_Coverage, 5564, |
| 64572 | /* 182701 */ GIR_Done, |
| 64573 | /* 182702 */ // Label 4080: @182702 |
| 64574 | /* 182702 */ GIM_Reject, |
| 64575 | /* 182703 */ // Label 4073: @182703 |
| 64576 | /* 182703 */ GIM_Reject, |
| 64577 | /* 182704 */ // Label 4057: @182704 |
| 64578 | /* 182704 */ GIM_Try, /*On fail goto*//*Label 4081*/ GIMT_Encode4(183020), |
| 64579 | /* 182709 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 64580 | /* 182712 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 64581 | /* 182715 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64582 | /* 182719 */ GIM_Try, /*On fail goto*//*Label 4082*/ GIMT_Encode4(182777), // Rule ID 24153 // |
| 64583 | /* 182724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64584 | /* 182727 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64585 | /* 182731 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64586 | /* 182735 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64587 | /* 182738 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64588 | /* 182742 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64589 | /* 182746 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64590 | /* 182750 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64591 | /* 182752 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64592 | /* 182759 */ // (smin:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMINSQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64593 | /* 182759 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ256rm), |
| 64594 | /* 182762 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64595 | /* 182764 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64596 | /* 182766 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64597 | /* 182770 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64598 | /* 182775 */ GIR_RootConstrainSelectedInstOperands, |
| 64599 | /* 182776 */ // GIR_Coverage, 24153, |
| 64600 | /* 182776 */ GIR_EraseRootFromParent_Done, |
| 64601 | /* 182777 */ // Label 4082: @182777 |
| 64602 | /* 182777 */ GIM_Try, /*On fail goto*//*Label 4083*/ GIMT_Encode4(182835), // Rule ID 5585 // |
| 64603 | /* 182782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64604 | /* 182785 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64605 | /* 182789 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64606 | /* 182793 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64607 | /* 182797 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64608 | /* 182800 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64609 | /* 182804 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64610 | /* 182808 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64611 | /* 182810 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64612 | /* 182817 */ // (smin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64613 | /* 182817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ256rm), |
| 64614 | /* 182820 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64615 | /* 182822 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64616 | /* 182824 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64617 | /* 182828 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64618 | /* 182833 */ GIR_RootConstrainSelectedInstOperands, |
| 64619 | /* 182834 */ // GIR_Coverage, 5585, |
| 64620 | /* 182834 */ GIR_EraseRootFromParent_Done, |
| 64621 | /* 182835 */ // Label 4083: @182835 |
| 64622 | /* 182835 */ GIM_Try, /*On fail goto*//*Label 4084*/ GIMT_Encode4(182858), // Rule ID 5582 // |
| 64623 | /* 182840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64624 | /* 182843 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64625 | /* 182847 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64626 | /* 182851 */ // (smin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMINSQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 64627 | /* 182851 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSQZ256rr), |
| 64628 | /* 182856 */ GIR_RootConstrainSelectedInstOperands, |
| 64629 | /* 182857 */ // GIR_Coverage, 5582, |
| 64630 | /* 182857 */ GIR_Done, |
| 64631 | /* 182858 */ // Label 4084: @182858 |
| 64632 | /* 182858 */ GIM_Try, /*On fail goto*//*Label 4085*/ GIMT_Encode4(183019), // Rule ID 20021 // |
| 64633 | /* 182863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 64634 | /* 182866 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64635 | /* 182870 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64636 | /* 182874 */ // (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] }) |
| 64637 | /* 182874 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 64638 | /* 182877 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64639 | /* 182881 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64640 | /* 182886 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 64641 | /* 182888 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 64642 | /* 182891 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 64643 | /* 182895 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64644 | /* 182900 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 64645 | /* 182903 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 64646 | /* 182907 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 64647 | /* 182910 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 64648 | /* 182915 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64649 | /* 182920 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 64650 | /* 182925 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 64651 | /* 182928 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 64652 | /* 182932 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64653 | /* 182937 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 64654 | /* 182939 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 64655 | /* 182942 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 64656 | /* 182946 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64657 | /* 182951 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 64658 | /* 182954 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 64659 | /* 182958 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 64660 | /* 182961 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 64661 | /* 182966 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64662 | /* 182971 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 64663 | /* 182976 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 64664 | /* 182979 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrr), |
| 64665 | /* 182983 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 64666 | /* 182988 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 64667 | /* 182991 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 64668 | /* 182994 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 64669 | /* 182996 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 64670 | /* 182999 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64671 | /* 183001 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 64672 | /* 183008 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 64673 | /* 183013 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 64674 | /* 183018 */ // GIR_Coverage, 20021, |
| 64675 | /* 183018 */ GIR_EraseRootFromParent_Done, |
| 64676 | /* 183019 */ // Label 4085: @183019 |
| 64677 | /* 183019 */ GIM_Reject, |
| 64678 | /* 183020 */ // Label 4081: @183020 |
| 64679 | /* 183020 */ GIM_Reject, |
| 64680 | /* 183021 */ // Label 4058: @183021 |
| 64681 | /* 183021 */ GIM_Try, /*On fail goto*//*Label 4086*/ GIMT_Encode4(183362), |
| 64682 | /* 183026 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 64683 | /* 183029 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 64684 | /* 183032 */ GIM_Try, /*On fail goto*//*Label 4087*/ GIMT_Encode4(183094), // Rule ID 23547 // |
| 64685 | /* 183037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 64686 | /* 183040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64687 | /* 183044 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64688 | /* 183048 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64689 | /* 183052 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64690 | /* 183055 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64691 | /* 183059 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64692 | /* 183063 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64693 | /* 183067 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64694 | /* 183069 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64695 | /* 183076 */ // (smin:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMINSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64696 | /* 183076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWrm), |
| 64697 | /* 183079 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64698 | /* 183081 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64699 | /* 183083 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64700 | /* 183087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64701 | /* 183092 */ GIR_RootConstrainSelectedInstOperands, |
| 64702 | /* 183093 */ // GIR_Coverage, 23547, |
| 64703 | /* 183093 */ GIR_EraseRootFromParent_Done, |
| 64704 | /* 183094 */ // Label 4087: @183094 |
| 64705 | /* 183094 */ GIM_Try, /*On fail goto*//*Label 4088*/ GIMT_Encode4(183156), // Rule ID 24126 // |
| 64706 | /* 183099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 64707 | /* 183102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64708 | /* 183106 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64709 | /* 183110 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64710 | /* 183114 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64711 | /* 183117 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64712 | /* 183121 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64713 | /* 183125 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64714 | /* 183129 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64715 | /* 183131 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64716 | /* 183138 */ // (smin:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMINSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64717 | /* 183138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ128rm), |
| 64718 | /* 183141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64719 | /* 183143 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64720 | /* 183145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64721 | /* 183149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64722 | /* 183154 */ GIR_RootConstrainSelectedInstOperands, |
| 64723 | /* 183155 */ // GIR_Coverage, 24126, |
| 64724 | /* 183155 */ GIR_EraseRootFromParent_Done, |
| 64725 | /* 183156 */ // Label 4088: @183156 |
| 64726 | /* 183156 */ GIM_Try, /*On fail goto*//*Label 4089*/ GIMT_Encode4(183218), // Rule ID 2643 // |
| 64727 | /* 183161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 64728 | /* 183164 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64729 | /* 183168 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64730 | /* 183172 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64731 | /* 183176 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64732 | /* 183180 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64733 | /* 183183 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64734 | /* 183187 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64735 | /* 183191 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64736 | /* 183193 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64737 | /* 183200 */ // (smin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64738 | /* 183200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWrm), |
| 64739 | /* 183203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64740 | /* 183205 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64741 | /* 183207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64742 | /* 183211 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64743 | /* 183216 */ GIR_RootConstrainSelectedInstOperands, |
| 64744 | /* 183217 */ // GIR_Coverage, 2643, |
| 64745 | /* 183217 */ GIR_EraseRootFromParent_Done, |
| 64746 | /* 183218 */ // Label 4089: @183218 |
| 64747 | /* 183218 */ GIM_Try, /*On fail goto*//*Label 4090*/ GIMT_Encode4(183280), // Rule ID 5543 // |
| 64748 | /* 183223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 64749 | /* 183226 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64750 | /* 183230 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64751 | /* 183234 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64752 | /* 183238 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64753 | /* 183242 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64754 | /* 183245 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64755 | /* 183249 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64756 | /* 183253 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64757 | /* 183255 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64758 | /* 183262 */ // (smin:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64759 | /* 183262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ128rm), |
| 64760 | /* 183265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64761 | /* 183267 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64762 | /* 183269 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64763 | /* 183273 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64764 | /* 183278 */ GIR_RootConstrainSelectedInstOperands, |
| 64765 | /* 183279 */ // GIR_Coverage, 5543, |
| 64766 | /* 183279 */ GIR_EraseRootFromParent_Done, |
| 64767 | /* 183280 */ // Label 4090: @183280 |
| 64768 | /* 183280 */ GIM_Try, /*On fail goto*//*Label 4091*/ GIMT_Encode4(183307), // Rule ID 2642 // |
| 64769 | /* 183285 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 64770 | /* 183288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64771 | /* 183292 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64772 | /* 183296 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64773 | /* 183300 */ // (smin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMINSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 64774 | /* 183300 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWrr), |
| 64775 | /* 183305 */ GIR_RootConstrainSelectedInstOperands, |
| 64776 | /* 183306 */ // GIR_Coverage, 2642, |
| 64777 | /* 183306 */ GIR_Done, |
| 64778 | /* 183307 */ // Label 4091: @183307 |
| 64779 | /* 183307 */ GIM_Try, /*On fail goto*//*Label 4092*/ GIMT_Encode4(183334), // Rule ID 2644 // |
| 64780 | /* 183312 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 64781 | /* 183315 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64782 | /* 183319 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64783 | /* 183323 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64784 | /* 183327 */ // (smin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMINSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 64785 | /* 183327 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINSWrr), |
| 64786 | /* 183332 */ GIR_RootConstrainSelectedInstOperands, |
| 64787 | /* 183333 */ // GIR_Coverage, 2644, |
| 64788 | /* 183333 */ GIR_Done, |
| 64789 | /* 183334 */ // Label 4092: @183334 |
| 64790 | /* 183334 */ GIM_Try, /*On fail goto*//*Label 4093*/ GIMT_Encode4(183361), // Rule ID 5540 // |
| 64791 | /* 183339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 64792 | /* 183342 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64793 | /* 183346 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64794 | /* 183350 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 64795 | /* 183354 */ // (smin:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMINSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 64796 | /* 183354 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ128rr), |
| 64797 | /* 183359 */ GIR_RootConstrainSelectedInstOperands, |
| 64798 | /* 183360 */ // GIR_Coverage, 5540, |
| 64799 | /* 183360 */ GIR_Done, |
| 64800 | /* 183361 */ // Label 4093: @183361 |
| 64801 | /* 183361 */ GIM_Reject, |
| 64802 | /* 183362 */ // Label 4086: @183362 |
| 64803 | /* 183362 */ GIM_Reject, |
| 64804 | /* 183363 */ // Label 4059: @183363 |
| 64805 | /* 183363 */ GIM_Try, /*On fail goto*//*Label 4094*/ GIMT_Encode4(183677), |
| 64806 | /* 183368 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 64807 | /* 183371 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 64808 | /* 183374 */ GIM_Try, /*On fail goto*//*Label 4095*/ GIMT_Encode4(183436), // Rule ID 23592 // |
| 64809 | /* 183379 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 64810 | /* 183382 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 64811 | /* 183386 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64812 | /* 183390 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64813 | /* 183394 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64814 | /* 183397 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64815 | /* 183401 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64816 | /* 183405 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 64817 | /* 183409 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64818 | /* 183411 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64819 | /* 183418 */ // (smin:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMINSDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64820 | /* 183418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDYrm), |
| 64821 | /* 183421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64822 | /* 183423 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64823 | /* 183425 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64824 | /* 183429 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64825 | /* 183434 */ GIR_RootConstrainSelectedInstOperands, |
| 64826 | /* 183435 */ // GIR_Coverage, 23592, |
| 64827 | /* 183435 */ GIR_EraseRootFromParent_Done, |
| 64828 | /* 183436 */ // Label 4095: @183436 |
| 64829 | /* 183436 */ GIM_Try, /*On fail goto*//*Label 4096*/ GIMT_Encode4(183498), // Rule ID 24135 // |
| 64830 | /* 183441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64831 | /* 183444 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64832 | /* 183448 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64833 | /* 183452 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64834 | /* 183456 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64835 | /* 183459 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64836 | /* 183463 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64837 | /* 183467 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64838 | /* 183471 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64839 | /* 183473 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64840 | /* 183480 */ // (smin:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMINSDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64841 | /* 183480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ256rm), |
| 64842 | /* 183483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64843 | /* 183485 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64844 | /* 183487 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64845 | /* 183491 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64846 | /* 183496 */ GIR_RootConstrainSelectedInstOperands, |
| 64847 | /* 183497 */ // GIR_Coverage, 24135, |
| 64848 | /* 183497 */ GIR_EraseRootFromParent_Done, |
| 64849 | /* 183498 */ // Label 4096: @183498 |
| 64850 | /* 183498 */ GIM_Try, /*On fail goto*//*Label 4097*/ GIMT_Encode4(183560), // Rule ID 3204 // |
| 64851 | /* 183503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 64852 | /* 183506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 64853 | /* 183510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 64854 | /* 183514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64855 | /* 183518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64856 | /* 183522 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64857 | /* 183525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64858 | /* 183529 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64859 | /* 183533 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64860 | /* 183535 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64861 | /* 183542 */ // (smin:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64862 | /* 183542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDYrm), |
| 64863 | /* 183545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64864 | /* 183547 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64865 | /* 183549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64866 | /* 183553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64867 | /* 183558 */ GIR_RootConstrainSelectedInstOperands, |
| 64868 | /* 183559 */ // GIR_Coverage, 3204, |
| 64869 | /* 183559 */ GIR_EraseRootFromParent_Done, |
| 64870 | /* 183560 */ // Label 4097: @183560 |
| 64871 | /* 183560 */ GIM_Try, /*On fail goto*//*Label 4098*/ GIMT_Encode4(183622), // Rule ID 5558 // |
| 64872 | /* 183565 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64873 | /* 183568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64874 | /* 183572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64875 | /* 183576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64876 | /* 183580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64877 | /* 183584 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64878 | /* 183587 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64879 | /* 183591 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64880 | /* 183595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64881 | /* 183597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64882 | /* 183604 */ // (smin:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64883 | /* 183604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ256rm), |
| 64884 | /* 183607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64885 | /* 183609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64886 | /* 183611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64887 | /* 183615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64888 | /* 183620 */ GIR_RootConstrainSelectedInstOperands, |
| 64889 | /* 183621 */ // GIR_Coverage, 5558, |
| 64890 | /* 183621 */ GIR_EraseRootFromParent_Done, |
| 64891 | /* 183622 */ // Label 4098: @183622 |
| 64892 | /* 183622 */ GIM_Try, /*On fail goto*//*Label 4099*/ GIMT_Encode4(183649), // Rule ID 3203 // |
| 64893 | /* 183627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 64894 | /* 183630 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 64895 | /* 183634 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 64896 | /* 183638 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 64897 | /* 183642 */ // (smin:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMINSDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 64898 | /* 183642 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDYrr), |
| 64899 | /* 183647 */ GIR_RootConstrainSelectedInstOperands, |
| 64900 | /* 183648 */ // GIR_Coverage, 3203, |
| 64901 | /* 183648 */ GIR_Done, |
| 64902 | /* 183649 */ // Label 4099: @183649 |
| 64903 | /* 183649 */ GIM_Try, /*On fail goto*//*Label 4100*/ GIMT_Encode4(183676), // Rule ID 5555 // |
| 64904 | /* 183654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 64905 | /* 183657 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64906 | /* 183661 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64907 | /* 183665 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 64908 | /* 183669 */ // (smin:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMINSDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 64909 | /* 183669 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDZ256rr), |
| 64910 | /* 183674 */ GIR_RootConstrainSelectedInstOperands, |
| 64911 | /* 183675 */ // GIR_Coverage, 5555, |
| 64912 | /* 183675 */ GIR_Done, |
| 64913 | /* 183676 */ // Label 4100: @183676 |
| 64914 | /* 183676 */ GIM_Reject, |
| 64915 | /* 183677 */ // Label 4094: @183677 |
| 64916 | /* 183677 */ GIM_Reject, |
| 64917 | /* 183678 */ // Label 4060: @183678 |
| 64918 | /* 183678 */ GIM_Try, /*On fail goto*//*Label 4101*/ GIMT_Encode4(183833), |
| 64919 | /* 183683 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 64920 | /* 183686 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 64921 | /* 183689 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64922 | /* 183693 */ GIM_Try, /*On fail goto*//*Label 4102*/ GIMT_Encode4(183751), // Rule ID 24147 // |
| 64923 | /* 183698 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64924 | /* 183701 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64925 | /* 183705 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64926 | /* 183709 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64927 | /* 183712 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64928 | /* 183716 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64929 | /* 183720 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64930 | /* 183724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64931 | /* 183726 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64932 | /* 183733 */ // (smin:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMINSQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64933 | /* 183733 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrm), |
| 64934 | /* 183736 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64935 | /* 183738 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64936 | /* 183740 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64937 | /* 183744 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64938 | /* 183749 */ GIR_RootConstrainSelectedInstOperands, |
| 64939 | /* 183750 */ // GIR_Coverage, 24147, |
| 64940 | /* 183750 */ GIR_EraseRootFromParent_Done, |
| 64941 | /* 183751 */ // Label 4102: @183751 |
| 64942 | /* 183751 */ GIM_Try, /*On fail goto*//*Label 4103*/ GIMT_Encode4(183809), // Rule ID 5576 // |
| 64943 | /* 183756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64944 | /* 183759 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64945 | /* 183763 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 64946 | /* 183767 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64947 | /* 183771 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64948 | /* 183774 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64949 | /* 183778 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64950 | /* 183782 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64951 | /* 183784 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64952 | /* 183791 */ // (smin:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64953 | /* 183791 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrm), |
| 64954 | /* 183794 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64955 | /* 183796 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 64956 | /* 183798 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64957 | /* 183802 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64958 | /* 183807 */ GIR_RootConstrainSelectedInstOperands, |
| 64959 | /* 183808 */ // GIR_Coverage, 5576, |
| 64960 | /* 183808 */ GIR_EraseRootFromParent_Done, |
| 64961 | /* 183809 */ // Label 4103: @183809 |
| 64962 | /* 183809 */ GIM_Try, /*On fail goto*//*Label 4104*/ GIMT_Encode4(183832), // Rule ID 5573 // |
| 64963 | /* 183814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 64964 | /* 183817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64965 | /* 183821 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 64966 | /* 183825 */ // (smin:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMINSQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 64967 | /* 183825 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSQZrr), |
| 64968 | /* 183830 */ GIR_RootConstrainSelectedInstOperands, |
| 64969 | /* 183831 */ // GIR_Coverage, 5573, |
| 64970 | /* 183831 */ GIR_Done, |
| 64971 | /* 183832 */ // Label 4104: @183832 |
| 64972 | /* 183832 */ GIM_Reject, |
| 64973 | /* 183833 */ // Label 4101: @183833 |
| 64974 | /* 183833 */ GIM_Reject, |
| 64975 | /* 183834 */ // Label 4061: @183834 |
| 64976 | /* 183834 */ GIM_Try, /*On fail goto*//*Label 4105*/ GIMT_Encode4(184175), |
| 64977 | /* 183839 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 64978 | /* 183842 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 64979 | /* 183845 */ GIM_Try, /*On fail goto*//*Label 4106*/ GIMT_Encode4(183907), // Rule ID 23588 // |
| 64980 | /* 183850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 64981 | /* 183853 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64982 | /* 183857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 64983 | /* 183861 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 64984 | /* 183865 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 64985 | /* 183868 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 64986 | /* 183872 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 64987 | /* 183876 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 64988 | /* 183880 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 64989 | /* 183882 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 64990 | /* 183889 */ // (smin:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPMINSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 64991 | /* 183889 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBrm), |
| 64992 | /* 183892 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 64993 | /* 183894 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 64994 | /* 183896 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 64995 | /* 183900 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 64996 | /* 183905 */ GIR_RootConstrainSelectedInstOperands, |
| 64997 | /* 183906 */ // GIR_Coverage, 23588, |
| 64998 | /* 183906 */ GIR_EraseRootFromParent_Done, |
| 64999 | /* 183907 */ // Label 4106: @183907 |
| 65000 | /* 183907 */ GIM_Try, /*On fail goto*//*Label 4107*/ GIMT_Encode4(183969), // Rule ID 24117 // |
| 65001 | /* 183912 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65002 | /* 183915 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65003 | /* 183919 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65004 | /* 183923 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65005 | /* 183927 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65006 | /* 183930 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65007 | /* 183934 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65008 | /* 183938 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65009 | /* 183942 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65010 | /* 183944 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65011 | /* 183951 */ // (smin:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPMINSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65012 | /* 183951 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ128rm), |
| 65013 | /* 183954 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65014 | /* 183956 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65015 | /* 183958 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65016 | /* 183962 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65017 | /* 183967 */ GIR_RootConstrainSelectedInstOperands, |
| 65018 | /* 183968 */ // GIR_Coverage, 24117, |
| 65019 | /* 183968 */ GIR_EraseRootFromParent_Done, |
| 65020 | /* 183969 */ // Label 4107: @183969 |
| 65021 | /* 183969 */ GIM_Try, /*On fail goto*//*Label 4108*/ GIMT_Encode4(184031), // Rule ID 3196 // |
| 65022 | /* 183974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65023 | /* 183977 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65024 | /* 183981 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65025 | /* 183985 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65026 | /* 183989 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65027 | /* 183993 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65028 | /* 183996 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65029 | /* 184000 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65030 | /* 184004 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65031 | /* 184006 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65032 | /* 184013 */ // (smin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65033 | /* 184013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBrm), |
| 65034 | /* 184016 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65035 | /* 184018 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65036 | /* 184020 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65037 | /* 184024 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65038 | /* 184029 */ GIR_RootConstrainSelectedInstOperands, |
| 65039 | /* 184030 */ // GIR_Coverage, 3196, |
| 65040 | /* 184030 */ GIR_EraseRootFromParent_Done, |
| 65041 | /* 184031 */ // Label 4108: @184031 |
| 65042 | /* 184031 */ GIM_Try, /*On fail goto*//*Label 4109*/ GIMT_Encode4(184093), // Rule ID 5525 // |
| 65043 | /* 184036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65044 | /* 184039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65045 | /* 184043 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65046 | /* 184047 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65047 | /* 184051 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65048 | /* 184055 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65049 | /* 184058 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65050 | /* 184062 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65051 | /* 184066 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65052 | /* 184068 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65053 | /* 184075 */ // (smin:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65054 | /* 184075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ128rm), |
| 65055 | /* 184078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65056 | /* 184080 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65057 | /* 184082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65058 | /* 184086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65059 | /* 184091 */ GIR_RootConstrainSelectedInstOperands, |
| 65060 | /* 184092 */ // GIR_Coverage, 5525, |
| 65061 | /* 184092 */ GIR_EraseRootFromParent_Done, |
| 65062 | /* 184093 */ // Label 4109: @184093 |
| 65063 | /* 184093 */ GIM_Try, /*On fail goto*//*Label 4110*/ GIMT_Encode4(184120), // Rule ID 3195 // |
| 65064 | /* 184098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65065 | /* 184101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65066 | /* 184105 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65067 | /* 184109 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65068 | /* 184113 */ // (smin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPMINSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 65069 | /* 184113 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBrr), |
| 65070 | /* 184118 */ GIR_RootConstrainSelectedInstOperands, |
| 65071 | /* 184119 */ // GIR_Coverage, 3195, |
| 65072 | /* 184119 */ GIR_Done, |
| 65073 | /* 184120 */ // Label 4110: @184120 |
| 65074 | /* 184120 */ GIM_Try, /*On fail goto*//*Label 4111*/ GIMT_Encode4(184147), // Rule ID 3221 // |
| 65075 | /* 184125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 65076 | /* 184128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65077 | /* 184132 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65078 | /* 184136 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65079 | /* 184140 */ // (smin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PMINSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 65080 | /* 184140 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINSBrr), |
| 65081 | /* 184145 */ GIR_RootConstrainSelectedInstOperands, |
| 65082 | /* 184146 */ // GIR_Coverage, 3221, |
| 65083 | /* 184146 */ GIR_Done, |
| 65084 | /* 184147 */ // Label 4111: @184147 |
| 65085 | /* 184147 */ GIM_Try, /*On fail goto*//*Label 4112*/ GIMT_Encode4(184174), // Rule ID 5522 // |
| 65086 | /* 184152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65087 | /* 184155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65088 | /* 184159 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65089 | /* 184163 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65090 | /* 184167 */ // (smin:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPMINSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 65091 | /* 184167 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ128rr), |
| 65092 | /* 184172 */ GIR_RootConstrainSelectedInstOperands, |
| 65093 | /* 184173 */ // GIR_Coverage, 5522, |
| 65094 | /* 184173 */ GIR_Done, |
| 65095 | /* 184174 */ // Label 4112: @184174 |
| 65096 | /* 184174 */ GIM_Reject, |
| 65097 | /* 184175 */ // Label 4105: @184175 |
| 65098 | /* 184175 */ GIM_Reject, |
| 65099 | /* 184176 */ // Label 4062: @184176 |
| 65100 | /* 184176 */ GIM_Try, /*On fail goto*//*Label 4113*/ GIMT_Encode4(184490), |
| 65101 | /* 184181 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 65102 | /* 184184 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 65103 | /* 184187 */ GIM_Try, /*On fail goto*//*Label 4114*/ GIMT_Encode4(184249), // Rule ID 23549 // |
| 65104 | /* 184192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65105 | /* 184195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65106 | /* 184199 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65107 | /* 184203 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65108 | /* 184207 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65109 | /* 184210 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65110 | /* 184214 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65111 | /* 184218 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65112 | /* 184222 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65113 | /* 184224 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65114 | /* 184231 */ // (smin:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMINSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65115 | /* 184231 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWYrm), |
| 65116 | /* 184234 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65117 | /* 184236 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65118 | /* 184238 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65119 | /* 184242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65120 | /* 184247 */ GIR_RootConstrainSelectedInstOperands, |
| 65121 | /* 184248 */ // GIR_Coverage, 23549, |
| 65122 | /* 184248 */ GIR_EraseRootFromParent_Done, |
| 65123 | /* 184249 */ // Label 4114: @184249 |
| 65124 | /* 184249 */ GIM_Try, /*On fail goto*//*Label 4115*/ GIMT_Encode4(184311), // Rule ID 24123 // |
| 65125 | /* 184254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65126 | /* 184257 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65127 | /* 184261 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65128 | /* 184265 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65129 | /* 184269 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65130 | /* 184272 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65131 | /* 184276 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65132 | /* 184280 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65133 | /* 184284 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65134 | /* 184286 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65135 | /* 184293 */ // (smin:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMINSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65136 | /* 184293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ256rm), |
| 65137 | /* 184296 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65138 | /* 184298 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65139 | /* 184300 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65140 | /* 184304 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65141 | /* 184309 */ GIR_RootConstrainSelectedInstOperands, |
| 65142 | /* 184310 */ // GIR_Coverage, 24123, |
| 65143 | /* 184310 */ GIR_EraseRootFromParent_Done, |
| 65144 | /* 184311 */ // Label 4115: @184311 |
| 65145 | /* 184311 */ GIM_Try, /*On fail goto*//*Label 4116*/ GIMT_Encode4(184373), // Rule ID 2647 // |
| 65146 | /* 184316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65147 | /* 184319 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65148 | /* 184323 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65149 | /* 184327 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65150 | /* 184331 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65151 | /* 184335 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65152 | /* 184338 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65153 | /* 184342 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65154 | /* 184346 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65155 | /* 184348 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65156 | /* 184355 */ // (smin:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65157 | /* 184355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWYrm), |
| 65158 | /* 184358 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65159 | /* 184360 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65160 | /* 184362 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65161 | /* 184366 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65162 | /* 184371 */ GIR_RootConstrainSelectedInstOperands, |
| 65163 | /* 184372 */ // GIR_Coverage, 2647, |
| 65164 | /* 184372 */ GIR_EraseRootFromParent_Done, |
| 65165 | /* 184373 */ // Label 4116: @184373 |
| 65166 | /* 184373 */ GIM_Try, /*On fail goto*//*Label 4117*/ GIMT_Encode4(184435), // Rule ID 5537 // |
| 65167 | /* 184378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65168 | /* 184381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65169 | /* 184385 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65170 | /* 184389 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65171 | /* 184393 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65172 | /* 184397 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65173 | /* 184400 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65174 | /* 184404 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65175 | /* 184408 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65176 | /* 184410 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65177 | /* 184417 */ // (smin:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65178 | /* 184417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ256rm), |
| 65179 | /* 184420 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65180 | /* 184422 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65181 | /* 184424 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65182 | /* 184428 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65183 | /* 184433 */ GIR_RootConstrainSelectedInstOperands, |
| 65184 | /* 184434 */ // GIR_Coverage, 5537, |
| 65185 | /* 184434 */ GIR_EraseRootFromParent_Done, |
| 65186 | /* 184435 */ // Label 4117: @184435 |
| 65187 | /* 184435 */ GIM_Try, /*On fail goto*//*Label 4118*/ GIMT_Encode4(184462), // Rule ID 2646 // |
| 65188 | /* 184440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65189 | /* 184443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65190 | /* 184447 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65191 | /* 184451 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65192 | /* 184455 */ // (smin:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMINSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 65193 | /* 184455 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWYrr), |
| 65194 | /* 184460 */ GIR_RootConstrainSelectedInstOperands, |
| 65195 | /* 184461 */ // GIR_Coverage, 2646, |
| 65196 | /* 184461 */ GIR_Done, |
| 65197 | /* 184462 */ // Label 4118: @184462 |
| 65198 | /* 184462 */ GIM_Try, /*On fail goto*//*Label 4119*/ GIMT_Encode4(184489), // Rule ID 5534 // |
| 65199 | /* 184467 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65200 | /* 184470 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65201 | /* 184474 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65202 | /* 184478 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65203 | /* 184482 */ // (smin:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMINSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 65204 | /* 184482 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWZ256rr), |
| 65205 | /* 184487 */ GIR_RootConstrainSelectedInstOperands, |
| 65206 | /* 184488 */ // GIR_Coverage, 5534, |
| 65207 | /* 184488 */ GIR_Done, |
| 65208 | /* 184489 */ // Label 4119: @184489 |
| 65209 | /* 184489 */ GIM_Reject, |
| 65210 | /* 184490 */ // Label 4113: @184490 |
| 65211 | /* 184490 */ GIM_Reject, |
| 65212 | /* 184491 */ // Label 4063: @184491 |
| 65213 | /* 184491 */ GIM_Try, /*On fail goto*//*Label 4120*/ GIMT_Encode4(184646), |
| 65214 | /* 184496 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 65215 | /* 184499 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 65216 | /* 184502 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65217 | /* 184506 */ GIM_Try, /*On fail goto*//*Label 4121*/ GIMT_Encode4(184564), // Rule ID 24129 // |
| 65218 | /* 184511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65219 | /* 184514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65220 | /* 184518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65221 | /* 184522 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65222 | /* 184525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65223 | /* 184529 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65224 | /* 184533 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65225 | /* 184537 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65226 | /* 184539 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65227 | /* 184546 */ // (smin:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMINSDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65228 | /* 184546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZrm), |
| 65229 | /* 184549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65230 | /* 184551 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65231 | /* 184553 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65232 | /* 184557 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65233 | /* 184562 */ GIR_RootConstrainSelectedInstOperands, |
| 65234 | /* 184563 */ // GIR_Coverage, 24129, |
| 65235 | /* 184563 */ GIR_EraseRootFromParent_Done, |
| 65236 | /* 184564 */ // Label 4121: @184564 |
| 65237 | /* 184564 */ GIM_Try, /*On fail goto*//*Label 4122*/ GIMT_Encode4(184622), // Rule ID 5549 // |
| 65238 | /* 184569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65239 | /* 184572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65240 | /* 184576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65241 | /* 184580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65242 | /* 184584 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65243 | /* 184587 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65244 | /* 184591 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65245 | /* 184595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65246 | /* 184597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65247 | /* 184604 */ // (smin:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65248 | /* 184604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSDZrm), |
| 65249 | /* 184607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65250 | /* 184609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65251 | /* 184611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65252 | /* 184615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65253 | /* 184620 */ GIR_RootConstrainSelectedInstOperands, |
| 65254 | /* 184621 */ // GIR_Coverage, 5549, |
| 65255 | /* 184621 */ GIR_EraseRootFromParent_Done, |
| 65256 | /* 184622 */ // Label 4122: @184622 |
| 65257 | /* 184622 */ GIM_Try, /*On fail goto*//*Label 4123*/ GIMT_Encode4(184645), // Rule ID 5546 // |
| 65258 | /* 184627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 65259 | /* 184630 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65260 | /* 184634 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65261 | /* 184638 */ // (smin:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMINSDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 65262 | /* 184638 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSDZrr), |
| 65263 | /* 184643 */ GIR_RootConstrainSelectedInstOperands, |
| 65264 | /* 184644 */ // GIR_Coverage, 5546, |
| 65265 | /* 184644 */ GIR_Done, |
| 65266 | /* 184645 */ // Label 4123: @184645 |
| 65267 | /* 184645 */ GIM_Reject, |
| 65268 | /* 184646 */ // Label 4120: @184646 |
| 65269 | /* 184646 */ GIM_Reject, |
| 65270 | /* 184647 */ // Label 4064: @184647 |
| 65271 | /* 184647 */ GIM_Try, /*On fail goto*//*Label 4124*/ GIMT_Encode4(184961), |
| 65272 | /* 184652 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 65273 | /* 184655 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 65274 | /* 184658 */ GIM_Try, /*On fail goto*//*Label 4125*/ GIMT_Encode4(184720), // Rule ID 23597 // |
| 65275 | /* 184663 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65276 | /* 184666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65277 | /* 184670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65278 | /* 184674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65279 | /* 184678 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65280 | /* 184681 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65281 | /* 184685 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65282 | /* 184689 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65283 | /* 184693 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65284 | /* 184695 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65285 | /* 184702 */ // (smin:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPMINSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65286 | /* 184702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBYrm), |
| 65287 | /* 184705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65288 | /* 184707 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65289 | /* 184709 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65290 | /* 184713 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65291 | /* 184718 */ GIR_RootConstrainSelectedInstOperands, |
| 65292 | /* 184719 */ // GIR_Coverage, 23597, |
| 65293 | /* 184719 */ GIR_EraseRootFromParent_Done, |
| 65294 | /* 184720 */ // Label 4125: @184720 |
| 65295 | /* 184720 */ GIM_Try, /*On fail goto*//*Label 4126*/ GIMT_Encode4(184782), // Rule ID 24114 // |
| 65296 | /* 184725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65297 | /* 184728 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65298 | /* 184732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65299 | /* 184736 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65300 | /* 184740 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65301 | /* 184743 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65302 | /* 184747 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65303 | /* 184751 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65304 | /* 184755 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65305 | /* 184757 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65306 | /* 184764 */ // (smin:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPMINSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65307 | /* 184764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ256rm), |
| 65308 | /* 184767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65309 | /* 184769 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65310 | /* 184771 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65311 | /* 184775 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65312 | /* 184780 */ GIR_RootConstrainSelectedInstOperands, |
| 65313 | /* 184781 */ // GIR_Coverage, 24114, |
| 65314 | /* 184781 */ GIR_EraseRootFromParent_Done, |
| 65315 | /* 184782 */ // Label 4126: @184782 |
| 65316 | /* 184782 */ GIM_Try, /*On fail goto*//*Label 4127*/ GIMT_Encode4(184844), // Rule ID 3214 // |
| 65317 | /* 184787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65318 | /* 184790 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65319 | /* 184794 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65320 | /* 184798 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65321 | /* 184802 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65322 | /* 184806 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65323 | /* 184809 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65324 | /* 184813 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65325 | /* 184817 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65326 | /* 184819 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65327 | /* 184826 */ // (smin:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65328 | /* 184826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBYrm), |
| 65329 | /* 184829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65330 | /* 184831 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65331 | /* 184833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65332 | /* 184837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65333 | /* 184842 */ GIR_RootConstrainSelectedInstOperands, |
| 65334 | /* 184843 */ // GIR_Coverage, 3214, |
| 65335 | /* 184843 */ GIR_EraseRootFromParent_Done, |
| 65336 | /* 184844 */ // Label 4127: @184844 |
| 65337 | /* 184844 */ GIM_Try, /*On fail goto*//*Label 4128*/ GIMT_Encode4(184906), // Rule ID 5519 // |
| 65338 | /* 184849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65339 | /* 184852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65340 | /* 184856 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65341 | /* 184860 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65342 | /* 184864 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65343 | /* 184868 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65344 | /* 184871 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65345 | /* 184875 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65346 | /* 184879 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65347 | /* 184881 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65348 | /* 184888 */ // (smin:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65349 | /* 184888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ256rm), |
| 65350 | /* 184891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65351 | /* 184893 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65352 | /* 184895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65353 | /* 184899 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65354 | /* 184904 */ GIR_RootConstrainSelectedInstOperands, |
| 65355 | /* 184905 */ // GIR_Coverage, 5519, |
| 65356 | /* 184905 */ GIR_EraseRootFromParent_Done, |
| 65357 | /* 184906 */ // Label 4128: @184906 |
| 65358 | /* 184906 */ GIM_Try, /*On fail goto*//*Label 4129*/ GIMT_Encode4(184933), // Rule ID 3213 // |
| 65359 | /* 184911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 65360 | /* 184914 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65361 | /* 184918 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65362 | /* 184922 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65363 | /* 184926 */ // (smin:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPMINSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 65364 | /* 184926 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBYrr), |
| 65365 | /* 184931 */ GIR_RootConstrainSelectedInstOperands, |
| 65366 | /* 184932 */ // GIR_Coverage, 3213, |
| 65367 | /* 184932 */ GIR_Done, |
| 65368 | /* 184933 */ // Label 4129: @184933 |
| 65369 | /* 184933 */ GIM_Try, /*On fail goto*//*Label 4130*/ GIMT_Encode4(184960), // Rule ID 5516 // |
| 65370 | /* 184938 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65371 | /* 184941 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65372 | /* 184945 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65373 | /* 184949 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65374 | /* 184953 */ // (smin:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPMINSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 65375 | /* 184953 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBZ256rr), |
| 65376 | /* 184958 */ GIR_RootConstrainSelectedInstOperands, |
| 65377 | /* 184959 */ // GIR_Coverage, 5516, |
| 65378 | /* 184959 */ GIR_Done, |
| 65379 | /* 184960 */ // Label 4130: @184960 |
| 65380 | /* 184960 */ GIM_Reject, |
| 65381 | /* 184961 */ // Label 4124: @184961 |
| 65382 | /* 184961 */ GIM_Reject, |
| 65383 | /* 184962 */ // Label 4065: @184962 |
| 65384 | /* 184962 */ GIM_Try, /*On fail goto*//*Label 4131*/ GIMT_Encode4(185117), |
| 65385 | /* 184967 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 65386 | /* 184970 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 65387 | /* 184973 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65388 | /* 184977 */ GIM_Try, /*On fail goto*//*Label 4132*/ GIMT_Encode4(185035), // Rule ID 24120 // |
| 65389 | /* 184982 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65390 | /* 184985 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65391 | /* 184989 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65392 | /* 184993 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65393 | /* 184996 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65394 | /* 185000 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65395 | /* 185004 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65396 | /* 185008 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65397 | /* 185010 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65398 | /* 185017 */ // (smin:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMINSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65399 | /* 185017 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZrm), |
| 65400 | /* 185020 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65401 | /* 185022 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65402 | /* 185024 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65403 | /* 185028 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65404 | /* 185033 */ GIR_RootConstrainSelectedInstOperands, |
| 65405 | /* 185034 */ // GIR_Coverage, 24120, |
| 65406 | /* 185034 */ GIR_EraseRootFromParent_Done, |
| 65407 | /* 185035 */ // Label 4132: @185035 |
| 65408 | /* 185035 */ GIM_Try, /*On fail goto*//*Label 4133*/ GIMT_Encode4(185093), // Rule ID 5531 // |
| 65409 | /* 185040 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65410 | /* 185043 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65411 | /* 185047 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65412 | /* 185051 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65413 | /* 185055 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65414 | /* 185058 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65415 | /* 185062 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65416 | /* 185066 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65417 | /* 185068 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65418 | /* 185075 */ // (smin:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65419 | /* 185075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSWZrm), |
| 65420 | /* 185078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65421 | /* 185080 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65422 | /* 185082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65423 | /* 185086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65424 | /* 185091 */ GIR_RootConstrainSelectedInstOperands, |
| 65425 | /* 185092 */ // GIR_Coverage, 5531, |
| 65426 | /* 185092 */ GIR_EraseRootFromParent_Done, |
| 65427 | /* 185093 */ // Label 4133: @185093 |
| 65428 | /* 185093 */ GIM_Try, /*On fail goto*//*Label 4134*/ GIMT_Encode4(185116), // Rule ID 5528 // |
| 65429 | /* 185098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65430 | /* 185101 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65431 | /* 185105 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65432 | /* 185109 */ // (smin:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMINSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 65433 | /* 185109 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSWZrr), |
| 65434 | /* 185114 */ GIR_RootConstrainSelectedInstOperands, |
| 65435 | /* 185115 */ // GIR_Coverage, 5528, |
| 65436 | /* 185115 */ GIR_Done, |
| 65437 | /* 185116 */ // Label 4134: @185116 |
| 65438 | /* 185116 */ GIM_Reject, |
| 65439 | /* 185117 */ // Label 4131: @185117 |
| 65440 | /* 185117 */ GIM_Reject, |
| 65441 | /* 185118 */ // Label 4066: @185118 |
| 65442 | /* 185118 */ GIM_Try, /*On fail goto*//*Label 4135*/ GIMT_Encode4(185273), |
| 65443 | /* 185123 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 65444 | /* 185126 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 65445 | /* 185129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65446 | /* 185133 */ GIM_Try, /*On fail goto*//*Label 4136*/ GIMT_Encode4(185191), // Rule ID 24111 // |
| 65447 | /* 185138 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65448 | /* 185141 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65449 | /* 185145 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65450 | /* 185149 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65451 | /* 185152 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65452 | /* 185156 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65453 | /* 185160 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65454 | /* 185164 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65455 | /* 185166 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65456 | /* 185173 */ // (smin:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPMINSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65457 | /* 185173 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZrm), |
| 65458 | /* 185176 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65459 | /* 185178 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65460 | /* 185180 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65461 | /* 185184 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65462 | /* 185189 */ GIR_RootConstrainSelectedInstOperands, |
| 65463 | /* 185190 */ // GIR_Coverage, 24111, |
| 65464 | /* 185190 */ GIR_EraseRootFromParent_Done, |
| 65465 | /* 185191 */ // Label 4136: @185191 |
| 65466 | /* 185191 */ GIM_Try, /*On fail goto*//*Label 4137*/ GIMT_Encode4(185249), // Rule ID 5513 // |
| 65467 | /* 185196 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65468 | /* 185199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65469 | /* 185203 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65470 | /* 185207 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65471 | /* 185211 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65472 | /* 185214 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65473 | /* 185218 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65474 | /* 185222 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65475 | /* 185224 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65476 | /* 185231 */ // (smin:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65477 | /* 185231 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINSBZrm), |
| 65478 | /* 185234 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65479 | /* 185236 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65480 | /* 185238 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65481 | /* 185242 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65482 | /* 185247 */ GIR_RootConstrainSelectedInstOperands, |
| 65483 | /* 185248 */ // GIR_Coverage, 5513, |
| 65484 | /* 185248 */ GIR_EraseRootFromParent_Done, |
| 65485 | /* 185249 */ // Label 4137: @185249 |
| 65486 | /* 185249 */ GIM_Try, /*On fail goto*//*Label 4138*/ GIMT_Encode4(185272), // Rule ID 5510 // |
| 65487 | /* 185254 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 65488 | /* 185257 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65489 | /* 185261 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 65490 | /* 185265 */ // (smin:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPMINSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 65491 | /* 185265 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINSBZrr), |
| 65492 | /* 185270 */ GIR_RootConstrainSelectedInstOperands, |
| 65493 | /* 185271 */ // GIR_Coverage, 5510, |
| 65494 | /* 185271 */ GIR_Done, |
| 65495 | /* 185272 */ // Label 4138: @185272 |
| 65496 | /* 185272 */ GIM_Reject, |
| 65497 | /* 185273 */ // Label 4135: @185273 |
| 65498 | /* 185273 */ GIM_Reject, |
| 65499 | /* 185274 */ // Label 4067: @185274 |
| 65500 | /* 185274 */ GIM_Reject, |
| 65501 | /* 185275 */ // Label 56: @185275 |
| 65502 | /* 185275 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4151*/ GIMT_Encode4(188595), |
| 65503 | /* 185286 */ /*GILLT_v2s64*//*Label 4139*/ GIMT_Encode4(185354), GIMT_Encode4(0), |
| 65504 | /* 185294 */ /*GILLT_v4s32*//*Label 4140*/ GIMT_Encode4(185683), |
| 65505 | /* 185298 */ /*GILLT_v4s64*//*Label 4141*/ GIMT_Encode4(186025), GIMT_Encode4(0), |
| 65506 | /* 185306 */ /*GILLT_v8s16*//*Label 4142*/ GIMT_Encode4(186342), |
| 65507 | /* 185310 */ /*GILLT_v8s32*//*Label 4143*/ GIMT_Encode4(186684), |
| 65508 | /* 185314 */ /*GILLT_v8s64*//*Label 4144*/ GIMT_Encode4(186999), GIMT_Encode4(0), |
| 65509 | /* 185322 */ /*GILLT_v16s8*//*Label 4145*/ GIMT_Encode4(187155), |
| 65510 | /* 185326 */ /*GILLT_v16s16*//*Label 4146*/ GIMT_Encode4(187497), |
| 65511 | /* 185330 */ /*GILLT_v16s32*//*Label 4147*/ GIMT_Encode4(187812), GIMT_Encode4(0), |
| 65512 | /* 185338 */ /*GILLT_v32s8*//*Label 4148*/ GIMT_Encode4(187968), |
| 65513 | /* 185342 */ /*GILLT_v32s16*//*Label 4149*/ GIMT_Encode4(188283), GIMT_Encode4(0), |
| 65514 | /* 185350 */ /*GILLT_v64s8*//*Label 4150*/ GIMT_Encode4(188439), |
| 65515 | /* 185354 */ // Label 4139: @185354 |
| 65516 | /* 185354 */ GIM_Try, /*On fail goto*//*Label 4152*/ GIMT_Encode4(185682), |
| 65517 | /* 185359 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 65518 | /* 185362 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 65519 | /* 185365 */ GIM_Try, /*On fail goto*//*Label 4153*/ GIMT_Encode4(185427), // Rule ID 24051 // |
| 65520 | /* 185370 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65521 | /* 185373 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65522 | /* 185377 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65523 | /* 185381 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65524 | /* 185385 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65525 | /* 185388 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65526 | /* 185392 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65527 | /* 185396 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65528 | /* 185400 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65529 | /* 185402 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65530 | /* 185409 */ // (smax:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMAXSQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65531 | /* 185409 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ128rm), |
| 65532 | /* 185412 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65533 | /* 185414 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65534 | /* 185416 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65535 | /* 185420 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65536 | /* 185425 */ GIR_RootConstrainSelectedInstOperands, |
| 65537 | /* 185426 */ // GIR_Coverage, 24051, |
| 65538 | /* 185426 */ GIR_EraseRootFromParent_Done, |
| 65539 | /* 185427 */ // Label 4153: @185427 |
| 65540 | /* 185427 */ GIM_Try, /*On fail goto*//*Label 4154*/ GIMT_Encode4(185489), // Rule ID 5414 // |
| 65541 | /* 185432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65542 | /* 185435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65543 | /* 185439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65544 | /* 185443 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65545 | /* 185447 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65546 | /* 185451 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65547 | /* 185454 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65548 | /* 185458 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65549 | /* 185462 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65550 | /* 185464 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65551 | /* 185471 */ // (smax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65552 | /* 185471 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ128rm), |
| 65553 | /* 185474 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65554 | /* 185476 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65555 | /* 185478 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65556 | /* 185482 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65557 | /* 185487 */ GIR_RootConstrainSelectedInstOperands, |
| 65558 | /* 185488 */ // GIR_Coverage, 5414, |
| 65559 | /* 185488 */ GIR_EraseRootFromParent_Done, |
| 65560 | /* 185489 */ // Label 4154: @185489 |
| 65561 | /* 185489 */ GIM_Try, /*On fail goto*//*Label 4155*/ GIMT_Encode4(185516), // Rule ID 5411 // |
| 65562 | /* 185494 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65563 | /* 185497 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65564 | /* 185501 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65565 | /* 185505 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65566 | /* 185509 */ // (smax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMAXSQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 65567 | /* 185509 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ128rr), |
| 65568 | /* 185514 */ GIR_RootConstrainSelectedInstOperands, |
| 65569 | /* 185515 */ // GIR_Coverage, 5411, |
| 65570 | /* 185515 */ GIR_Done, |
| 65571 | /* 185516 */ // Label 4155: @185516 |
| 65572 | /* 185516 */ GIM_Try, /*On fail goto*//*Label 4156*/ GIMT_Encode4(185681), // Rule ID 20019 // |
| 65573 | /* 185521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 65574 | /* 185524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 65575 | /* 185528 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65576 | /* 185532 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65577 | /* 185536 */ // (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] }) |
| 65578 | /* 185536 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 65579 | /* 185539 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 65580 | /* 185543 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65581 | /* 185548 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 65582 | /* 185550 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 65583 | /* 185553 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 65584 | /* 185557 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65585 | /* 185562 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 65586 | /* 185565 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 65587 | /* 185569 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 65588 | /* 185572 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 65589 | /* 185577 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65590 | /* 185582 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 65591 | /* 185587 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 65592 | /* 185590 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 65593 | /* 185594 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65594 | /* 185599 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 65595 | /* 185601 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 65596 | /* 185604 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 65597 | /* 185608 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65598 | /* 185613 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 65599 | /* 185616 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 65600 | /* 185620 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 65601 | /* 185623 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 65602 | /* 185628 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65603 | /* 185633 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 65604 | /* 185638 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 65605 | /* 185641 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrr), |
| 65606 | /* 185645 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65607 | /* 185650 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 65608 | /* 185653 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 65609 | /* 185656 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 65610 | /* 185658 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 65611 | /* 185661 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65612 | /* 185663 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 65613 | /* 185670 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 65614 | /* 185675 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65615 | /* 185680 */ // GIR_Coverage, 20019, |
| 65616 | /* 185680 */ GIR_EraseRootFromParent_Done, |
| 65617 | /* 185681 */ // Label 4156: @185681 |
| 65618 | /* 185681 */ GIM_Reject, |
| 65619 | /* 185682 */ // Label 4152: @185682 |
| 65620 | /* 185682 */ GIM_Reject, |
| 65621 | /* 185683 */ // Label 4140: @185683 |
| 65622 | /* 185683 */ GIM_Try, /*On fail goto*//*Label 4157*/ GIMT_Encode4(186024), |
| 65623 | /* 185688 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 65624 | /* 185691 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 65625 | /* 185694 */ GIM_Try, /*On fail goto*//*Label 4158*/ GIMT_Encode4(185756), // Rule ID 23585 // |
| 65626 | /* 185699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 65627 | /* 185702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65628 | /* 185706 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65629 | /* 185710 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65630 | /* 185714 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65631 | /* 185717 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65632 | /* 185721 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65633 | /* 185725 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65634 | /* 185729 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65635 | /* 185731 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65636 | /* 185738 */ // (smax:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMAXSDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65637 | /* 185738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDrm), |
| 65638 | /* 185741 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65639 | /* 185743 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65640 | /* 185745 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65641 | /* 185749 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65642 | /* 185754 */ GIR_RootConstrainSelectedInstOperands, |
| 65643 | /* 185755 */ // GIR_Coverage, 23585, |
| 65644 | /* 185755 */ GIR_EraseRootFromParent_Done, |
| 65645 | /* 185756 */ // Label 4158: @185756 |
| 65646 | /* 185756 */ GIM_Try, /*On fail goto*//*Label 4159*/ GIMT_Encode4(185818), // Rule ID 24033 // |
| 65647 | /* 185761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65648 | /* 185764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65649 | /* 185768 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65650 | /* 185772 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65651 | /* 185776 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65652 | /* 185779 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65653 | /* 185783 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65654 | /* 185787 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65655 | /* 185791 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65656 | /* 185793 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65657 | /* 185800 */ // (smax:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMAXSDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65658 | /* 185800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ128rm), |
| 65659 | /* 185803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65660 | /* 185805 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65661 | /* 185807 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65662 | /* 185811 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65663 | /* 185816 */ GIR_RootConstrainSelectedInstOperands, |
| 65664 | /* 185817 */ // GIR_Coverage, 24033, |
| 65665 | /* 185817 */ GIR_EraseRootFromParent_Done, |
| 65666 | /* 185818 */ // Label 4159: @185818 |
| 65667 | /* 185818 */ GIM_Try, /*On fail goto*//*Label 4160*/ GIMT_Encode4(185880), // Rule ID 3190 // |
| 65668 | /* 185823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 65669 | /* 185826 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65670 | /* 185830 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65671 | /* 185834 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65672 | /* 185838 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65673 | /* 185842 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65674 | /* 185845 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65675 | /* 185849 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65676 | /* 185853 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65677 | /* 185855 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65678 | /* 185862 */ // (smax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65679 | /* 185862 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDrm), |
| 65680 | /* 185865 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65681 | /* 185867 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65682 | /* 185869 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65683 | /* 185873 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65684 | /* 185878 */ GIR_RootConstrainSelectedInstOperands, |
| 65685 | /* 185879 */ // GIR_Coverage, 3190, |
| 65686 | /* 185879 */ GIR_EraseRootFromParent_Done, |
| 65687 | /* 185880 */ // Label 4160: @185880 |
| 65688 | /* 185880 */ GIM_Try, /*On fail goto*//*Label 4161*/ GIMT_Encode4(185942), // Rule ID 5387 // |
| 65689 | /* 185885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65690 | /* 185888 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65691 | /* 185892 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65692 | /* 185896 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65693 | /* 185900 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65694 | /* 185904 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65695 | /* 185907 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65696 | /* 185911 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65697 | /* 185915 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65698 | /* 185917 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65699 | /* 185924 */ // (smax:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65700 | /* 185924 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ128rm), |
| 65701 | /* 185927 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65702 | /* 185929 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65703 | /* 185931 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65704 | /* 185935 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65705 | /* 185940 */ GIR_RootConstrainSelectedInstOperands, |
| 65706 | /* 185941 */ // GIR_Coverage, 5387, |
| 65707 | /* 185941 */ GIR_EraseRootFromParent_Done, |
| 65708 | /* 185942 */ // Label 4161: @185942 |
| 65709 | /* 185942 */ GIM_Try, /*On fail goto*//*Label 4162*/ GIMT_Encode4(185969), // Rule ID 3189 // |
| 65710 | /* 185947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 65711 | /* 185950 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65712 | /* 185954 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65713 | /* 185958 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65714 | /* 185962 */ // (smax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMAXSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 65715 | /* 185962 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDrr), |
| 65716 | /* 185967 */ GIR_RootConstrainSelectedInstOperands, |
| 65717 | /* 185968 */ // GIR_Coverage, 3189, |
| 65718 | /* 185968 */ GIR_Done, |
| 65719 | /* 185969 */ // Label 4162: @185969 |
| 65720 | /* 185969 */ GIM_Try, /*On fail goto*//*Label 4163*/ GIMT_Encode4(185996), // Rule ID 3231 // |
| 65721 | /* 185974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 65722 | /* 185977 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65723 | /* 185981 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65724 | /* 185985 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65725 | /* 185989 */ // (smax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMAXSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 65726 | /* 185989 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXSDrr), |
| 65727 | /* 185994 */ GIR_RootConstrainSelectedInstOperands, |
| 65728 | /* 185995 */ // GIR_Coverage, 3231, |
| 65729 | /* 185995 */ GIR_Done, |
| 65730 | /* 185996 */ // Label 4163: @185996 |
| 65731 | /* 185996 */ GIM_Try, /*On fail goto*//*Label 4164*/ GIMT_Encode4(186023), // Rule ID 5384 // |
| 65732 | /* 186001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65733 | /* 186004 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65734 | /* 186008 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65735 | /* 186012 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65736 | /* 186016 */ // (smax:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMAXSDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 65737 | /* 186016 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ128rr), |
| 65738 | /* 186021 */ GIR_RootConstrainSelectedInstOperands, |
| 65739 | /* 186022 */ // GIR_Coverage, 5384, |
| 65740 | /* 186022 */ GIR_Done, |
| 65741 | /* 186023 */ // Label 4164: @186023 |
| 65742 | /* 186023 */ GIM_Reject, |
| 65743 | /* 186024 */ // Label 4157: @186024 |
| 65744 | /* 186024 */ GIM_Reject, |
| 65745 | /* 186025 */ // Label 4141: @186025 |
| 65746 | /* 186025 */ GIM_Try, /*On fail goto*//*Label 4165*/ GIMT_Encode4(186341), |
| 65747 | /* 186030 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 65748 | /* 186033 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 65749 | /* 186036 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65750 | /* 186040 */ GIM_Try, /*On fail goto*//*Label 4166*/ GIMT_Encode4(186098), // Rule ID 24045 // |
| 65751 | /* 186045 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65752 | /* 186048 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65753 | /* 186052 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65754 | /* 186056 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65755 | /* 186059 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65756 | /* 186063 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65757 | /* 186067 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65758 | /* 186071 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65759 | /* 186073 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65760 | /* 186080 */ // (smax:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMAXSQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65761 | /* 186080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ256rm), |
| 65762 | /* 186083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65763 | /* 186085 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65764 | /* 186087 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65765 | /* 186091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65766 | /* 186096 */ GIR_RootConstrainSelectedInstOperands, |
| 65767 | /* 186097 */ // GIR_Coverage, 24045, |
| 65768 | /* 186097 */ GIR_EraseRootFromParent_Done, |
| 65769 | /* 186098 */ // Label 4166: @186098 |
| 65770 | /* 186098 */ GIM_Try, /*On fail goto*//*Label 4167*/ GIMT_Encode4(186156), // Rule ID 5405 // |
| 65771 | /* 186103 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65772 | /* 186106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65773 | /* 186110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65774 | /* 186114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65775 | /* 186118 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65776 | /* 186121 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65777 | /* 186125 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65778 | /* 186129 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65779 | /* 186131 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65780 | /* 186138 */ // (smax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65781 | /* 186138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ256rm), |
| 65782 | /* 186141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65783 | /* 186143 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65784 | /* 186145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65785 | /* 186149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65786 | /* 186154 */ GIR_RootConstrainSelectedInstOperands, |
| 65787 | /* 186155 */ // GIR_Coverage, 5405, |
| 65788 | /* 186155 */ GIR_EraseRootFromParent_Done, |
| 65789 | /* 186156 */ // Label 4167: @186156 |
| 65790 | /* 186156 */ GIM_Try, /*On fail goto*//*Label 4168*/ GIMT_Encode4(186179), // Rule ID 5402 // |
| 65791 | /* 186161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65792 | /* 186164 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65793 | /* 186168 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65794 | /* 186172 */ // (smax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMAXSQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 65795 | /* 186172 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZ256rr), |
| 65796 | /* 186177 */ GIR_RootConstrainSelectedInstOperands, |
| 65797 | /* 186178 */ // GIR_Coverage, 5402, |
| 65798 | /* 186178 */ GIR_Done, |
| 65799 | /* 186179 */ // Label 4168: @186179 |
| 65800 | /* 186179 */ GIM_Try, /*On fail goto*//*Label 4169*/ GIMT_Encode4(186340), // Rule ID 20017 // |
| 65801 | /* 186184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 65802 | /* 186187 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65803 | /* 186191 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 65804 | /* 186195 */ // (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] }) |
| 65805 | /* 186195 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 65806 | /* 186198 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 65807 | /* 186202 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65808 | /* 186207 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 65809 | /* 186209 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 65810 | /* 186212 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 65811 | /* 186216 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65812 | /* 186221 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 65813 | /* 186224 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 65814 | /* 186228 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 65815 | /* 186231 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 65816 | /* 186236 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65817 | /* 186241 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 65818 | /* 186246 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 65819 | /* 186249 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 65820 | /* 186253 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65821 | /* 186258 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 65822 | /* 186260 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 65823 | /* 186263 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 65824 | /* 186267 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65825 | /* 186272 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 65826 | /* 186275 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 65827 | /* 186279 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 65828 | /* 186282 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 65829 | /* 186287 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65830 | /* 186292 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 65831 | /* 186297 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 65832 | /* 186300 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrr), |
| 65833 | /* 186304 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 65834 | /* 186309 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 65835 | /* 186312 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 65836 | /* 186315 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 65837 | /* 186317 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 65838 | /* 186320 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65839 | /* 186322 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 65840 | /* 186329 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 65841 | /* 186334 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 65842 | /* 186339 */ // GIR_Coverage, 20017, |
| 65843 | /* 186339 */ GIR_EraseRootFromParent_Done, |
| 65844 | /* 186340 */ // Label 4169: @186340 |
| 65845 | /* 186340 */ GIM_Reject, |
| 65846 | /* 186341 */ // Label 4165: @186341 |
| 65847 | /* 186341 */ GIM_Reject, |
| 65848 | /* 186342 */ // Label 4142: @186342 |
| 65849 | /* 186342 */ GIM_Try, /*On fail goto*//*Label 4170*/ GIMT_Encode4(186683), |
| 65850 | /* 186347 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 65851 | /* 186350 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 65852 | /* 186353 */ GIM_Try, /*On fail goto*//*Label 4171*/ GIMT_Encode4(186415), // Rule ID 23553 // |
| 65853 | /* 186358 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65854 | /* 186361 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65855 | /* 186365 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65856 | /* 186369 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65857 | /* 186373 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65858 | /* 186376 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65859 | /* 186380 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65860 | /* 186384 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65861 | /* 186388 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65862 | /* 186390 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65863 | /* 186397 */ // (smax:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMAXSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65864 | /* 186397 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWrm), |
| 65865 | /* 186400 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65866 | /* 186402 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65867 | /* 186404 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65868 | /* 186408 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65869 | /* 186413 */ GIR_RootConstrainSelectedInstOperands, |
| 65870 | /* 186414 */ // GIR_Coverage, 23553, |
| 65871 | /* 186414 */ GIR_EraseRootFromParent_Done, |
| 65872 | /* 186415 */ // Label 4171: @186415 |
| 65873 | /* 186415 */ GIM_Try, /*On fail goto*//*Label 4172*/ GIMT_Encode4(186477), // Rule ID 24018 // |
| 65874 | /* 186420 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65875 | /* 186423 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65876 | /* 186427 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65877 | /* 186431 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65878 | /* 186435 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65879 | /* 186438 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65880 | /* 186442 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65881 | /* 186446 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65882 | /* 186450 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65883 | /* 186452 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65884 | /* 186459 */ // (smax:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMAXSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65885 | /* 186459 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ128rm), |
| 65886 | /* 186462 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65887 | /* 186464 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65888 | /* 186466 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65889 | /* 186470 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65890 | /* 186475 */ GIR_RootConstrainSelectedInstOperands, |
| 65891 | /* 186476 */ // GIR_Coverage, 24018, |
| 65892 | /* 186476 */ GIR_EraseRootFromParent_Done, |
| 65893 | /* 186477 */ // Label 4172: @186477 |
| 65894 | /* 186477 */ GIM_Try, /*On fail goto*//*Label 4173*/ GIMT_Encode4(186539), // Rule ID 2655 // |
| 65895 | /* 186482 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65896 | /* 186485 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65897 | /* 186489 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65898 | /* 186493 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65899 | /* 186497 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65900 | /* 186501 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65901 | /* 186504 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65902 | /* 186508 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65903 | /* 186512 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65904 | /* 186514 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65905 | /* 186521 */ // (smax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65906 | /* 186521 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWrm), |
| 65907 | /* 186524 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65908 | /* 186526 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65909 | /* 186528 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65910 | /* 186532 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65911 | /* 186537 */ GIR_RootConstrainSelectedInstOperands, |
| 65912 | /* 186538 */ // GIR_Coverage, 2655, |
| 65913 | /* 186538 */ GIR_EraseRootFromParent_Done, |
| 65914 | /* 186539 */ // Label 4173: @186539 |
| 65915 | /* 186539 */ GIM_Try, /*On fail goto*//*Label 4174*/ GIMT_Encode4(186601), // Rule ID 5363 // |
| 65916 | /* 186544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65917 | /* 186547 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65918 | /* 186551 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65919 | /* 186555 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 65920 | /* 186559 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65921 | /* 186563 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65922 | /* 186566 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65923 | /* 186570 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65924 | /* 186574 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65925 | /* 186576 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65926 | /* 186583 */ // (smax:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65927 | /* 186583 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ128rm), |
| 65928 | /* 186586 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65929 | /* 186588 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 65930 | /* 186590 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65931 | /* 186594 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65932 | /* 186599 */ GIR_RootConstrainSelectedInstOperands, |
| 65933 | /* 186600 */ // GIR_Coverage, 5363, |
| 65934 | /* 186600 */ GIR_EraseRootFromParent_Done, |
| 65935 | /* 186601 */ // Label 4174: @186601 |
| 65936 | /* 186601 */ GIM_Try, /*On fail goto*//*Label 4175*/ GIMT_Encode4(186628), // Rule ID 2654 // |
| 65937 | /* 186606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 65938 | /* 186609 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65939 | /* 186613 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65940 | /* 186617 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65941 | /* 186621 */ // (smax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMAXSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 65942 | /* 186621 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWrr), |
| 65943 | /* 186626 */ GIR_RootConstrainSelectedInstOperands, |
| 65944 | /* 186627 */ // GIR_Coverage, 2654, |
| 65945 | /* 186627 */ GIR_Done, |
| 65946 | /* 186628 */ // Label 4175: @186628 |
| 65947 | /* 186628 */ GIM_Try, /*On fail goto*//*Label 4176*/ GIMT_Encode4(186655), // Rule ID 2656 // |
| 65948 | /* 186633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 65949 | /* 186636 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65950 | /* 186640 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65951 | /* 186644 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 65952 | /* 186648 */ // (smax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMAXSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 65953 | /* 186648 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXSWrr), |
| 65954 | /* 186653 */ GIR_RootConstrainSelectedInstOperands, |
| 65955 | /* 186654 */ // GIR_Coverage, 2656, |
| 65956 | /* 186654 */ GIR_Done, |
| 65957 | /* 186655 */ // Label 4176: @186655 |
| 65958 | /* 186655 */ GIM_Try, /*On fail goto*//*Label 4177*/ GIMT_Encode4(186682), // Rule ID 5360 // |
| 65959 | /* 186660 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 65960 | /* 186663 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65961 | /* 186667 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65962 | /* 186671 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 65963 | /* 186675 */ // (smax:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMAXSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 65964 | /* 186675 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ128rr), |
| 65965 | /* 186680 */ GIR_RootConstrainSelectedInstOperands, |
| 65966 | /* 186681 */ // GIR_Coverage, 5360, |
| 65967 | /* 186681 */ GIR_Done, |
| 65968 | /* 186682 */ // Label 4177: @186682 |
| 65969 | /* 186682 */ GIM_Reject, |
| 65970 | /* 186683 */ // Label 4170: @186683 |
| 65971 | /* 186683 */ GIM_Reject, |
| 65972 | /* 186684 */ // Label 4143: @186684 |
| 65973 | /* 186684 */ GIM_Try, /*On fail goto*//*Label 4178*/ GIMT_Encode4(186998), |
| 65974 | /* 186689 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 65975 | /* 186692 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 65976 | /* 186695 */ GIM_Try, /*On fail goto*//*Label 4179*/ GIMT_Encode4(186757), // Rule ID 23594 // |
| 65977 | /* 186700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 65978 | /* 186703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65979 | /* 186707 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 65980 | /* 186711 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 65981 | /* 186715 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 65982 | /* 186718 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 65983 | /* 186722 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 65984 | /* 186726 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 65985 | /* 186730 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 65986 | /* 186732 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 65987 | /* 186739 */ // (smax:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMAXSDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 65988 | /* 186739 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDYrm), |
| 65989 | /* 186742 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 65990 | /* 186744 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 65991 | /* 186746 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 65992 | /* 186750 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 65993 | /* 186755 */ GIR_RootConstrainSelectedInstOperands, |
| 65994 | /* 186756 */ // GIR_Coverage, 23594, |
| 65995 | /* 186756 */ GIR_EraseRootFromParent_Done, |
| 65996 | /* 186757 */ // Label 4179: @186757 |
| 65997 | /* 186757 */ GIM_Try, /*On fail goto*//*Label 4180*/ GIMT_Encode4(186819), // Rule ID 24027 // |
| 65998 | /* 186762 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 65999 | /* 186765 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66000 | /* 186769 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66001 | /* 186773 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66002 | /* 186777 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66003 | /* 186780 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66004 | /* 186784 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66005 | /* 186788 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66006 | /* 186792 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66007 | /* 186794 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66008 | /* 186801 */ // (smax:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMAXSDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66009 | /* 186801 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ256rm), |
| 66010 | /* 186804 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66011 | /* 186806 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66012 | /* 186808 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66013 | /* 186812 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66014 | /* 186817 */ GIR_RootConstrainSelectedInstOperands, |
| 66015 | /* 186818 */ // GIR_Coverage, 24027, |
| 66016 | /* 186818 */ GIR_EraseRootFromParent_Done, |
| 66017 | /* 186819 */ // Label 4180: @186819 |
| 66018 | /* 186819 */ GIM_Try, /*On fail goto*//*Label 4181*/ GIMT_Encode4(186881), // Rule ID 3208 // |
| 66019 | /* 186824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 66020 | /* 186827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66021 | /* 186831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66022 | /* 186835 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66023 | /* 186839 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66024 | /* 186843 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66025 | /* 186846 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66026 | /* 186850 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66027 | /* 186854 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66028 | /* 186856 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66029 | /* 186863 */ // (smax:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66030 | /* 186863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDYrm), |
| 66031 | /* 186866 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66032 | /* 186868 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66033 | /* 186870 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66034 | /* 186874 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66035 | /* 186879 */ GIR_RootConstrainSelectedInstOperands, |
| 66036 | /* 186880 */ // GIR_Coverage, 3208, |
| 66037 | /* 186880 */ GIR_EraseRootFromParent_Done, |
| 66038 | /* 186881 */ // Label 4181: @186881 |
| 66039 | /* 186881 */ GIM_Try, /*On fail goto*//*Label 4182*/ GIMT_Encode4(186943), // Rule ID 5378 // |
| 66040 | /* 186886 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66041 | /* 186889 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66042 | /* 186893 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66043 | /* 186897 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66044 | /* 186901 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66045 | /* 186905 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66046 | /* 186908 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66047 | /* 186912 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66048 | /* 186916 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66049 | /* 186918 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66050 | /* 186925 */ // (smax:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66051 | /* 186925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ256rm), |
| 66052 | /* 186928 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66053 | /* 186930 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66054 | /* 186932 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66055 | /* 186936 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66056 | /* 186941 */ GIR_RootConstrainSelectedInstOperands, |
| 66057 | /* 186942 */ // GIR_Coverage, 5378, |
| 66058 | /* 186942 */ GIR_EraseRootFromParent_Done, |
| 66059 | /* 186943 */ // Label 4182: @186943 |
| 66060 | /* 186943 */ GIM_Try, /*On fail goto*//*Label 4183*/ GIMT_Encode4(186970), // Rule ID 3207 // |
| 66061 | /* 186948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 66062 | /* 186951 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66063 | /* 186955 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66064 | /* 186959 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66065 | /* 186963 */ // (smax:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMAXSDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 66066 | /* 186963 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDYrr), |
| 66067 | /* 186968 */ GIR_RootConstrainSelectedInstOperands, |
| 66068 | /* 186969 */ // GIR_Coverage, 3207, |
| 66069 | /* 186969 */ GIR_Done, |
| 66070 | /* 186970 */ // Label 4183: @186970 |
| 66071 | /* 186970 */ GIM_Try, /*On fail goto*//*Label 4184*/ GIMT_Encode4(186997), // Rule ID 5375 // |
| 66072 | /* 186975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66073 | /* 186978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66074 | /* 186982 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66075 | /* 186986 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66076 | /* 186990 */ // (smax:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMAXSDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 66077 | /* 186990 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZ256rr), |
| 66078 | /* 186995 */ GIR_RootConstrainSelectedInstOperands, |
| 66079 | /* 186996 */ // GIR_Coverage, 5375, |
| 66080 | /* 186996 */ GIR_Done, |
| 66081 | /* 186997 */ // Label 4184: @186997 |
| 66082 | /* 186997 */ GIM_Reject, |
| 66083 | /* 186998 */ // Label 4178: @186998 |
| 66084 | /* 186998 */ GIM_Reject, |
| 66085 | /* 186999 */ // Label 4144: @186999 |
| 66086 | /* 186999 */ GIM_Try, /*On fail goto*//*Label 4185*/ GIMT_Encode4(187154), |
| 66087 | /* 187004 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 66088 | /* 187007 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 66089 | /* 187010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66090 | /* 187014 */ GIM_Try, /*On fail goto*//*Label 4186*/ GIMT_Encode4(187072), // Rule ID 24039 // |
| 66091 | /* 187019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66092 | /* 187022 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66093 | /* 187026 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66094 | /* 187030 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66095 | /* 187033 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66096 | /* 187037 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66097 | /* 187041 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66098 | /* 187045 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66099 | /* 187047 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66100 | /* 187054 */ // (smax:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMAXSQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66101 | /* 187054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrm), |
| 66102 | /* 187057 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66103 | /* 187059 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66104 | /* 187061 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66105 | /* 187065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66106 | /* 187070 */ GIR_RootConstrainSelectedInstOperands, |
| 66107 | /* 187071 */ // GIR_Coverage, 24039, |
| 66108 | /* 187071 */ GIR_EraseRootFromParent_Done, |
| 66109 | /* 187072 */ // Label 4186: @187072 |
| 66110 | /* 187072 */ GIM_Try, /*On fail goto*//*Label 4187*/ GIMT_Encode4(187130), // Rule ID 5396 // |
| 66111 | /* 187077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66112 | /* 187080 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66113 | /* 187084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66114 | /* 187088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66115 | /* 187092 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66116 | /* 187095 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66117 | /* 187099 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66118 | /* 187103 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66119 | /* 187105 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66120 | /* 187112 */ // (smax:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66121 | /* 187112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrm), |
| 66122 | /* 187115 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66123 | /* 187117 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66124 | /* 187119 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66125 | /* 187123 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66126 | /* 187128 */ GIR_RootConstrainSelectedInstOperands, |
| 66127 | /* 187129 */ // GIR_Coverage, 5396, |
| 66128 | /* 187129 */ GIR_EraseRootFromParent_Done, |
| 66129 | /* 187130 */ // Label 4187: @187130 |
| 66130 | /* 187130 */ GIM_Try, /*On fail goto*//*Label 4188*/ GIMT_Encode4(187153), // Rule ID 5393 // |
| 66131 | /* 187135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66132 | /* 187138 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66133 | /* 187142 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66134 | /* 187146 */ // (smax:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMAXSQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 66135 | /* 187146 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSQZrr), |
| 66136 | /* 187151 */ GIR_RootConstrainSelectedInstOperands, |
| 66137 | /* 187152 */ // GIR_Coverage, 5393, |
| 66138 | /* 187152 */ GIR_Done, |
| 66139 | /* 187153 */ // Label 4188: @187153 |
| 66140 | /* 187153 */ GIM_Reject, |
| 66141 | /* 187154 */ // Label 4185: @187154 |
| 66142 | /* 187154 */ GIM_Reject, |
| 66143 | /* 187155 */ // Label 4145: @187155 |
| 66144 | /* 187155 */ GIM_Try, /*On fail goto*//*Label 4189*/ GIMT_Encode4(187496), |
| 66145 | /* 187160 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 66146 | /* 187163 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 66147 | /* 187166 */ GIM_Try, /*On fail goto*//*Label 4190*/ GIMT_Encode4(187228), // Rule ID 23590 // |
| 66148 | /* 187171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66149 | /* 187174 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66150 | /* 187178 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66151 | /* 187182 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66152 | /* 187186 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66153 | /* 187189 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66154 | /* 187193 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66155 | /* 187197 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66156 | /* 187201 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66157 | /* 187203 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66158 | /* 187210 */ // (smax:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPMAXSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66159 | /* 187210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBrm), |
| 66160 | /* 187213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66161 | /* 187215 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66162 | /* 187217 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66163 | /* 187221 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66164 | /* 187226 */ GIR_RootConstrainSelectedInstOperands, |
| 66165 | /* 187227 */ // GIR_Coverage, 23590, |
| 66166 | /* 187227 */ GIR_EraseRootFromParent_Done, |
| 66167 | /* 187228 */ // Label 4190: @187228 |
| 66168 | /* 187228 */ GIM_Try, /*On fail goto*//*Label 4191*/ GIMT_Encode4(187290), // Rule ID 24009 // |
| 66169 | /* 187233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66170 | /* 187236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66171 | /* 187240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66172 | /* 187244 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66173 | /* 187248 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66174 | /* 187251 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66175 | /* 187255 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66176 | /* 187259 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66177 | /* 187263 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66178 | /* 187265 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66179 | /* 187272 */ // (smax:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPMAXSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66180 | /* 187272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ128rm), |
| 66181 | /* 187275 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66182 | /* 187277 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66183 | /* 187279 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66184 | /* 187283 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66185 | /* 187288 */ GIR_RootConstrainSelectedInstOperands, |
| 66186 | /* 187289 */ // GIR_Coverage, 24009, |
| 66187 | /* 187289 */ GIR_EraseRootFromParent_Done, |
| 66188 | /* 187290 */ // Label 4191: @187290 |
| 66189 | /* 187290 */ GIM_Try, /*On fail goto*//*Label 4192*/ GIMT_Encode4(187352), // Rule ID 3200 // |
| 66190 | /* 187295 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66191 | /* 187298 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66192 | /* 187302 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66193 | /* 187306 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66194 | /* 187310 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66195 | /* 187314 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66196 | /* 187317 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66197 | /* 187321 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66198 | /* 187325 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66199 | /* 187327 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66200 | /* 187334 */ // (smax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66201 | /* 187334 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBrm), |
| 66202 | /* 187337 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66203 | /* 187339 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66204 | /* 187341 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66205 | /* 187345 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66206 | /* 187350 */ GIR_RootConstrainSelectedInstOperands, |
| 66207 | /* 187351 */ // GIR_Coverage, 3200, |
| 66208 | /* 187351 */ GIR_EraseRootFromParent_Done, |
| 66209 | /* 187352 */ // Label 4192: @187352 |
| 66210 | /* 187352 */ GIM_Try, /*On fail goto*//*Label 4193*/ GIMT_Encode4(187414), // Rule ID 5345 // |
| 66211 | /* 187357 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66212 | /* 187360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66213 | /* 187364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66214 | /* 187368 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66215 | /* 187372 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66216 | /* 187376 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66217 | /* 187379 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66218 | /* 187383 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66219 | /* 187387 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66220 | /* 187389 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66221 | /* 187396 */ // (smax:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66222 | /* 187396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ128rm), |
| 66223 | /* 187399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66224 | /* 187401 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66225 | /* 187403 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66226 | /* 187407 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66227 | /* 187412 */ GIR_RootConstrainSelectedInstOperands, |
| 66228 | /* 187413 */ // GIR_Coverage, 5345, |
| 66229 | /* 187413 */ GIR_EraseRootFromParent_Done, |
| 66230 | /* 187414 */ // Label 4193: @187414 |
| 66231 | /* 187414 */ GIM_Try, /*On fail goto*//*Label 4194*/ GIMT_Encode4(187441), // Rule ID 3199 // |
| 66232 | /* 187419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 66233 | /* 187422 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66234 | /* 187426 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66235 | /* 187430 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66236 | /* 187434 */ // (smax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPMAXSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 66237 | /* 187434 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBrr), |
| 66238 | /* 187439 */ GIR_RootConstrainSelectedInstOperands, |
| 66239 | /* 187440 */ // GIR_Coverage, 3199, |
| 66240 | /* 187440 */ GIR_Done, |
| 66241 | /* 187441 */ // Label 4194: @187441 |
| 66242 | /* 187441 */ GIM_Try, /*On fail goto*//*Label 4195*/ GIMT_Encode4(187468), // Rule ID 3229 // |
| 66243 | /* 187446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 66244 | /* 187449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66245 | /* 187453 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66246 | /* 187457 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66247 | /* 187461 */ // (smax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PMAXSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 66248 | /* 187461 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXSBrr), |
| 66249 | /* 187466 */ GIR_RootConstrainSelectedInstOperands, |
| 66250 | /* 187467 */ // GIR_Coverage, 3229, |
| 66251 | /* 187467 */ GIR_Done, |
| 66252 | /* 187468 */ // Label 4195: @187468 |
| 66253 | /* 187468 */ GIM_Try, /*On fail goto*//*Label 4196*/ GIMT_Encode4(187495), // Rule ID 5342 // |
| 66254 | /* 187473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66255 | /* 187476 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66256 | /* 187480 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66257 | /* 187484 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66258 | /* 187488 */ // (smax:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPMAXSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 66259 | /* 187488 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ128rr), |
| 66260 | /* 187493 */ GIR_RootConstrainSelectedInstOperands, |
| 66261 | /* 187494 */ // GIR_Coverage, 5342, |
| 66262 | /* 187494 */ GIR_Done, |
| 66263 | /* 187495 */ // Label 4196: @187495 |
| 66264 | /* 187495 */ GIM_Reject, |
| 66265 | /* 187496 */ // Label 4189: @187496 |
| 66266 | /* 187496 */ GIM_Reject, |
| 66267 | /* 187497 */ // Label 4146: @187497 |
| 66268 | /* 187497 */ GIM_Try, /*On fail goto*//*Label 4197*/ GIMT_Encode4(187811), |
| 66269 | /* 187502 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 66270 | /* 187505 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 66271 | /* 187508 */ GIM_Try, /*On fail goto*//*Label 4198*/ GIMT_Encode4(187570), // Rule ID 23555 // |
| 66272 | /* 187513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66273 | /* 187516 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66274 | /* 187520 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66275 | /* 187524 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66276 | /* 187528 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66277 | /* 187531 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66278 | /* 187535 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66279 | /* 187539 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66280 | /* 187543 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66281 | /* 187545 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66282 | /* 187552 */ // (smax:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMAXSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66283 | /* 187552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWYrm), |
| 66284 | /* 187555 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66285 | /* 187557 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66286 | /* 187559 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66287 | /* 187563 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66288 | /* 187568 */ GIR_RootConstrainSelectedInstOperands, |
| 66289 | /* 187569 */ // GIR_Coverage, 23555, |
| 66290 | /* 187569 */ GIR_EraseRootFromParent_Done, |
| 66291 | /* 187570 */ // Label 4198: @187570 |
| 66292 | /* 187570 */ GIM_Try, /*On fail goto*//*Label 4199*/ GIMT_Encode4(187632), // Rule ID 24015 // |
| 66293 | /* 187575 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66294 | /* 187578 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66295 | /* 187582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66296 | /* 187586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66297 | /* 187590 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66298 | /* 187593 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66299 | /* 187597 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66300 | /* 187601 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66301 | /* 187605 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66302 | /* 187607 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66303 | /* 187614 */ // (smax:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMAXSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66304 | /* 187614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ256rm), |
| 66305 | /* 187617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66306 | /* 187619 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66307 | /* 187621 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66308 | /* 187625 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66309 | /* 187630 */ GIR_RootConstrainSelectedInstOperands, |
| 66310 | /* 187631 */ // GIR_Coverage, 24015, |
| 66311 | /* 187631 */ GIR_EraseRootFromParent_Done, |
| 66312 | /* 187632 */ // Label 4199: @187632 |
| 66313 | /* 187632 */ GIM_Try, /*On fail goto*//*Label 4200*/ GIMT_Encode4(187694), // Rule ID 2659 // |
| 66314 | /* 187637 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66315 | /* 187640 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66316 | /* 187644 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66317 | /* 187648 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66318 | /* 187652 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66319 | /* 187656 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66320 | /* 187659 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66321 | /* 187663 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66322 | /* 187667 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66323 | /* 187669 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66324 | /* 187676 */ // (smax:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66325 | /* 187676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWYrm), |
| 66326 | /* 187679 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66327 | /* 187681 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66328 | /* 187683 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66329 | /* 187687 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66330 | /* 187692 */ GIR_RootConstrainSelectedInstOperands, |
| 66331 | /* 187693 */ // GIR_Coverage, 2659, |
| 66332 | /* 187693 */ GIR_EraseRootFromParent_Done, |
| 66333 | /* 187694 */ // Label 4200: @187694 |
| 66334 | /* 187694 */ GIM_Try, /*On fail goto*//*Label 4201*/ GIMT_Encode4(187756), // Rule ID 5357 // |
| 66335 | /* 187699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66336 | /* 187702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66337 | /* 187706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66338 | /* 187710 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66339 | /* 187714 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66340 | /* 187718 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66341 | /* 187721 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66342 | /* 187725 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66343 | /* 187729 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66344 | /* 187731 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66345 | /* 187738 */ // (smax:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66346 | /* 187738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ256rm), |
| 66347 | /* 187741 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66348 | /* 187743 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66349 | /* 187745 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66350 | /* 187749 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66351 | /* 187754 */ GIR_RootConstrainSelectedInstOperands, |
| 66352 | /* 187755 */ // GIR_Coverage, 5357, |
| 66353 | /* 187755 */ GIR_EraseRootFromParent_Done, |
| 66354 | /* 187756 */ // Label 4201: @187756 |
| 66355 | /* 187756 */ GIM_Try, /*On fail goto*//*Label 4202*/ GIMT_Encode4(187783), // Rule ID 2658 // |
| 66356 | /* 187761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66357 | /* 187764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66358 | /* 187768 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66359 | /* 187772 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66360 | /* 187776 */ // (smax:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMAXSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 66361 | /* 187776 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWYrr), |
| 66362 | /* 187781 */ GIR_RootConstrainSelectedInstOperands, |
| 66363 | /* 187782 */ // GIR_Coverage, 2658, |
| 66364 | /* 187782 */ GIR_Done, |
| 66365 | /* 187783 */ // Label 4202: @187783 |
| 66366 | /* 187783 */ GIM_Try, /*On fail goto*//*Label 4203*/ GIMT_Encode4(187810), // Rule ID 5354 // |
| 66367 | /* 187788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66368 | /* 187791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66369 | /* 187795 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66370 | /* 187799 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66371 | /* 187803 */ // (smax:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMAXSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 66372 | /* 187803 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZ256rr), |
| 66373 | /* 187808 */ GIR_RootConstrainSelectedInstOperands, |
| 66374 | /* 187809 */ // GIR_Coverage, 5354, |
| 66375 | /* 187809 */ GIR_Done, |
| 66376 | /* 187810 */ // Label 4203: @187810 |
| 66377 | /* 187810 */ GIM_Reject, |
| 66378 | /* 187811 */ // Label 4197: @187811 |
| 66379 | /* 187811 */ GIM_Reject, |
| 66380 | /* 187812 */ // Label 4147: @187812 |
| 66381 | /* 187812 */ GIM_Try, /*On fail goto*//*Label 4204*/ GIMT_Encode4(187967), |
| 66382 | /* 187817 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 66383 | /* 187820 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 66384 | /* 187823 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66385 | /* 187827 */ GIM_Try, /*On fail goto*//*Label 4205*/ GIMT_Encode4(187885), // Rule ID 24021 // |
| 66386 | /* 187832 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66387 | /* 187835 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66388 | /* 187839 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66389 | /* 187843 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66390 | /* 187846 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66391 | /* 187850 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66392 | /* 187854 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66393 | /* 187858 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66394 | /* 187860 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66395 | /* 187867 */ // (smax:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMAXSDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66396 | /* 187867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZrm), |
| 66397 | /* 187870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66398 | /* 187872 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66399 | /* 187874 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66400 | /* 187878 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66401 | /* 187883 */ GIR_RootConstrainSelectedInstOperands, |
| 66402 | /* 187884 */ // GIR_Coverage, 24021, |
| 66403 | /* 187884 */ GIR_EraseRootFromParent_Done, |
| 66404 | /* 187885 */ // Label 4205: @187885 |
| 66405 | /* 187885 */ GIM_Try, /*On fail goto*//*Label 4206*/ GIMT_Encode4(187943), // Rule ID 5369 // |
| 66406 | /* 187890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66407 | /* 187893 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66408 | /* 187897 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66409 | /* 187901 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66410 | /* 187905 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66411 | /* 187908 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66412 | /* 187912 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66413 | /* 187916 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66414 | /* 187918 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66415 | /* 187925 */ // (smax:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66416 | /* 187925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZrm), |
| 66417 | /* 187928 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66418 | /* 187930 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66419 | /* 187932 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66420 | /* 187936 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66421 | /* 187941 */ GIR_RootConstrainSelectedInstOperands, |
| 66422 | /* 187942 */ // GIR_Coverage, 5369, |
| 66423 | /* 187942 */ GIR_EraseRootFromParent_Done, |
| 66424 | /* 187943 */ // Label 4206: @187943 |
| 66425 | /* 187943 */ GIM_Try, /*On fail goto*//*Label 4207*/ GIMT_Encode4(187966), // Rule ID 5366 // |
| 66426 | /* 187948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 66427 | /* 187951 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66428 | /* 187955 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66429 | /* 187959 */ // (smax:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMAXSDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 66430 | /* 187959 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSDZrr), |
| 66431 | /* 187964 */ GIR_RootConstrainSelectedInstOperands, |
| 66432 | /* 187965 */ // GIR_Coverage, 5366, |
| 66433 | /* 187965 */ GIR_Done, |
| 66434 | /* 187966 */ // Label 4207: @187966 |
| 66435 | /* 187966 */ GIM_Reject, |
| 66436 | /* 187967 */ // Label 4204: @187967 |
| 66437 | /* 187967 */ GIM_Reject, |
| 66438 | /* 187968 */ // Label 4148: @187968 |
| 66439 | /* 187968 */ GIM_Try, /*On fail goto*//*Label 4208*/ GIMT_Encode4(188282), |
| 66440 | /* 187973 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 66441 | /* 187976 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 66442 | /* 187979 */ GIM_Try, /*On fail goto*//*Label 4209*/ GIMT_Encode4(188041), // Rule ID 23599 // |
| 66443 | /* 187984 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66444 | /* 187987 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66445 | /* 187991 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66446 | /* 187995 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66447 | /* 187999 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66448 | /* 188002 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66449 | /* 188006 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66450 | /* 188010 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66451 | /* 188014 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66452 | /* 188016 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66453 | /* 188023 */ // (smax:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPMAXSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66454 | /* 188023 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBYrm), |
| 66455 | /* 188026 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66456 | /* 188028 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66457 | /* 188030 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66458 | /* 188034 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66459 | /* 188039 */ GIR_RootConstrainSelectedInstOperands, |
| 66460 | /* 188040 */ // GIR_Coverage, 23599, |
| 66461 | /* 188040 */ GIR_EraseRootFromParent_Done, |
| 66462 | /* 188041 */ // Label 4209: @188041 |
| 66463 | /* 188041 */ GIM_Try, /*On fail goto*//*Label 4210*/ GIMT_Encode4(188103), // Rule ID 24006 // |
| 66464 | /* 188046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66465 | /* 188049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66466 | /* 188053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66467 | /* 188057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66468 | /* 188061 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66469 | /* 188064 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66470 | /* 188068 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66471 | /* 188072 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66472 | /* 188076 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66473 | /* 188078 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66474 | /* 188085 */ // (smax:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPMAXSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66475 | /* 188085 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ256rm), |
| 66476 | /* 188088 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66477 | /* 188090 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66478 | /* 188092 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66479 | /* 188096 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66480 | /* 188101 */ GIR_RootConstrainSelectedInstOperands, |
| 66481 | /* 188102 */ // GIR_Coverage, 24006, |
| 66482 | /* 188102 */ GIR_EraseRootFromParent_Done, |
| 66483 | /* 188103 */ // Label 4210: @188103 |
| 66484 | /* 188103 */ GIM_Try, /*On fail goto*//*Label 4211*/ GIMT_Encode4(188165), // Rule ID 3218 // |
| 66485 | /* 188108 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66486 | /* 188111 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66487 | /* 188115 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66488 | /* 188119 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66489 | /* 188123 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66490 | /* 188127 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66491 | /* 188130 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66492 | /* 188134 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66493 | /* 188138 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66494 | /* 188140 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66495 | /* 188147 */ // (smax:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66496 | /* 188147 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBYrm), |
| 66497 | /* 188150 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66498 | /* 188152 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66499 | /* 188154 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66500 | /* 188158 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66501 | /* 188163 */ GIR_RootConstrainSelectedInstOperands, |
| 66502 | /* 188164 */ // GIR_Coverage, 3218, |
| 66503 | /* 188164 */ GIR_EraseRootFromParent_Done, |
| 66504 | /* 188165 */ // Label 4211: @188165 |
| 66505 | /* 188165 */ GIM_Try, /*On fail goto*//*Label 4212*/ GIMT_Encode4(188227), // Rule ID 5339 // |
| 66506 | /* 188170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66507 | /* 188173 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66508 | /* 188177 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66509 | /* 188181 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66510 | /* 188185 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66511 | /* 188189 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66512 | /* 188192 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66513 | /* 188196 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66514 | /* 188200 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66515 | /* 188202 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66516 | /* 188209 */ // (smax:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66517 | /* 188209 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ256rm), |
| 66518 | /* 188212 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66519 | /* 188214 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66520 | /* 188216 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66521 | /* 188220 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66522 | /* 188225 */ GIR_RootConstrainSelectedInstOperands, |
| 66523 | /* 188226 */ // GIR_Coverage, 5339, |
| 66524 | /* 188226 */ GIR_EraseRootFromParent_Done, |
| 66525 | /* 188227 */ // Label 4212: @188227 |
| 66526 | /* 188227 */ GIM_Try, /*On fail goto*//*Label 4213*/ GIMT_Encode4(188254), // Rule ID 3217 // |
| 66527 | /* 188232 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 66528 | /* 188235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66529 | /* 188239 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66530 | /* 188243 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 66531 | /* 188247 */ // (smax:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPMAXSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 66532 | /* 188247 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBYrr), |
| 66533 | /* 188252 */ GIR_RootConstrainSelectedInstOperands, |
| 66534 | /* 188253 */ // GIR_Coverage, 3217, |
| 66535 | /* 188253 */ GIR_Done, |
| 66536 | /* 188254 */ // Label 4213: @188254 |
| 66537 | /* 188254 */ GIM_Try, /*On fail goto*//*Label 4214*/ GIMT_Encode4(188281), // Rule ID 5336 // |
| 66538 | /* 188259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 66539 | /* 188262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66540 | /* 188266 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66541 | /* 188270 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66542 | /* 188274 */ // (smax:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPMAXSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 66543 | /* 188274 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZ256rr), |
| 66544 | /* 188279 */ GIR_RootConstrainSelectedInstOperands, |
| 66545 | /* 188280 */ // GIR_Coverage, 5336, |
| 66546 | /* 188280 */ GIR_Done, |
| 66547 | /* 188281 */ // Label 4214: @188281 |
| 66548 | /* 188281 */ GIM_Reject, |
| 66549 | /* 188282 */ // Label 4208: @188282 |
| 66550 | /* 188282 */ GIM_Reject, |
| 66551 | /* 188283 */ // Label 4149: @188283 |
| 66552 | /* 188283 */ GIM_Try, /*On fail goto*//*Label 4215*/ GIMT_Encode4(188438), |
| 66553 | /* 188288 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 66554 | /* 188291 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 66555 | /* 188294 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66556 | /* 188298 */ GIM_Try, /*On fail goto*//*Label 4216*/ GIMT_Encode4(188356), // Rule ID 24012 // |
| 66557 | /* 188303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 66558 | /* 188306 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66559 | /* 188310 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66560 | /* 188314 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66561 | /* 188317 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66562 | /* 188321 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66563 | /* 188325 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66564 | /* 188329 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66565 | /* 188331 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66566 | /* 188338 */ // (smax:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMAXSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66567 | /* 188338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZrm), |
| 66568 | /* 188341 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66569 | /* 188343 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66570 | /* 188345 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66571 | /* 188349 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66572 | /* 188354 */ GIR_RootConstrainSelectedInstOperands, |
| 66573 | /* 188355 */ // GIR_Coverage, 24012, |
| 66574 | /* 188355 */ GIR_EraseRootFromParent_Done, |
| 66575 | /* 188356 */ // Label 4216: @188356 |
| 66576 | /* 188356 */ GIM_Try, /*On fail goto*//*Label 4217*/ GIMT_Encode4(188414), // Rule ID 5351 // |
| 66577 | /* 188361 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 66578 | /* 188364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66579 | /* 188368 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66580 | /* 188372 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66581 | /* 188376 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66582 | /* 188379 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66583 | /* 188383 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66584 | /* 188387 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66585 | /* 188389 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66586 | /* 188396 */ // (smax:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66587 | /* 188396 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZrm), |
| 66588 | /* 188399 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66589 | /* 188401 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66590 | /* 188403 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66591 | /* 188407 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66592 | /* 188412 */ GIR_RootConstrainSelectedInstOperands, |
| 66593 | /* 188413 */ // GIR_Coverage, 5351, |
| 66594 | /* 188413 */ GIR_EraseRootFromParent_Done, |
| 66595 | /* 188414 */ // Label 4217: @188414 |
| 66596 | /* 188414 */ GIM_Try, /*On fail goto*//*Label 4218*/ GIMT_Encode4(188437), // Rule ID 5348 // |
| 66597 | /* 188419 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 66598 | /* 188422 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66599 | /* 188426 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66600 | /* 188430 */ // (smax:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMAXSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 66601 | /* 188430 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSWZrr), |
| 66602 | /* 188435 */ GIR_RootConstrainSelectedInstOperands, |
| 66603 | /* 188436 */ // GIR_Coverage, 5348, |
| 66604 | /* 188436 */ GIR_Done, |
| 66605 | /* 188437 */ // Label 4218: @188437 |
| 66606 | /* 188437 */ GIM_Reject, |
| 66607 | /* 188438 */ // Label 4215: @188438 |
| 66608 | /* 188438 */ GIM_Reject, |
| 66609 | /* 188439 */ // Label 4150: @188439 |
| 66610 | /* 188439 */ GIM_Try, /*On fail goto*//*Label 4219*/ GIMT_Encode4(188594), |
| 66611 | /* 188444 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 66612 | /* 188447 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 66613 | /* 188450 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66614 | /* 188454 */ GIM_Try, /*On fail goto*//*Label 4220*/ GIMT_Encode4(188512), // Rule ID 24003 // |
| 66615 | /* 188459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 66616 | /* 188462 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66617 | /* 188466 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66618 | /* 188470 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66619 | /* 188473 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66620 | /* 188477 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66621 | /* 188481 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66622 | /* 188485 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66623 | /* 188487 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66624 | /* 188494 */ // (smax:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPMAXSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66625 | /* 188494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZrm), |
| 66626 | /* 188497 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66627 | /* 188499 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66628 | /* 188501 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66629 | /* 188505 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66630 | /* 188510 */ GIR_RootConstrainSelectedInstOperands, |
| 66631 | /* 188511 */ // GIR_Coverage, 24003, |
| 66632 | /* 188511 */ GIR_EraseRootFromParent_Done, |
| 66633 | /* 188512 */ // Label 4220: @188512 |
| 66634 | /* 188512 */ GIM_Try, /*On fail goto*//*Label 4221*/ GIMT_Encode4(188570), // Rule ID 5333 // |
| 66635 | /* 188517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 66636 | /* 188520 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66637 | /* 188524 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66638 | /* 188528 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66639 | /* 188532 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66640 | /* 188535 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66641 | /* 188539 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66642 | /* 188543 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66643 | /* 188545 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66644 | /* 188552 */ // (smax:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXSBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66645 | /* 188552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZrm), |
| 66646 | /* 188555 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66647 | /* 188557 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66648 | /* 188559 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66649 | /* 188563 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66650 | /* 188568 */ GIR_RootConstrainSelectedInstOperands, |
| 66651 | /* 188569 */ // GIR_Coverage, 5333, |
| 66652 | /* 188569 */ GIR_EraseRootFromParent_Done, |
| 66653 | /* 188570 */ // Label 4221: @188570 |
| 66654 | /* 188570 */ GIM_Try, /*On fail goto*//*Label 4222*/ GIMT_Encode4(188593), // Rule ID 5330 // |
| 66655 | /* 188575 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 66656 | /* 188578 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66657 | /* 188582 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 66658 | /* 188586 */ // (smax:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPMAXSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 66659 | /* 188586 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXSBZrr), |
| 66660 | /* 188591 */ GIR_RootConstrainSelectedInstOperands, |
| 66661 | /* 188592 */ // GIR_Coverage, 5330, |
| 66662 | /* 188592 */ GIR_Done, |
| 66663 | /* 188593 */ // Label 4222: @188593 |
| 66664 | /* 188593 */ GIM_Reject, |
| 66665 | /* 188594 */ // Label 4219: @188594 |
| 66666 | /* 188594 */ GIM_Reject, |
| 66667 | /* 188595 */ // Label 4151: @188595 |
| 66668 | /* 188595 */ GIM_Reject, |
| 66669 | /* 188596 */ // Label 57: @188596 |
| 66670 | /* 188596 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4235*/ GIMT_Encode4(191916), |
| 66671 | /* 188607 */ /*GILLT_v2s64*//*Label 4223*/ GIMT_Encode4(188675), GIMT_Encode4(0), |
| 66672 | /* 188615 */ /*GILLT_v4s32*//*Label 4224*/ GIMT_Encode4(189004), |
| 66673 | /* 188619 */ /*GILLT_v4s64*//*Label 4225*/ GIMT_Encode4(189346), GIMT_Encode4(0), |
| 66674 | /* 188627 */ /*GILLT_v8s16*//*Label 4226*/ GIMT_Encode4(189663), |
| 66675 | /* 188631 */ /*GILLT_v8s32*//*Label 4227*/ GIMT_Encode4(190005), |
| 66676 | /* 188635 */ /*GILLT_v8s64*//*Label 4228*/ GIMT_Encode4(190320), GIMT_Encode4(0), |
| 66677 | /* 188643 */ /*GILLT_v16s8*//*Label 4229*/ GIMT_Encode4(190476), |
| 66678 | /* 188647 */ /*GILLT_v16s16*//*Label 4230*/ GIMT_Encode4(190818), |
| 66679 | /* 188651 */ /*GILLT_v16s32*//*Label 4231*/ GIMT_Encode4(191133), GIMT_Encode4(0), |
| 66680 | /* 188659 */ /*GILLT_v32s8*//*Label 4232*/ GIMT_Encode4(191289), |
| 66681 | /* 188663 */ /*GILLT_v32s16*//*Label 4233*/ GIMT_Encode4(191604), GIMT_Encode4(0), |
| 66682 | /* 188671 */ /*GILLT_v64s8*//*Label 4234*/ GIMT_Encode4(191760), |
| 66683 | /* 188675 */ // Label 4223: @188675 |
| 66684 | /* 188675 */ GIM_Try, /*On fail goto*//*Label 4236*/ GIMT_Encode4(189003), |
| 66685 | /* 188680 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 66686 | /* 188683 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 66687 | /* 188686 */ GIM_Try, /*On fail goto*//*Label 4237*/ GIMT_Encode4(188748), // Rule ID 24213 // |
| 66688 | /* 188691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66689 | /* 188694 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66690 | /* 188698 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66691 | /* 188702 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66692 | /* 188706 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66693 | /* 188709 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66694 | /* 188713 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66695 | /* 188717 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66696 | /* 188721 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66697 | /* 188723 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66698 | /* 188730 */ // (umin:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMINUQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66699 | /* 188730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ128rm), |
| 66700 | /* 188733 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66701 | /* 188735 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66702 | /* 188737 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66703 | /* 188741 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66704 | /* 188746 */ GIR_RootConstrainSelectedInstOperands, |
| 66705 | /* 188747 */ // GIR_Coverage, 24213, |
| 66706 | /* 188747 */ GIR_EraseRootFromParent_Done, |
| 66707 | /* 188748 */ // Label 4237: @188748 |
| 66708 | /* 188748 */ GIM_Try, /*On fail goto*//*Label 4238*/ GIMT_Encode4(188810), // Rule ID 5684 // |
| 66709 | /* 188753 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66710 | /* 188756 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66711 | /* 188760 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66712 | /* 188764 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66713 | /* 188768 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66714 | /* 188772 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66715 | /* 188775 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66716 | /* 188779 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66717 | /* 188783 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66718 | /* 188785 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66719 | /* 188792 */ // (umin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66720 | /* 188792 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ128rm), |
| 66721 | /* 188795 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66722 | /* 188797 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66723 | /* 188799 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66724 | /* 188803 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66725 | /* 188808 */ GIR_RootConstrainSelectedInstOperands, |
| 66726 | /* 188809 */ // GIR_Coverage, 5684, |
| 66727 | /* 188809 */ GIR_EraseRootFromParent_Done, |
| 66728 | /* 188810 */ // Label 4238: @188810 |
| 66729 | /* 188810 */ GIM_Try, /*On fail goto*//*Label 4239*/ GIMT_Encode4(188837), // Rule ID 5681 // |
| 66730 | /* 188815 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66731 | /* 188818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66732 | /* 188822 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66733 | /* 188826 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66734 | /* 188830 */ // (umin:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMINUQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 66735 | /* 188830 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ128rr), |
| 66736 | /* 188835 */ GIR_RootConstrainSelectedInstOperands, |
| 66737 | /* 188836 */ // GIR_Coverage, 5681, |
| 66738 | /* 188836 */ GIR_Done, |
| 66739 | /* 188837 */ // Label 4239: @188837 |
| 66740 | /* 188837 */ GIM_Try, /*On fail goto*//*Label 4240*/ GIMT_Encode4(189002), // Rule ID 20015 // |
| 66741 | /* 188842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 66742 | /* 188845 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 66743 | /* 188849 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66744 | /* 188853 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66745 | /* 188857 */ // (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] }) |
| 66746 | /* 188857 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 66747 | /* 188860 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 66748 | /* 188864 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66749 | /* 188869 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 66750 | /* 188871 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 66751 | /* 188874 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 66752 | /* 188878 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66753 | /* 188883 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 66754 | /* 188886 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 66755 | /* 188890 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 66756 | /* 188893 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 66757 | /* 188898 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66758 | /* 188903 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 66759 | /* 188908 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 66760 | /* 188911 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 66761 | /* 188915 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66762 | /* 188920 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 66763 | /* 188922 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 66764 | /* 188925 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 66765 | /* 188929 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66766 | /* 188934 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 66767 | /* 188937 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 66768 | /* 188941 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 66769 | /* 188944 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 66770 | /* 188949 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66771 | /* 188954 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 66772 | /* 188959 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 66773 | /* 188962 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrr), |
| 66774 | /* 188966 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66775 | /* 188971 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 66776 | /* 188974 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 66777 | /* 188977 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 66778 | /* 188979 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 66779 | /* 188982 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66780 | /* 188984 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 66781 | /* 188991 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 66782 | /* 188996 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66783 | /* 189001 */ // GIR_Coverage, 20015, |
| 66784 | /* 189001 */ GIR_EraseRootFromParent_Done, |
| 66785 | /* 189002 */ // Label 4240: @189002 |
| 66786 | /* 189002 */ GIM_Reject, |
| 66787 | /* 189003 */ // Label 4236: @189003 |
| 66788 | /* 189003 */ GIM_Reject, |
| 66789 | /* 189004 */ // Label 4224: @189004 |
| 66790 | /* 189004 */ GIM_Try, /*On fail goto*//*Label 4241*/ GIMT_Encode4(189345), |
| 66791 | /* 189009 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 66792 | /* 189012 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 66793 | /* 189015 */ GIM_Try, /*On fail goto*//*Label 4242*/ GIMT_Encode4(189077), // Rule ID 23584 // |
| 66794 | /* 189020 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 66795 | /* 189023 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66796 | /* 189027 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66797 | /* 189031 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66798 | /* 189035 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66799 | /* 189038 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66800 | /* 189042 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66801 | /* 189046 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66802 | /* 189050 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66803 | /* 189052 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66804 | /* 189059 */ // (umin:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMINUDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66805 | /* 189059 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDrm), |
| 66806 | /* 189062 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66807 | /* 189064 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66808 | /* 189066 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66809 | /* 189070 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66810 | /* 189075 */ GIR_RootConstrainSelectedInstOperands, |
| 66811 | /* 189076 */ // GIR_Coverage, 23584, |
| 66812 | /* 189076 */ GIR_EraseRootFromParent_Done, |
| 66813 | /* 189077 */ // Label 4242: @189077 |
| 66814 | /* 189077 */ GIM_Try, /*On fail goto*//*Label 4243*/ GIMT_Encode4(189139), // Rule ID 24195 // |
| 66815 | /* 189082 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66816 | /* 189085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66817 | /* 189089 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66818 | /* 189093 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66819 | /* 189097 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66820 | /* 189100 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66821 | /* 189104 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66822 | /* 189108 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66823 | /* 189112 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66824 | /* 189114 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66825 | /* 189121 */ // (umin:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMINUDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66826 | /* 189121 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ128rm), |
| 66827 | /* 189124 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66828 | /* 189126 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66829 | /* 189128 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66830 | /* 189132 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66831 | /* 189137 */ GIR_RootConstrainSelectedInstOperands, |
| 66832 | /* 189138 */ // GIR_Coverage, 24195, |
| 66833 | /* 189138 */ GIR_EraseRootFromParent_Done, |
| 66834 | /* 189139 */ // Label 4243: @189139 |
| 66835 | /* 189139 */ GIM_Try, /*On fail goto*//*Label 4244*/ GIMT_Encode4(189201), // Rule ID 3188 // |
| 66836 | /* 189144 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 66837 | /* 189147 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66838 | /* 189151 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66839 | /* 189155 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66840 | /* 189159 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66841 | /* 189163 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66842 | /* 189166 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66843 | /* 189170 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66844 | /* 189174 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66845 | /* 189176 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66846 | /* 189183 */ // (umin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66847 | /* 189183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDrm), |
| 66848 | /* 189186 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66849 | /* 189188 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66850 | /* 189190 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66851 | /* 189194 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66852 | /* 189199 */ GIR_RootConstrainSelectedInstOperands, |
| 66853 | /* 189200 */ // GIR_Coverage, 3188, |
| 66854 | /* 189200 */ GIR_EraseRootFromParent_Done, |
| 66855 | /* 189201 */ // Label 4244: @189201 |
| 66856 | /* 189201 */ GIM_Try, /*On fail goto*//*Label 4245*/ GIMT_Encode4(189263), // Rule ID 5657 // |
| 66857 | /* 189206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66858 | /* 189209 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66859 | /* 189213 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66860 | /* 189217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66861 | /* 189221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66862 | /* 189225 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66863 | /* 189228 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66864 | /* 189232 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66865 | /* 189236 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66866 | /* 189238 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66867 | /* 189245 */ // (umin:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66868 | /* 189245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ128rm), |
| 66869 | /* 189248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66870 | /* 189250 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66871 | /* 189252 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66872 | /* 189256 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66873 | /* 189261 */ GIR_RootConstrainSelectedInstOperands, |
| 66874 | /* 189262 */ // GIR_Coverage, 5657, |
| 66875 | /* 189262 */ GIR_EraseRootFromParent_Done, |
| 66876 | /* 189263 */ // Label 4245: @189263 |
| 66877 | /* 189263 */ GIM_Try, /*On fail goto*//*Label 4246*/ GIMT_Encode4(189290), // Rule ID 3187 // |
| 66878 | /* 189268 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 66879 | /* 189271 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66880 | /* 189275 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66881 | /* 189279 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66882 | /* 189283 */ // (umin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMINUDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 66883 | /* 189283 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDrr), |
| 66884 | /* 189288 */ GIR_RootConstrainSelectedInstOperands, |
| 66885 | /* 189289 */ // GIR_Coverage, 3187, |
| 66886 | /* 189289 */ GIR_Done, |
| 66887 | /* 189290 */ // Label 4246: @189290 |
| 66888 | /* 189290 */ GIM_Try, /*On fail goto*//*Label 4247*/ GIMT_Encode4(189317), // Rule ID 3225 // |
| 66889 | /* 189295 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 66890 | /* 189298 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66891 | /* 189302 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66892 | /* 189306 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 66893 | /* 189310 */ // (umin:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMINUDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 66894 | /* 189310 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINUDrr), |
| 66895 | /* 189315 */ GIR_RootConstrainSelectedInstOperands, |
| 66896 | /* 189316 */ // GIR_Coverage, 3225, |
| 66897 | /* 189316 */ GIR_Done, |
| 66898 | /* 189317 */ // Label 4247: @189317 |
| 66899 | /* 189317 */ GIM_Try, /*On fail goto*//*Label 4248*/ GIMT_Encode4(189344), // Rule ID 5654 // |
| 66900 | /* 189322 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66901 | /* 189325 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66902 | /* 189329 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66903 | /* 189333 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 66904 | /* 189337 */ // (umin:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMINUDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 66905 | /* 189337 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ128rr), |
| 66906 | /* 189342 */ GIR_RootConstrainSelectedInstOperands, |
| 66907 | /* 189343 */ // GIR_Coverage, 5654, |
| 66908 | /* 189343 */ GIR_Done, |
| 66909 | /* 189344 */ // Label 4248: @189344 |
| 66910 | /* 189344 */ GIM_Reject, |
| 66911 | /* 189345 */ // Label 4241: @189345 |
| 66912 | /* 189345 */ GIM_Reject, |
| 66913 | /* 189346 */ // Label 4225: @189346 |
| 66914 | /* 189346 */ GIM_Try, /*On fail goto*//*Label 4249*/ GIMT_Encode4(189662), |
| 66915 | /* 189351 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 66916 | /* 189354 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 66917 | /* 189357 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66918 | /* 189361 */ GIM_Try, /*On fail goto*//*Label 4250*/ GIMT_Encode4(189419), // Rule ID 24207 // |
| 66919 | /* 189366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66920 | /* 189369 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 66921 | /* 189373 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66922 | /* 189377 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66923 | /* 189380 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66924 | /* 189384 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66925 | /* 189388 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66926 | /* 189392 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66927 | /* 189394 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66928 | /* 189401 */ // (umin:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMINUQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66929 | /* 189401 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ256rm), |
| 66930 | /* 189404 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66931 | /* 189406 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 66932 | /* 189408 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66933 | /* 189412 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66934 | /* 189417 */ GIR_RootConstrainSelectedInstOperands, |
| 66935 | /* 189418 */ // GIR_Coverage, 24207, |
| 66936 | /* 189418 */ GIR_EraseRootFromParent_Done, |
| 66937 | /* 189419 */ // Label 4250: @189419 |
| 66938 | /* 189419 */ GIM_Try, /*On fail goto*//*Label 4251*/ GIMT_Encode4(189477), // Rule ID 5675 // |
| 66939 | /* 189424 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66940 | /* 189427 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66941 | /* 189431 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 66942 | /* 189435 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 66943 | /* 189439 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 66944 | /* 189442 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 66945 | /* 189446 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 66946 | /* 189450 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 66947 | /* 189452 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 66948 | /* 189459 */ // (umin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 66949 | /* 189459 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ256rm), |
| 66950 | /* 189462 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 66951 | /* 189464 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 66952 | /* 189466 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 66953 | /* 189470 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 66954 | /* 189475 */ GIR_RootConstrainSelectedInstOperands, |
| 66955 | /* 189476 */ // GIR_Coverage, 5675, |
| 66956 | /* 189476 */ GIR_EraseRootFromParent_Done, |
| 66957 | /* 189477 */ // Label 4251: @189477 |
| 66958 | /* 189477 */ GIM_Try, /*On fail goto*//*Label 4252*/ GIMT_Encode4(189500), // Rule ID 5672 // |
| 66959 | /* 189482 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 66960 | /* 189485 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66961 | /* 189489 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66962 | /* 189493 */ // (umin:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMINUQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 66963 | /* 189493 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUQZ256rr), |
| 66964 | /* 189498 */ GIR_RootConstrainSelectedInstOperands, |
| 66965 | /* 189499 */ // GIR_Coverage, 5672, |
| 66966 | /* 189499 */ GIR_Done, |
| 66967 | /* 189500 */ // Label 4252: @189500 |
| 66968 | /* 189500 */ GIM_Try, /*On fail goto*//*Label 4253*/ GIMT_Encode4(189661), // Rule ID 20013 // |
| 66969 | /* 189505 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 66970 | /* 189508 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66971 | /* 189512 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 66972 | /* 189516 */ // (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] }) |
| 66973 | /* 189516 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 66974 | /* 189519 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 66975 | /* 189523 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66976 | /* 189528 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 66977 | /* 189530 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 66978 | /* 189533 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 66979 | /* 189537 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66980 | /* 189542 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 66981 | /* 189545 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 66982 | /* 189549 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 66983 | /* 189552 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 66984 | /* 189557 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66985 | /* 189562 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 66986 | /* 189567 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 66987 | /* 189570 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 66988 | /* 189574 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66989 | /* 189579 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 66990 | /* 189581 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 66991 | /* 189584 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 66992 | /* 189588 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 66993 | /* 189593 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 66994 | /* 189596 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 66995 | /* 189600 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 66996 | /* 189603 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 66997 | /* 189608 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 66998 | /* 189613 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 66999 | /* 189618 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 67000 | /* 189621 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrr), |
| 67001 | /* 189625 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 67002 | /* 189630 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 67003 | /* 189633 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 67004 | /* 189636 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 67005 | /* 189638 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 67006 | /* 189641 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67007 | /* 189643 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 67008 | /* 189650 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 67009 | /* 189655 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67010 | /* 189660 */ // GIR_Coverage, 20013, |
| 67011 | /* 189660 */ GIR_EraseRootFromParent_Done, |
| 67012 | /* 189661 */ // Label 4253: @189661 |
| 67013 | /* 189661 */ GIM_Reject, |
| 67014 | /* 189662 */ // Label 4249: @189662 |
| 67015 | /* 189662 */ GIM_Reject, |
| 67016 | /* 189663 */ // Label 4226: @189663 |
| 67017 | /* 189663 */ GIM_Try, /*On fail goto*//*Label 4254*/ GIMT_Encode4(190004), |
| 67018 | /* 189668 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 67019 | /* 189671 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 67020 | /* 189674 */ GIM_Try, /*On fail goto*//*Label 4255*/ GIMT_Encode4(189736), // Rule ID 23589 // |
| 67021 | /* 189679 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67022 | /* 189682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67023 | /* 189686 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67024 | /* 189690 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67025 | /* 189694 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67026 | /* 189697 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67027 | /* 189701 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67028 | /* 189705 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67029 | /* 189709 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67030 | /* 189711 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67031 | /* 189718 */ // (umin:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMINUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67032 | /* 189718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWrm), |
| 67033 | /* 189721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67034 | /* 189723 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67035 | /* 189725 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67036 | /* 189729 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67037 | /* 189734 */ GIR_RootConstrainSelectedInstOperands, |
| 67038 | /* 189735 */ // GIR_Coverage, 23589, |
| 67039 | /* 189735 */ GIR_EraseRootFromParent_Done, |
| 67040 | /* 189736 */ // Label 4255: @189736 |
| 67041 | /* 189736 */ GIM_Try, /*On fail goto*//*Label 4256*/ GIMT_Encode4(189798), // Rule ID 24180 // |
| 67042 | /* 189741 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67043 | /* 189744 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67044 | /* 189748 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67045 | /* 189752 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67046 | /* 189756 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67047 | /* 189759 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67048 | /* 189763 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67049 | /* 189767 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67050 | /* 189771 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67051 | /* 189773 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67052 | /* 189780 */ // (umin:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMINUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67053 | /* 189780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ128rm), |
| 67054 | /* 189783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67055 | /* 189785 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67056 | /* 189787 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67057 | /* 189791 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67058 | /* 189796 */ GIR_RootConstrainSelectedInstOperands, |
| 67059 | /* 189797 */ // GIR_Coverage, 24180, |
| 67060 | /* 189797 */ GIR_EraseRootFromParent_Done, |
| 67061 | /* 189798 */ // Label 4256: @189798 |
| 67062 | /* 189798 */ GIM_Try, /*On fail goto*//*Label 4257*/ GIMT_Encode4(189860), // Rule ID 3198 // |
| 67063 | /* 189803 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67064 | /* 189806 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67065 | /* 189810 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67066 | /* 189814 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67067 | /* 189818 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67068 | /* 189822 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67069 | /* 189825 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67070 | /* 189829 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67071 | /* 189833 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67072 | /* 189835 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67073 | /* 189842 */ // (umin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67074 | /* 189842 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWrm), |
| 67075 | /* 189845 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67076 | /* 189847 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67077 | /* 189849 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67078 | /* 189853 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67079 | /* 189858 */ GIR_RootConstrainSelectedInstOperands, |
| 67080 | /* 189859 */ // GIR_Coverage, 3198, |
| 67081 | /* 189859 */ GIR_EraseRootFromParent_Done, |
| 67082 | /* 189860 */ // Label 4257: @189860 |
| 67083 | /* 189860 */ GIM_Try, /*On fail goto*//*Label 4258*/ GIMT_Encode4(189922), // Rule ID 5633 // |
| 67084 | /* 189865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67085 | /* 189868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67086 | /* 189872 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67087 | /* 189876 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67088 | /* 189880 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67089 | /* 189884 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67090 | /* 189887 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67091 | /* 189891 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67092 | /* 189895 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67093 | /* 189897 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67094 | /* 189904 */ // (umin:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67095 | /* 189904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ128rm), |
| 67096 | /* 189907 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67097 | /* 189909 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67098 | /* 189911 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67099 | /* 189915 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67100 | /* 189920 */ GIR_RootConstrainSelectedInstOperands, |
| 67101 | /* 189921 */ // GIR_Coverage, 5633, |
| 67102 | /* 189921 */ GIR_EraseRootFromParent_Done, |
| 67103 | /* 189922 */ // Label 4258: @189922 |
| 67104 | /* 189922 */ GIM_Try, /*On fail goto*//*Label 4259*/ GIMT_Encode4(189949), // Rule ID 3197 // |
| 67105 | /* 189927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67106 | /* 189930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67107 | /* 189934 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67108 | /* 189938 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67109 | /* 189942 */ // (umin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMINUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 67110 | /* 189942 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWrr), |
| 67111 | /* 189947 */ GIR_RootConstrainSelectedInstOperands, |
| 67112 | /* 189948 */ // GIR_Coverage, 3197, |
| 67113 | /* 189948 */ GIR_Done, |
| 67114 | /* 189949 */ // Label 4259: @189949 |
| 67115 | /* 189949 */ GIM_Try, /*On fail goto*//*Label 4260*/ GIMT_Encode4(189976), // Rule ID 3227 // |
| 67116 | /* 189954 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 67117 | /* 189957 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67118 | /* 189961 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67119 | /* 189965 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67120 | /* 189969 */ // (umin:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMINUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 67121 | /* 189969 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINUWrr), |
| 67122 | /* 189974 */ GIR_RootConstrainSelectedInstOperands, |
| 67123 | /* 189975 */ // GIR_Coverage, 3227, |
| 67124 | /* 189975 */ GIR_Done, |
| 67125 | /* 189976 */ // Label 4260: @189976 |
| 67126 | /* 189976 */ GIM_Try, /*On fail goto*//*Label 4261*/ GIMT_Encode4(190003), // Rule ID 5630 // |
| 67127 | /* 189981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67128 | /* 189984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67129 | /* 189988 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67130 | /* 189992 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67131 | /* 189996 */ // (umin:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMINUWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 67132 | /* 189996 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ128rr), |
| 67133 | /* 190001 */ GIR_RootConstrainSelectedInstOperands, |
| 67134 | /* 190002 */ // GIR_Coverage, 5630, |
| 67135 | /* 190002 */ GIR_Done, |
| 67136 | /* 190003 */ // Label 4261: @190003 |
| 67137 | /* 190003 */ GIM_Reject, |
| 67138 | /* 190004 */ // Label 4254: @190004 |
| 67139 | /* 190004 */ GIM_Reject, |
| 67140 | /* 190005 */ // Label 4227: @190005 |
| 67141 | /* 190005 */ GIM_Try, /*On fail goto*//*Label 4262*/ GIMT_Encode4(190319), |
| 67142 | /* 190010 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 67143 | /* 190013 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 67144 | /* 190016 */ GIM_Try, /*On fail goto*//*Label 4263*/ GIMT_Encode4(190078), // Rule ID 23593 // |
| 67145 | /* 190021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 67146 | /* 190024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67147 | /* 190028 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67148 | /* 190032 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67149 | /* 190036 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67150 | /* 190039 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67151 | /* 190043 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67152 | /* 190047 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67153 | /* 190051 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67154 | /* 190053 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67155 | /* 190060 */ // (umin:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMINUDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67156 | /* 190060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDYrm), |
| 67157 | /* 190063 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67158 | /* 190065 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67159 | /* 190067 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67160 | /* 190071 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67161 | /* 190076 */ GIR_RootConstrainSelectedInstOperands, |
| 67162 | /* 190077 */ // GIR_Coverage, 23593, |
| 67163 | /* 190077 */ GIR_EraseRootFromParent_Done, |
| 67164 | /* 190078 */ // Label 4263: @190078 |
| 67165 | /* 190078 */ GIM_Try, /*On fail goto*//*Label 4264*/ GIMT_Encode4(190140), // Rule ID 24189 // |
| 67166 | /* 190083 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67167 | /* 190086 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67168 | /* 190090 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67169 | /* 190094 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67170 | /* 190098 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67171 | /* 190101 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67172 | /* 190105 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67173 | /* 190109 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67174 | /* 190113 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67175 | /* 190115 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67176 | /* 190122 */ // (umin:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMINUDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67177 | /* 190122 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ256rm), |
| 67178 | /* 190125 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67179 | /* 190127 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67180 | /* 190129 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67181 | /* 190133 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67182 | /* 190138 */ GIR_RootConstrainSelectedInstOperands, |
| 67183 | /* 190139 */ // GIR_Coverage, 24189, |
| 67184 | /* 190139 */ GIR_EraseRootFromParent_Done, |
| 67185 | /* 190140 */ // Label 4264: @190140 |
| 67186 | /* 190140 */ GIM_Try, /*On fail goto*//*Label 4265*/ GIMT_Encode4(190202), // Rule ID 3206 // |
| 67187 | /* 190145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 67188 | /* 190148 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67189 | /* 190152 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67190 | /* 190156 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67191 | /* 190160 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67192 | /* 190164 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67193 | /* 190167 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67194 | /* 190171 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67195 | /* 190175 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67196 | /* 190177 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67197 | /* 190184 */ // (umin:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67198 | /* 190184 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDYrm), |
| 67199 | /* 190187 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67200 | /* 190189 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67201 | /* 190191 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67202 | /* 190195 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67203 | /* 190200 */ GIR_RootConstrainSelectedInstOperands, |
| 67204 | /* 190201 */ // GIR_Coverage, 3206, |
| 67205 | /* 190201 */ GIR_EraseRootFromParent_Done, |
| 67206 | /* 190202 */ // Label 4265: @190202 |
| 67207 | /* 190202 */ GIM_Try, /*On fail goto*//*Label 4266*/ GIMT_Encode4(190264), // Rule ID 5648 // |
| 67208 | /* 190207 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67209 | /* 190210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67210 | /* 190214 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67211 | /* 190218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67212 | /* 190222 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67213 | /* 190226 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67214 | /* 190229 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67215 | /* 190233 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67216 | /* 190237 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67217 | /* 190239 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67218 | /* 190246 */ // (umin:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67219 | /* 190246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ256rm), |
| 67220 | /* 190249 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67221 | /* 190251 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67222 | /* 190253 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67223 | /* 190257 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67224 | /* 190262 */ GIR_RootConstrainSelectedInstOperands, |
| 67225 | /* 190263 */ // GIR_Coverage, 5648, |
| 67226 | /* 190263 */ GIR_EraseRootFromParent_Done, |
| 67227 | /* 190264 */ // Label 4266: @190264 |
| 67228 | /* 190264 */ GIM_Try, /*On fail goto*//*Label 4267*/ GIMT_Encode4(190291), // Rule ID 3205 // |
| 67229 | /* 190269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 67230 | /* 190272 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67231 | /* 190276 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67232 | /* 190280 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67233 | /* 190284 */ // (umin:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMINUDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 67234 | /* 190284 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDYrr), |
| 67235 | /* 190289 */ GIR_RootConstrainSelectedInstOperands, |
| 67236 | /* 190290 */ // GIR_Coverage, 3205, |
| 67237 | /* 190290 */ GIR_Done, |
| 67238 | /* 190291 */ // Label 4267: @190291 |
| 67239 | /* 190291 */ GIM_Try, /*On fail goto*//*Label 4268*/ GIMT_Encode4(190318), // Rule ID 5645 // |
| 67240 | /* 190296 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67241 | /* 190299 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67242 | /* 190303 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67243 | /* 190307 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67244 | /* 190311 */ // (umin:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMINUDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 67245 | /* 190311 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDZ256rr), |
| 67246 | /* 190316 */ GIR_RootConstrainSelectedInstOperands, |
| 67247 | /* 190317 */ // GIR_Coverage, 5645, |
| 67248 | /* 190317 */ GIR_Done, |
| 67249 | /* 190318 */ // Label 4268: @190318 |
| 67250 | /* 190318 */ GIM_Reject, |
| 67251 | /* 190319 */ // Label 4262: @190319 |
| 67252 | /* 190319 */ GIM_Reject, |
| 67253 | /* 190320 */ // Label 4228: @190320 |
| 67254 | /* 190320 */ GIM_Try, /*On fail goto*//*Label 4269*/ GIMT_Encode4(190475), |
| 67255 | /* 190325 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 67256 | /* 190328 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 67257 | /* 190331 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67258 | /* 190335 */ GIM_Try, /*On fail goto*//*Label 4270*/ GIMT_Encode4(190393), // Rule ID 24201 // |
| 67259 | /* 190340 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67260 | /* 190343 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67261 | /* 190347 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67262 | /* 190351 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67263 | /* 190354 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67264 | /* 190358 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67265 | /* 190362 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67266 | /* 190366 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67267 | /* 190368 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67268 | /* 190375 */ // (umin:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMINUQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67269 | /* 190375 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrm), |
| 67270 | /* 190378 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67271 | /* 190380 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67272 | /* 190382 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67273 | /* 190386 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67274 | /* 190391 */ GIR_RootConstrainSelectedInstOperands, |
| 67275 | /* 190392 */ // GIR_Coverage, 24201, |
| 67276 | /* 190392 */ GIR_EraseRootFromParent_Done, |
| 67277 | /* 190393 */ // Label 4270: @190393 |
| 67278 | /* 190393 */ GIM_Try, /*On fail goto*//*Label 4271*/ GIMT_Encode4(190451), // Rule ID 5666 // |
| 67279 | /* 190398 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67280 | /* 190401 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67281 | /* 190405 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67282 | /* 190409 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67283 | /* 190413 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67284 | /* 190416 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67285 | /* 190420 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67286 | /* 190424 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67287 | /* 190426 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67288 | /* 190433 */ // (umin:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67289 | /* 190433 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrm), |
| 67290 | /* 190436 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67291 | /* 190438 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67292 | /* 190440 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67293 | /* 190444 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67294 | /* 190449 */ GIR_RootConstrainSelectedInstOperands, |
| 67295 | /* 190450 */ // GIR_Coverage, 5666, |
| 67296 | /* 190450 */ GIR_EraseRootFromParent_Done, |
| 67297 | /* 190451 */ // Label 4271: @190451 |
| 67298 | /* 190451 */ GIM_Try, /*On fail goto*//*Label 4272*/ GIMT_Encode4(190474), // Rule ID 5663 // |
| 67299 | /* 190456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67300 | /* 190459 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67301 | /* 190463 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67302 | /* 190467 */ // (umin:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMINUQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 67303 | /* 190467 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUQZrr), |
| 67304 | /* 190472 */ GIR_RootConstrainSelectedInstOperands, |
| 67305 | /* 190473 */ // GIR_Coverage, 5663, |
| 67306 | /* 190473 */ GIR_Done, |
| 67307 | /* 190474 */ // Label 4272: @190474 |
| 67308 | /* 190474 */ GIM_Reject, |
| 67309 | /* 190475 */ // Label 4269: @190475 |
| 67310 | /* 190475 */ GIM_Reject, |
| 67311 | /* 190476 */ // Label 4229: @190476 |
| 67312 | /* 190476 */ GIM_Try, /*On fail goto*//*Label 4273*/ GIMT_Encode4(190817), |
| 67313 | /* 190481 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 67314 | /* 190484 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 67315 | /* 190487 */ GIM_Try, /*On fail goto*//*Label 4274*/ GIMT_Encode4(190549), // Rule ID 23544 // |
| 67316 | /* 190492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67317 | /* 190495 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67318 | /* 190499 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67319 | /* 190503 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67320 | /* 190507 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67321 | /* 190510 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67322 | /* 190514 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67323 | /* 190518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67324 | /* 190522 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67325 | /* 190524 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67326 | /* 190531 */ // (umin:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPMINUBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67327 | /* 190531 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBrm), |
| 67328 | /* 190534 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67329 | /* 190536 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67330 | /* 190538 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67331 | /* 190542 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67332 | /* 190547 */ GIR_RootConstrainSelectedInstOperands, |
| 67333 | /* 190548 */ // GIR_Coverage, 23544, |
| 67334 | /* 190548 */ GIR_EraseRootFromParent_Done, |
| 67335 | /* 190549 */ // Label 4274: @190549 |
| 67336 | /* 190549 */ GIM_Try, /*On fail goto*//*Label 4275*/ GIMT_Encode4(190611), // Rule ID 24171 // |
| 67337 | /* 190554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67338 | /* 190557 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67339 | /* 190561 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67340 | /* 190565 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67341 | /* 190569 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67342 | /* 190572 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67343 | /* 190576 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67344 | /* 190580 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67345 | /* 190584 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67346 | /* 190586 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67347 | /* 190593 */ // (umin:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPMINUBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67348 | /* 190593 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ128rm), |
| 67349 | /* 190596 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67350 | /* 190598 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67351 | /* 190600 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67352 | /* 190604 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67353 | /* 190609 */ GIR_RootConstrainSelectedInstOperands, |
| 67354 | /* 190610 */ // GIR_Coverage, 24171, |
| 67355 | /* 190610 */ GIR_EraseRootFromParent_Done, |
| 67356 | /* 190611 */ // Label 4275: @190611 |
| 67357 | /* 190611 */ GIM_Try, /*On fail goto*//*Label 4276*/ GIMT_Encode4(190673), // Rule ID 2637 // |
| 67358 | /* 190616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67359 | /* 190619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67360 | /* 190623 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67361 | /* 190627 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67362 | /* 190631 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67363 | /* 190635 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67364 | /* 190638 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67365 | /* 190642 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67366 | /* 190646 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67367 | /* 190648 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67368 | /* 190655 */ // (umin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67369 | /* 190655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBrm), |
| 67370 | /* 190658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67371 | /* 190660 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67372 | /* 190662 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67373 | /* 190666 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67374 | /* 190671 */ GIR_RootConstrainSelectedInstOperands, |
| 67375 | /* 190672 */ // GIR_Coverage, 2637, |
| 67376 | /* 190672 */ GIR_EraseRootFromParent_Done, |
| 67377 | /* 190673 */ // Label 4276: @190673 |
| 67378 | /* 190673 */ GIM_Try, /*On fail goto*//*Label 4277*/ GIMT_Encode4(190735), // Rule ID 5615 // |
| 67379 | /* 190678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67380 | /* 190681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67381 | /* 190685 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67382 | /* 190689 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67383 | /* 190693 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67384 | /* 190697 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67385 | /* 190700 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67386 | /* 190704 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67387 | /* 190708 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67388 | /* 190710 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67389 | /* 190717 */ // (umin:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67390 | /* 190717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ128rm), |
| 67391 | /* 190720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67392 | /* 190722 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67393 | /* 190724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67394 | /* 190728 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67395 | /* 190733 */ GIR_RootConstrainSelectedInstOperands, |
| 67396 | /* 190734 */ // GIR_Coverage, 5615, |
| 67397 | /* 190734 */ GIR_EraseRootFromParent_Done, |
| 67398 | /* 190735 */ // Label 4277: @190735 |
| 67399 | /* 190735 */ GIM_Try, /*On fail goto*//*Label 4278*/ GIMT_Encode4(190762), // Rule ID 2636 // |
| 67400 | /* 190740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 67401 | /* 190743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67402 | /* 190747 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67403 | /* 190751 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67404 | /* 190755 */ // (umin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPMINUBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 67405 | /* 190755 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBrr), |
| 67406 | /* 190760 */ GIR_RootConstrainSelectedInstOperands, |
| 67407 | /* 190761 */ // GIR_Coverage, 2636, |
| 67408 | /* 190761 */ GIR_Done, |
| 67409 | /* 190762 */ // Label 4278: @190762 |
| 67410 | /* 190762 */ GIM_Try, /*On fail goto*//*Label 4279*/ GIMT_Encode4(190789), // Rule ID 2638 // |
| 67411 | /* 190767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 67412 | /* 190770 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67413 | /* 190774 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67414 | /* 190778 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67415 | /* 190782 */ // (umin:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PMINUBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 67416 | /* 190782 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMINUBrr), |
| 67417 | /* 190787 */ GIR_RootConstrainSelectedInstOperands, |
| 67418 | /* 190788 */ // GIR_Coverage, 2638, |
| 67419 | /* 190788 */ GIR_Done, |
| 67420 | /* 190789 */ // Label 4279: @190789 |
| 67421 | /* 190789 */ GIM_Try, /*On fail goto*//*Label 4280*/ GIMT_Encode4(190816), // Rule ID 5612 // |
| 67422 | /* 190794 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67423 | /* 190797 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67424 | /* 190801 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67425 | /* 190805 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67426 | /* 190809 */ // (umin:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPMINUBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 67427 | /* 190809 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ128rr), |
| 67428 | /* 190814 */ GIR_RootConstrainSelectedInstOperands, |
| 67429 | /* 190815 */ // GIR_Coverage, 5612, |
| 67430 | /* 190815 */ GIR_Done, |
| 67431 | /* 190816 */ // Label 4280: @190816 |
| 67432 | /* 190816 */ GIM_Reject, |
| 67433 | /* 190817 */ // Label 4273: @190817 |
| 67434 | /* 190817 */ GIM_Reject, |
| 67435 | /* 190818 */ // Label 4230: @190818 |
| 67436 | /* 190818 */ GIM_Try, /*On fail goto*//*Label 4281*/ GIMT_Encode4(191132), |
| 67437 | /* 190823 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 67438 | /* 190826 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 67439 | /* 190829 */ GIM_Try, /*On fail goto*//*Label 4282*/ GIMT_Encode4(190891), // Rule ID 23598 // |
| 67440 | /* 190834 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67441 | /* 190837 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67442 | /* 190841 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67443 | /* 190845 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67444 | /* 190849 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67445 | /* 190852 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67446 | /* 190856 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67447 | /* 190860 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67448 | /* 190864 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67449 | /* 190866 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67450 | /* 190873 */ // (umin:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMINUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67451 | /* 190873 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWYrm), |
| 67452 | /* 190876 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67453 | /* 190878 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67454 | /* 190880 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67455 | /* 190884 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67456 | /* 190889 */ GIR_RootConstrainSelectedInstOperands, |
| 67457 | /* 190890 */ // GIR_Coverage, 23598, |
| 67458 | /* 190890 */ GIR_EraseRootFromParent_Done, |
| 67459 | /* 190891 */ // Label 4282: @190891 |
| 67460 | /* 190891 */ GIM_Try, /*On fail goto*//*Label 4283*/ GIMT_Encode4(190953), // Rule ID 24177 // |
| 67461 | /* 190896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67462 | /* 190899 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67463 | /* 190903 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67464 | /* 190907 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67465 | /* 190911 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67466 | /* 190914 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67467 | /* 190918 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67468 | /* 190922 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67469 | /* 190926 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67470 | /* 190928 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67471 | /* 190935 */ // (umin:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMINUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67472 | /* 190935 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ256rm), |
| 67473 | /* 190938 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67474 | /* 190940 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67475 | /* 190942 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67476 | /* 190946 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67477 | /* 190951 */ GIR_RootConstrainSelectedInstOperands, |
| 67478 | /* 190952 */ // GIR_Coverage, 24177, |
| 67479 | /* 190952 */ GIR_EraseRootFromParent_Done, |
| 67480 | /* 190953 */ // Label 4283: @190953 |
| 67481 | /* 190953 */ GIM_Try, /*On fail goto*//*Label 4284*/ GIMT_Encode4(191015), // Rule ID 3216 // |
| 67482 | /* 190958 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67483 | /* 190961 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67484 | /* 190965 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67485 | /* 190969 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67486 | /* 190973 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67487 | /* 190977 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67488 | /* 190980 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67489 | /* 190984 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67490 | /* 190988 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67491 | /* 190990 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67492 | /* 190997 */ // (umin:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67493 | /* 190997 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWYrm), |
| 67494 | /* 191000 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67495 | /* 191002 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67496 | /* 191004 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67497 | /* 191008 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67498 | /* 191013 */ GIR_RootConstrainSelectedInstOperands, |
| 67499 | /* 191014 */ // GIR_Coverage, 3216, |
| 67500 | /* 191014 */ GIR_EraseRootFromParent_Done, |
| 67501 | /* 191015 */ // Label 4284: @191015 |
| 67502 | /* 191015 */ GIM_Try, /*On fail goto*//*Label 4285*/ GIMT_Encode4(191077), // Rule ID 5627 // |
| 67503 | /* 191020 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67504 | /* 191023 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67505 | /* 191027 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67506 | /* 191031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67507 | /* 191035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67508 | /* 191039 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67509 | /* 191042 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67510 | /* 191046 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67511 | /* 191050 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67512 | /* 191052 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67513 | /* 191059 */ // (umin:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67514 | /* 191059 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ256rm), |
| 67515 | /* 191062 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67516 | /* 191064 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67517 | /* 191066 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67518 | /* 191070 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67519 | /* 191075 */ GIR_RootConstrainSelectedInstOperands, |
| 67520 | /* 191076 */ // GIR_Coverage, 5627, |
| 67521 | /* 191076 */ GIR_EraseRootFromParent_Done, |
| 67522 | /* 191077 */ // Label 4285: @191077 |
| 67523 | /* 191077 */ GIM_Try, /*On fail goto*//*Label 4286*/ GIMT_Encode4(191104), // Rule ID 3215 // |
| 67524 | /* 191082 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67525 | /* 191085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67526 | /* 191089 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67527 | /* 191093 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67528 | /* 191097 */ // (umin:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMINUWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 67529 | /* 191097 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWYrr), |
| 67530 | /* 191102 */ GIR_RootConstrainSelectedInstOperands, |
| 67531 | /* 191103 */ // GIR_Coverage, 3215, |
| 67532 | /* 191103 */ GIR_Done, |
| 67533 | /* 191104 */ // Label 4286: @191104 |
| 67534 | /* 191104 */ GIM_Try, /*On fail goto*//*Label 4287*/ GIMT_Encode4(191131), // Rule ID 5624 // |
| 67535 | /* 191109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67536 | /* 191112 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67537 | /* 191116 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67538 | /* 191120 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67539 | /* 191124 */ // (umin:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMINUWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 67540 | /* 191124 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWZ256rr), |
| 67541 | /* 191129 */ GIR_RootConstrainSelectedInstOperands, |
| 67542 | /* 191130 */ // GIR_Coverage, 5624, |
| 67543 | /* 191130 */ GIR_Done, |
| 67544 | /* 191131 */ // Label 4287: @191131 |
| 67545 | /* 191131 */ GIM_Reject, |
| 67546 | /* 191132 */ // Label 4281: @191132 |
| 67547 | /* 191132 */ GIM_Reject, |
| 67548 | /* 191133 */ // Label 4231: @191133 |
| 67549 | /* 191133 */ GIM_Try, /*On fail goto*//*Label 4288*/ GIMT_Encode4(191288), |
| 67550 | /* 191138 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 67551 | /* 191141 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 67552 | /* 191144 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67553 | /* 191148 */ GIM_Try, /*On fail goto*//*Label 4289*/ GIMT_Encode4(191206), // Rule ID 24183 // |
| 67554 | /* 191153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67555 | /* 191156 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67556 | /* 191160 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67557 | /* 191164 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67558 | /* 191167 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67559 | /* 191171 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67560 | /* 191175 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67561 | /* 191179 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67562 | /* 191181 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67563 | /* 191188 */ // (umin:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMINUDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67564 | /* 191188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZrm), |
| 67565 | /* 191191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67566 | /* 191193 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67567 | /* 191195 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67568 | /* 191199 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67569 | /* 191204 */ GIR_RootConstrainSelectedInstOperands, |
| 67570 | /* 191205 */ // GIR_Coverage, 24183, |
| 67571 | /* 191205 */ GIR_EraseRootFromParent_Done, |
| 67572 | /* 191206 */ // Label 4289: @191206 |
| 67573 | /* 191206 */ GIM_Try, /*On fail goto*//*Label 4290*/ GIMT_Encode4(191264), // Rule ID 5639 // |
| 67574 | /* 191211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67575 | /* 191214 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67576 | /* 191218 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67577 | /* 191222 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67578 | /* 191226 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67579 | /* 191229 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67580 | /* 191233 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67581 | /* 191237 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67582 | /* 191239 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67583 | /* 191246 */ // (umin:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67584 | /* 191246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUDZrm), |
| 67585 | /* 191249 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67586 | /* 191251 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67587 | /* 191253 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67588 | /* 191257 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67589 | /* 191262 */ GIR_RootConstrainSelectedInstOperands, |
| 67590 | /* 191263 */ // GIR_Coverage, 5639, |
| 67591 | /* 191263 */ GIR_EraseRootFromParent_Done, |
| 67592 | /* 191264 */ // Label 4290: @191264 |
| 67593 | /* 191264 */ GIM_Try, /*On fail goto*//*Label 4291*/ GIMT_Encode4(191287), // Rule ID 5636 // |
| 67594 | /* 191269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 67595 | /* 191272 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67596 | /* 191276 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67597 | /* 191280 */ // (umin:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMINUDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 67598 | /* 191280 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUDZrr), |
| 67599 | /* 191285 */ GIR_RootConstrainSelectedInstOperands, |
| 67600 | /* 191286 */ // GIR_Coverage, 5636, |
| 67601 | /* 191286 */ GIR_Done, |
| 67602 | /* 191287 */ // Label 4291: @191287 |
| 67603 | /* 191287 */ GIM_Reject, |
| 67604 | /* 191288 */ // Label 4288: @191288 |
| 67605 | /* 191288 */ GIM_Reject, |
| 67606 | /* 191289 */ // Label 4232: @191289 |
| 67607 | /* 191289 */ GIM_Try, /*On fail goto*//*Label 4292*/ GIMT_Encode4(191603), |
| 67608 | /* 191294 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 67609 | /* 191297 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 67610 | /* 191300 */ GIM_Try, /*On fail goto*//*Label 4293*/ GIMT_Encode4(191362), // Rule ID 23546 // |
| 67611 | /* 191305 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67612 | /* 191308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67613 | /* 191312 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67614 | /* 191316 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67615 | /* 191320 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67616 | /* 191323 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67617 | /* 191327 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67618 | /* 191331 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67619 | /* 191335 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67620 | /* 191337 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67621 | /* 191344 */ // (umin:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPMINUBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67622 | /* 191344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBYrm), |
| 67623 | /* 191347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67624 | /* 191349 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67625 | /* 191351 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67626 | /* 191355 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67627 | /* 191360 */ GIR_RootConstrainSelectedInstOperands, |
| 67628 | /* 191361 */ // GIR_Coverage, 23546, |
| 67629 | /* 191361 */ GIR_EraseRootFromParent_Done, |
| 67630 | /* 191362 */ // Label 4293: @191362 |
| 67631 | /* 191362 */ GIM_Try, /*On fail goto*//*Label 4294*/ GIMT_Encode4(191424), // Rule ID 24168 // |
| 67632 | /* 191367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67633 | /* 191370 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67634 | /* 191374 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67635 | /* 191378 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67636 | /* 191382 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67637 | /* 191385 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67638 | /* 191389 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67639 | /* 191393 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67640 | /* 191397 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67641 | /* 191399 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67642 | /* 191406 */ // (umin:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPMINUBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67643 | /* 191406 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ256rm), |
| 67644 | /* 191409 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67645 | /* 191411 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67646 | /* 191413 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67647 | /* 191417 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67648 | /* 191422 */ GIR_RootConstrainSelectedInstOperands, |
| 67649 | /* 191423 */ // GIR_Coverage, 24168, |
| 67650 | /* 191423 */ GIR_EraseRootFromParent_Done, |
| 67651 | /* 191424 */ // Label 4294: @191424 |
| 67652 | /* 191424 */ GIM_Try, /*On fail goto*//*Label 4295*/ GIMT_Encode4(191486), // Rule ID 2641 // |
| 67653 | /* 191429 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67654 | /* 191432 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67655 | /* 191436 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67656 | /* 191440 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67657 | /* 191444 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67658 | /* 191448 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67659 | /* 191451 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67660 | /* 191455 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67661 | /* 191459 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67662 | /* 191461 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67663 | /* 191468 */ // (umin:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67664 | /* 191468 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBYrm), |
| 67665 | /* 191471 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67666 | /* 191473 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67667 | /* 191475 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67668 | /* 191479 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67669 | /* 191484 */ GIR_RootConstrainSelectedInstOperands, |
| 67670 | /* 191485 */ // GIR_Coverage, 2641, |
| 67671 | /* 191485 */ GIR_EraseRootFromParent_Done, |
| 67672 | /* 191486 */ // Label 4295: @191486 |
| 67673 | /* 191486 */ GIM_Try, /*On fail goto*//*Label 4296*/ GIMT_Encode4(191548), // Rule ID 5609 // |
| 67674 | /* 191491 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67675 | /* 191494 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67676 | /* 191498 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67677 | /* 191502 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67678 | /* 191506 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67679 | /* 191510 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67680 | /* 191513 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67681 | /* 191517 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67682 | /* 191521 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67683 | /* 191523 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67684 | /* 191530 */ // (umin:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67685 | /* 191530 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ256rm), |
| 67686 | /* 191533 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67687 | /* 191535 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67688 | /* 191537 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67689 | /* 191541 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67690 | /* 191546 */ GIR_RootConstrainSelectedInstOperands, |
| 67691 | /* 191547 */ // GIR_Coverage, 5609, |
| 67692 | /* 191547 */ GIR_EraseRootFromParent_Done, |
| 67693 | /* 191548 */ // Label 4296: @191548 |
| 67694 | /* 191548 */ GIM_Try, /*On fail goto*//*Label 4297*/ GIMT_Encode4(191575), // Rule ID 2640 // |
| 67695 | /* 191553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 67696 | /* 191556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67697 | /* 191560 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67698 | /* 191564 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 67699 | /* 191568 */ // (umin:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPMINUBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 67700 | /* 191568 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBYrr), |
| 67701 | /* 191573 */ GIR_RootConstrainSelectedInstOperands, |
| 67702 | /* 191574 */ // GIR_Coverage, 2640, |
| 67703 | /* 191574 */ GIR_Done, |
| 67704 | /* 191575 */ // Label 4297: @191575 |
| 67705 | /* 191575 */ GIM_Try, /*On fail goto*//*Label 4298*/ GIMT_Encode4(191602), // Rule ID 5606 // |
| 67706 | /* 191580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 67707 | /* 191583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67708 | /* 191587 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67709 | /* 191591 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 67710 | /* 191595 */ // (umin:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPMINUBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 67711 | /* 191595 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBZ256rr), |
| 67712 | /* 191600 */ GIR_RootConstrainSelectedInstOperands, |
| 67713 | /* 191601 */ // GIR_Coverage, 5606, |
| 67714 | /* 191601 */ GIR_Done, |
| 67715 | /* 191602 */ // Label 4298: @191602 |
| 67716 | /* 191602 */ GIM_Reject, |
| 67717 | /* 191603 */ // Label 4292: @191603 |
| 67718 | /* 191603 */ GIM_Reject, |
| 67719 | /* 191604 */ // Label 4233: @191604 |
| 67720 | /* 191604 */ GIM_Try, /*On fail goto*//*Label 4299*/ GIMT_Encode4(191759), |
| 67721 | /* 191609 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 67722 | /* 191612 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 67723 | /* 191615 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67724 | /* 191619 */ GIM_Try, /*On fail goto*//*Label 4300*/ GIMT_Encode4(191677), // Rule ID 24174 // |
| 67725 | /* 191624 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67726 | /* 191627 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67727 | /* 191631 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67728 | /* 191635 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67729 | /* 191638 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67730 | /* 191642 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67731 | /* 191646 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67732 | /* 191650 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67733 | /* 191652 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67734 | /* 191659 */ // (umin:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMINUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67735 | /* 191659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZrm), |
| 67736 | /* 191662 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67737 | /* 191664 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67738 | /* 191666 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67739 | /* 191670 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67740 | /* 191675 */ GIR_RootConstrainSelectedInstOperands, |
| 67741 | /* 191676 */ // GIR_Coverage, 24174, |
| 67742 | /* 191676 */ GIR_EraseRootFromParent_Done, |
| 67743 | /* 191677 */ // Label 4300: @191677 |
| 67744 | /* 191677 */ GIM_Try, /*On fail goto*//*Label 4301*/ GIMT_Encode4(191735), // Rule ID 5621 // |
| 67745 | /* 191682 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67746 | /* 191685 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67747 | /* 191689 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67748 | /* 191693 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67749 | /* 191697 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67750 | /* 191700 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67751 | /* 191704 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67752 | /* 191708 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67753 | /* 191710 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67754 | /* 191717 */ // (umin:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67755 | /* 191717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUWZrm), |
| 67756 | /* 191720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67757 | /* 191722 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67758 | /* 191724 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67759 | /* 191728 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67760 | /* 191733 */ GIR_RootConstrainSelectedInstOperands, |
| 67761 | /* 191734 */ // GIR_Coverage, 5621, |
| 67762 | /* 191734 */ GIR_EraseRootFromParent_Done, |
| 67763 | /* 191735 */ // Label 4301: @191735 |
| 67764 | /* 191735 */ GIM_Try, /*On fail goto*//*Label 4302*/ GIMT_Encode4(191758), // Rule ID 5618 // |
| 67765 | /* 191740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67766 | /* 191743 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67767 | /* 191747 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67768 | /* 191751 */ // (umin:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMINUWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 67769 | /* 191751 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUWZrr), |
| 67770 | /* 191756 */ GIR_RootConstrainSelectedInstOperands, |
| 67771 | /* 191757 */ // GIR_Coverage, 5618, |
| 67772 | /* 191757 */ GIR_Done, |
| 67773 | /* 191758 */ // Label 4302: @191758 |
| 67774 | /* 191758 */ GIM_Reject, |
| 67775 | /* 191759 */ // Label 4299: @191759 |
| 67776 | /* 191759 */ GIM_Reject, |
| 67777 | /* 191760 */ // Label 4234: @191760 |
| 67778 | /* 191760 */ GIM_Try, /*On fail goto*//*Label 4303*/ GIMT_Encode4(191915), |
| 67779 | /* 191765 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 67780 | /* 191768 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 67781 | /* 191771 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67782 | /* 191775 */ GIM_Try, /*On fail goto*//*Label 4304*/ GIMT_Encode4(191833), // Rule ID 24165 // |
| 67783 | /* 191780 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67784 | /* 191783 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67785 | /* 191787 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67786 | /* 191791 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67787 | /* 191794 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67788 | /* 191798 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67789 | /* 191802 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67790 | /* 191806 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67791 | /* 191808 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67792 | /* 191815 */ // (umin:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPMINUBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67793 | /* 191815 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZrm), |
| 67794 | /* 191818 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67795 | /* 191820 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67796 | /* 191822 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67797 | /* 191826 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67798 | /* 191831 */ GIR_RootConstrainSelectedInstOperands, |
| 67799 | /* 191832 */ // GIR_Coverage, 24165, |
| 67800 | /* 191832 */ GIR_EraseRootFromParent_Done, |
| 67801 | /* 191833 */ // Label 4304: @191833 |
| 67802 | /* 191833 */ GIM_Try, /*On fail goto*//*Label 4305*/ GIMT_Encode4(191891), // Rule ID 5603 // |
| 67803 | /* 191838 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67804 | /* 191841 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67805 | /* 191845 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67806 | /* 191849 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67807 | /* 191853 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67808 | /* 191856 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67809 | /* 191860 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67810 | /* 191864 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67811 | /* 191866 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67812 | /* 191873 */ // (umin:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMINUBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67813 | /* 191873 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMINUBZrm), |
| 67814 | /* 191876 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67815 | /* 191878 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67816 | /* 191880 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67817 | /* 191884 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67818 | /* 191889 */ GIR_RootConstrainSelectedInstOperands, |
| 67819 | /* 191890 */ // GIR_Coverage, 5603, |
| 67820 | /* 191890 */ GIR_EraseRootFromParent_Done, |
| 67821 | /* 191891 */ // Label 4305: @191891 |
| 67822 | /* 191891 */ GIM_Try, /*On fail goto*//*Label 4306*/ GIMT_Encode4(191914), // Rule ID 5600 // |
| 67823 | /* 191896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 67824 | /* 191899 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67825 | /* 191903 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 67826 | /* 191907 */ // (umin:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPMINUBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 67827 | /* 191907 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMINUBZrr), |
| 67828 | /* 191912 */ GIR_RootConstrainSelectedInstOperands, |
| 67829 | /* 191913 */ // GIR_Coverage, 5600, |
| 67830 | /* 191913 */ GIR_Done, |
| 67831 | /* 191914 */ // Label 4306: @191914 |
| 67832 | /* 191914 */ GIM_Reject, |
| 67833 | /* 191915 */ // Label 4303: @191915 |
| 67834 | /* 191915 */ GIM_Reject, |
| 67835 | /* 191916 */ // Label 4235: @191916 |
| 67836 | /* 191916 */ GIM_Reject, |
| 67837 | /* 191917 */ // Label 58: @191917 |
| 67838 | /* 191917 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4319*/ GIMT_Encode4(195237), |
| 67839 | /* 191928 */ /*GILLT_v2s64*//*Label 4307*/ GIMT_Encode4(191996), GIMT_Encode4(0), |
| 67840 | /* 191936 */ /*GILLT_v4s32*//*Label 4308*/ GIMT_Encode4(192325), |
| 67841 | /* 191940 */ /*GILLT_v4s64*//*Label 4309*/ GIMT_Encode4(192667), GIMT_Encode4(0), |
| 67842 | /* 191948 */ /*GILLT_v8s16*//*Label 4310*/ GIMT_Encode4(192984), |
| 67843 | /* 191952 */ /*GILLT_v8s32*//*Label 4311*/ GIMT_Encode4(193326), |
| 67844 | /* 191956 */ /*GILLT_v8s64*//*Label 4312*/ GIMT_Encode4(193641), GIMT_Encode4(0), |
| 67845 | /* 191964 */ /*GILLT_v16s8*//*Label 4313*/ GIMT_Encode4(193797), |
| 67846 | /* 191968 */ /*GILLT_v16s16*//*Label 4314*/ GIMT_Encode4(194139), |
| 67847 | /* 191972 */ /*GILLT_v16s32*//*Label 4315*/ GIMT_Encode4(194454), GIMT_Encode4(0), |
| 67848 | /* 191980 */ /*GILLT_v32s8*//*Label 4316*/ GIMT_Encode4(194610), |
| 67849 | /* 191984 */ /*GILLT_v32s16*//*Label 4317*/ GIMT_Encode4(194925), GIMT_Encode4(0), |
| 67850 | /* 191992 */ /*GILLT_v64s8*//*Label 4318*/ GIMT_Encode4(195081), |
| 67851 | /* 191996 */ // Label 4307: @191996 |
| 67852 | /* 191996 */ GIM_Try, /*On fail goto*//*Label 4320*/ GIMT_Encode4(192324), |
| 67853 | /* 192001 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 67854 | /* 192004 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 67855 | /* 192007 */ GIM_Try, /*On fail goto*//*Label 4321*/ GIMT_Encode4(192069), // Rule ID 24105 // |
| 67856 | /* 192012 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67857 | /* 192015 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67858 | /* 192019 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67859 | /* 192023 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67860 | /* 192027 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67861 | /* 192030 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67862 | /* 192034 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67863 | /* 192038 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67864 | /* 192042 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67865 | /* 192044 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67866 | /* 192051 */ // (umax:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v2i64] }:$src1) => (VPMAXUQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67867 | /* 192051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ128rm), |
| 67868 | /* 192054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67869 | /* 192056 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67870 | /* 192058 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67871 | /* 192062 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67872 | /* 192067 */ GIR_RootConstrainSelectedInstOperands, |
| 67873 | /* 192068 */ // GIR_Coverage, 24105, |
| 67874 | /* 192068 */ GIR_EraseRootFromParent_Done, |
| 67875 | /* 192069 */ // Label 4321: @192069 |
| 67876 | /* 192069 */ GIM_Try, /*On fail goto*//*Label 4322*/ GIMT_Encode4(192131), // Rule ID 5504 // |
| 67877 | /* 192074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67878 | /* 192077 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67879 | /* 192081 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67880 | /* 192085 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 67881 | /* 192089 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67882 | /* 192093 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67883 | /* 192096 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67884 | /* 192100 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67885 | /* 192104 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67886 | /* 192106 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67887 | /* 192113 */ // (umax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUQZ128rm:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67888 | /* 192113 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ128rm), |
| 67889 | /* 192116 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67890 | /* 192118 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 67891 | /* 192120 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67892 | /* 192124 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67893 | /* 192129 */ GIR_RootConstrainSelectedInstOperands, |
| 67894 | /* 192130 */ // GIR_Coverage, 5504, |
| 67895 | /* 192130 */ GIR_EraseRootFromParent_Done, |
| 67896 | /* 192131 */ // Label 4322: @192131 |
| 67897 | /* 192131 */ GIM_Try, /*On fail goto*//*Label 4323*/ GIMT_Encode4(192158), // Rule ID 5501 // |
| 67898 | /* 192136 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67899 | /* 192139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67900 | /* 192143 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67901 | /* 192147 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67902 | /* 192151 */ // (umax:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) => (VPMAXUQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1, VR128X:{ *:[v2i64] }:$src2) |
| 67903 | /* 192151 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ128rr), |
| 67904 | /* 192156 */ GIR_RootConstrainSelectedInstOperands, |
| 67905 | /* 192157 */ // GIR_Coverage, 5501, |
| 67906 | /* 192157 */ GIR_Done, |
| 67907 | /* 192158 */ // Label 4323: @192158 |
| 67908 | /* 192158 */ GIM_Try, /*On fail goto*//*Label 4324*/ GIMT_Encode4(192323), // Rule ID 20011 // |
| 67909 | /* 192163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 67910 | /* 192166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 67911 | /* 192170 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67912 | /* 192174 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67913 | /* 192178 */ // (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] }) |
| 67914 | /* 192178 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 67915 | /* 192181 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 67916 | /* 192185 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 67917 | /* 192190 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 67918 | /* 192192 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 67919 | /* 192195 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 67920 | /* 192199 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 67921 | /* 192204 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 67922 | /* 192207 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 67923 | /* 192211 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/9, |
| 67924 | /* 192214 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 67925 | /* 192219 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67926 | /* 192224 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 67927 | /* 192229 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 67928 | /* 192232 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 67929 | /* 192236 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 67930 | /* 192241 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 67931 | /* 192243 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 67932 | /* 192246 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 67933 | /* 192250 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 67934 | /* 192255 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 67935 | /* 192258 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 67936 | /* 192262 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 67937 | /* 192265 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 67938 | /* 192270 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67939 | /* 192275 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 67940 | /* 192280 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 67941 | /* 192283 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrr), |
| 67942 | /* 192287 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 67943 | /* 192292 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 67944 | /* 192295 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 67945 | /* 192298 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 67946 | /* 192300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 67947 | /* 192303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67948 | /* 192305 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 67949 | /* 192312 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 67950 | /* 192317 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 67951 | /* 192322 */ // GIR_Coverage, 20011, |
| 67952 | /* 192322 */ GIR_EraseRootFromParent_Done, |
| 67953 | /* 192323 */ // Label 4324: @192323 |
| 67954 | /* 192323 */ GIM_Reject, |
| 67955 | /* 192324 */ // Label 4320: @192324 |
| 67956 | /* 192324 */ GIM_Reject, |
| 67957 | /* 192325 */ // Label 4308: @192325 |
| 67958 | /* 192325 */ GIM_Try, /*On fail goto*//*Label 4325*/ GIMT_Encode4(192666), |
| 67959 | /* 192330 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 67960 | /* 192333 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 67961 | /* 192336 */ GIM_Try, /*On fail goto*//*Label 4326*/ GIMT_Encode4(192398), // Rule ID 23586 // |
| 67962 | /* 192341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 67963 | /* 192344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67964 | /* 192348 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67965 | /* 192352 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67966 | /* 192356 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67967 | /* 192359 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67968 | /* 192363 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67969 | /* 192367 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 67970 | /* 192371 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67971 | /* 192373 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67972 | /* 192380 */ // (umax:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v4i32] }:$src1) => (VPMAXUDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67973 | /* 192380 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDrm), |
| 67974 | /* 192383 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67975 | /* 192385 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67976 | /* 192387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67977 | /* 192391 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67978 | /* 192396 */ GIR_RootConstrainSelectedInstOperands, |
| 67979 | /* 192397 */ // GIR_Coverage, 23586, |
| 67980 | /* 192397 */ GIR_EraseRootFromParent_Done, |
| 67981 | /* 192398 */ // Label 4326: @192398 |
| 67982 | /* 192398 */ GIM_Try, /*On fail goto*//*Label 4327*/ GIMT_Encode4(192460), // Rule ID 24087 // |
| 67983 | /* 192403 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 67984 | /* 192406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67985 | /* 192410 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 67986 | /* 192414 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 67987 | /* 192418 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 67988 | /* 192421 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 67989 | /* 192425 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 67990 | /* 192429 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 67991 | /* 192433 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 67992 | /* 192435 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 67993 | /* 192442 */ // (umax:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v4i32] }:$src1) => (VPMAXUDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 67994 | /* 192442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ128rm), |
| 67995 | /* 192445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 67996 | /* 192447 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 67997 | /* 192449 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 67998 | /* 192453 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 67999 | /* 192458 */ GIR_RootConstrainSelectedInstOperands, |
| 68000 | /* 192459 */ // GIR_Coverage, 24087, |
| 68001 | /* 192459 */ GIR_EraseRootFromParent_Done, |
| 68002 | /* 192460 */ // Label 4327: @192460 |
| 68003 | /* 192460 */ GIM_Try, /*On fail goto*//*Label 4328*/ GIMT_Encode4(192522), // Rule ID 3192 // |
| 68004 | /* 192465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 68005 | /* 192468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68006 | /* 192472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68007 | /* 192476 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68008 | /* 192480 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68009 | /* 192484 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68010 | /* 192487 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68011 | /* 192491 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68012 | /* 192495 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68013 | /* 192497 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68014 | /* 192504 */ // (umax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDrm:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68015 | /* 192504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDrm), |
| 68016 | /* 192507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68017 | /* 192509 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68018 | /* 192511 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68019 | /* 192515 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68020 | /* 192520 */ GIR_RootConstrainSelectedInstOperands, |
| 68021 | /* 192521 */ // GIR_Coverage, 3192, |
| 68022 | /* 192521 */ GIR_EraseRootFromParent_Done, |
| 68023 | /* 192522 */ // Label 4328: @192522 |
| 68024 | /* 192522 */ GIM_Try, /*On fail goto*//*Label 4329*/ GIMT_Encode4(192584), // Rule ID 5477 // |
| 68025 | /* 192527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68026 | /* 192530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68027 | /* 192534 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68028 | /* 192538 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68029 | /* 192542 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68030 | /* 192546 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68031 | /* 192549 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68032 | /* 192553 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68033 | /* 192557 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68034 | /* 192559 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68035 | /* 192566 */ // (umax:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDZ128rm:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68036 | /* 192566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ128rm), |
| 68037 | /* 192569 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68038 | /* 192571 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68039 | /* 192573 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68040 | /* 192577 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68041 | /* 192582 */ GIR_RootConstrainSelectedInstOperands, |
| 68042 | /* 192583 */ // GIR_Coverage, 5477, |
| 68043 | /* 192583 */ GIR_EraseRootFromParent_Done, |
| 68044 | /* 192584 */ // Label 4329: @192584 |
| 68045 | /* 192584 */ GIM_Try, /*On fail goto*//*Label 4330*/ GIMT_Encode4(192611), // Rule ID 3191 // |
| 68046 | /* 192589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 68047 | /* 192592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68048 | /* 192596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68049 | /* 192600 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68050 | /* 192604 */ // (umax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (VPMAXUDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 68051 | /* 192604 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDrr), |
| 68052 | /* 192609 */ GIR_RootConstrainSelectedInstOperands, |
| 68053 | /* 192610 */ // GIR_Coverage, 3191, |
| 68054 | /* 192610 */ GIR_Done, |
| 68055 | /* 192611 */ // Label 4330: @192611 |
| 68056 | /* 192611 */ GIM_Try, /*On fail goto*//*Label 4331*/ GIMT_Encode4(192638), // Rule ID 3233 // |
| 68057 | /* 192616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 68058 | /* 192619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68059 | /* 192623 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68060 | /* 192627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68061 | /* 192631 */ // (umax:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) => (PMAXUDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src1, VR128:{ *:[v4i32] }:$src2) |
| 68062 | /* 192631 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXUDrr), |
| 68063 | /* 192636 */ GIR_RootConstrainSelectedInstOperands, |
| 68064 | /* 192637 */ // GIR_Coverage, 3233, |
| 68065 | /* 192637 */ GIR_Done, |
| 68066 | /* 192638 */ // Label 4331: @192638 |
| 68067 | /* 192638 */ GIM_Try, /*On fail goto*//*Label 4332*/ GIMT_Encode4(192665), // Rule ID 5474 // |
| 68068 | /* 192643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68069 | /* 192646 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68070 | /* 192650 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68071 | /* 192654 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68072 | /* 192658 */ // (umax:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) => (VPMAXUDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1, VR128X:{ *:[v4i32] }:$src2) |
| 68073 | /* 192658 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ128rr), |
| 68074 | /* 192663 */ GIR_RootConstrainSelectedInstOperands, |
| 68075 | /* 192664 */ // GIR_Coverage, 5474, |
| 68076 | /* 192664 */ GIR_Done, |
| 68077 | /* 192665 */ // Label 4332: @192665 |
| 68078 | /* 192665 */ GIM_Reject, |
| 68079 | /* 192666 */ // Label 4325: @192666 |
| 68080 | /* 192666 */ GIM_Reject, |
| 68081 | /* 192667 */ // Label 4309: @192667 |
| 68082 | /* 192667 */ GIM_Try, /*On fail goto*//*Label 4333*/ GIMT_Encode4(192983), |
| 68083 | /* 192672 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 68084 | /* 192675 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 68085 | /* 192678 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68086 | /* 192682 */ GIM_Try, /*On fail goto*//*Label 4334*/ GIMT_Encode4(192740), // Rule ID 24099 // |
| 68087 | /* 192687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68088 | /* 192690 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68089 | /* 192694 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68090 | /* 192698 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68091 | /* 192701 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68092 | /* 192705 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68093 | /* 192709 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68094 | /* 192713 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68095 | /* 192715 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68096 | /* 192722 */ // (umax:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v4i64] }:$src1) => (VPMAXUQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68097 | /* 192722 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ256rm), |
| 68098 | /* 192725 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68099 | /* 192727 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68100 | /* 192729 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68101 | /* 192733 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68102 | /* 192738 */ GIR_RootConstrainSelectedInstOperands, |
| 68103 | /* 192739 */ // GIR_Coverage, 24099, |
| 68104 | /* 192739 */ GIR_EraseRootFromParent_Done, |
| 68105 | /* 192740 */ // Label 4334: @192740 |
| 68106 | /* 192740 */ GIM_Try, /*On fail goto*//*Label 4335*/ GIMT_Encode4(192798), // Rule ID 5495 // |
| 68107 | /* 192745 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68108 | /* 192748 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68109 | /* 192752 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68110 | /* 192756 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68111 | /* 192760 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68112 | /* 192763 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68113 | /* 192767 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68114 | /* 192771 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68115 | /* 192773 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68116 | /* 192780 */ // (umax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUQZ256rm:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68117 | /* 192780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ256rm), |
| 68118 | /* 192783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68119 | /* 192785 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68120 | /* 192787 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68121 | /* 192791 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68122 | /* 192796 */ GIR_RootConstrainSelectedInstOperands, |
| 68123 | /* 192797 */ // GIR_Coverage, 5495, |
| 68124 | /* 192797 */ GIR_EraseRootFromParent_Done, |
| 68125 | /* 192798 */ // Label 4335: @192798 |
| 68126 | /* 192798 */ GIM_Try, /*On fail goto*//*Label 4336*/ GIMT_Encode4(192821), // Rule ID 5492 // |
| 68127 | /* 192803 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68128 | /* 192806 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68129 | /* 192810 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68130 | /* 192814 */ // (umax:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) => (VPMAXUQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1, VR256X:{ *:[v4i64] }:$src2) |
| 68131 | /* 192814 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZ256rr), |
| 68132 | /* 192819 */ GIR_RootConstrainSelectedInstOperands, |
| 68133 | /* 192820 */ // GIR_Coverage, 5492, |
| 68134 | /* 192820 */ GIR_Done, |
| 68135 | /* 192821 */ // Label 4336: @192821 |
| 68136 | /* 192821 */ GIM_Try, /*On fail goto*//*Label 4337*/ GIMT_Encode4(192982), // Rule ID 20009 // |
| 68137 | /* 192826 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 68138 | /* 192829 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68139 | /* 192833 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68140 | /* 192837 */ // (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] }) |
| 68141 | /* 192837 */ GIR_MakeTempReg, /*TempRegID*/4, /*TypeID*/GILLT_v8s64, |
| 68142 | /* 192840 */ GIR_BuildMI, /*InsnID*/5, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 68143 | /* 192844 */ GIR_AddTempRegister, /*InsnID*/5, /*TempRegID*/4, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 68144 | /* 192849 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/5, |
| 68145 | /* 192851 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v8s64, |
| 68146 | /* 192854 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 68147 | /* 192858 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 68148 | /* 192863 */ GIR_AddSimpleTempRegister, /*InsnID*/4, /*TempRegID*/4, |
| 68149 | /* 192866 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/2, // src2 |
| 68150 | /* 192870 */ GIR_AddImm8, /*InsnID*/4, /*Imm*/10, |
| 68151 | /* 192873 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 68152 | /* 192878 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68153 | /* 192883 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 68154 | /* 192888 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 68155 | /* 192891 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 68156 | /* 192895 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 68157 | /* 192900 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 68158 | /* 192902 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 68159 | /* 192905 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 68160 | /* 192909 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 68161 | /* 192914 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 68162 | /* 192917 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 68163 | /* 192921 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 68164 | /* 192924 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 68165 | /* 192929 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68166 | /* 192934 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 68167 | /* 192939 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 68168 | /* 192942 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrr), |
| 68169 | /* 192946 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 68170 | /* 192951 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 68171 | /* 192954 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/3, |
| 68172 | /* 192957 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 68173 | /* 192959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 68174 | /* 192962 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68175 | /* 192964 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 68176 | /* 192971 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 68177 | /* 192976 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 68178 | /* 192981 */ // GIR_Coverage, 20009, |
| 68179 | /* 192981 */ GIR_EraseRootFromParent_Done, |
| 68180 | /* 192982 */ // Label 4337: @192982 |
| 68181 | /* 192982 */ GIM_Reject, |
| 68182 | /* 192983 */ // Label 4333: @192983 |
| 68183 | /* 192983 */ GIM_Reject, |
| 68184 | /* 192984 */ // Label 4310: @192984 |
| 68185 | /* 192984 */ GIM_Try, /*On fail goto*//*Label 4338*/ GIMT_Encode4(193325), |
| 68186 | /* 192989 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 68187 | /* 192992 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 68188 | /* 192995 */ GIM_Try, /*On fail goto*//*Label 4339*/ GIMT_Encode4(193057), // Rule ID 23591 // |
| 68189 | /* 193000 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68190 | /* 193003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68191 | /* 193007 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68192 | /* 193011 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68193 | /* 193015 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68194 | /* 193018 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68195 | /* 193022 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68196 | /* 193026 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68197 | /* 193030 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68198 | /* 193032 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68199 | /* 193039 */ // (umax:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v8i16] }:$src1) => (VPMAXUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68200 | /* 193039 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWrm), |
| 68201 | /* 193042 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68202 | /* 193044 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68203 | /* 193046 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68204 | /* 193050 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68205 | /* 193055 */ GIR_RootConstrainSelectedInstOperands, |
| 68206 | /* 193056 */ // GIR_Coverage, 23591, |
| 68207 | /* 193056 */ GIR_EraseRootFromParent_Done, |
| 68208 | /* 193057 */ // Label 4339: @193057 |
| 68209 | /* 193057 */ GIM_Try, /*On fail goto*//*Label 4340*/ GIMT_Encode4(193119), // Rule ID 24072 // |
| 68210 | /* 193062 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68211 | /* 193065 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68212 | /* 193069 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68213 | /* 193073 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68214 | /* 193077 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68215 | /* 193080 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68216 | /* 193084 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68217 | /* 193088 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68218 | /* 193092 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68219 | /* 193094 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68220 | /* 193101 */ // (umax:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v8i16] }:$src1) => (VPMAXUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68221 | /* 193101 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ128rm), |
| 68222 | /* 193104 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68223 | /* 193106 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68224 | /* 193108 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68225 | /* 193112 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68226 | /* 193117 */ GIR_RootConstrainSelectedInstOperands, |
| 68227 | /* 193118 */ // GIR_Coverage, 24072, |
| 68228 | /* 193118 */ GIR_EraseRootFromParent_Done, |
| 68229 | /* 193119 */ // Label 4340: @193119 |
| 68230 | /* 193119 */ GIM_Try, /*On fail goto*//*Label 4341*/ GIMT_Encode4(193181), // Rule ID 3202 // |
| 68231 | /* 193124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68232 | /* 193127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68233 | /* 193131 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68234 | /* 193135 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68235 | /* 193139 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68236 | /* 193143 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68237 | /* 193146 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68238 | /* 193150 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68239 | /* 193154 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68240 | /* 193156 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68241 | /* 193163 */ // (umax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWrm:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68242 | /* 193163 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWrm), |
| 68243 | /* 193166 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68244 | /* 193168 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68245 | /* 193170 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68246 | /* 193174 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68247 | /* 193179 */ GIR_RootConstrainSelectedInstOperands, |
| 68248 | /* 193180 */ // GIR_Coverage, 3202, |
| 68249 | /* 193180 */ GIR_EraseRootFromParent_Done, |
| 68250 | /* 193181 */ // Label 4341: @193181 |
| 68251 | /* 193181 */ GIM_Try, /*On fail goto*//*Label 4342*/ GIMT_Encode4(193243), // Rule ID 5453 // |
| 68252 | /* 193186 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68253 | /* 193189 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68254 | /* 193193 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68255 | /* 193197 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68256 | /* 193201 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68257 | /* 193205 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68258 | /* 193208 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68259 | /* 193212 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68260 | /* 193216 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68261 | /* 193218 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68262 | /* 193225 */ // (umax:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWZ128rm:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68263 | /* 193225 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ128rm), |
| 68264 | /* 193228 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68265 | /* 193230 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68266 | /* 193232 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68267 | /* 193236 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68268 | /* 193241 */ GIR_RootConstrainSelectedInstOperands, |
| 68269 | /* 193242 */ // GIR_Coverage, 5453, |
| 68270 | /* 193242 */ GIR_EraseRootFromParent_Done, |
| 68271 | /* 193243 */ // Label 4342: @193243 |
| 68272 | /* 193243 */ GIM_Try, /*On fail goto*//*Label 4343*/ GIMT_Encode4(193270), // Rule ID 3201 // |
| 68273 | /* 193248 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68274 | /* 193251 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68275 | /* 193255 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68276 | /* 193259 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68277 | /* 193263 */ // (umax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (VPMAXUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 68278 | /* 193263 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWrr), |
| 68279 | /* 193268 */ GIR_RootConstrainSelectedInstOperands, |
| 68280 | /* 193269 */ // GIR_Coverage, 3201, |
| 68281 | /* 193269 */ GIR_Done, |
| 68282 | /* 193270 */ // Label 4343: @193270 |
| 68283 | /* 193270 */ GIM_Try, /*On fail goto*//*Label 4344*/ GIMT_Encode4(193297), // Rule ID 3235 // |
| 68284 | /* 193275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE41), |
| 68285 | /* 193278 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68286 | /* 193282 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68287 | /* 193286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68288 | /* 193290 */ // (umax:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) => (PMAXUWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src1, VR128:{ *:[v8i16] }:$src2) |
| 68289 | /* 193290 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXUWrr), |
| 68290 | /* 193295 */ GIR_RootConstrainSelectedInstOperands, |
| 68291 | /* 193296 */ // GIR_Coverage, 3235, |
| 68292 | /* 193296 */ GIR_Done, |
| 68293 | /* 193297 */ // Label 4344: @193297 |
| 68294 | /* 193297 */ GIM_Try, /*On fail goto*//*Label 4345*/ GIMT_Encode4(193324), // Rule ID 5450 // |
| 68295 | /* 193302 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68296 | /* 193305 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68297 | /* 193309 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68298 | /* 193313 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68299 | /* 193317 */ // (umax:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) => (VPMAXUWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1, VR128X:{ *:[v8i16] }:$src2) |
| 68300 | /* 193317 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ128rr), |
| 68301 | /* 193322 */ GIR_RootConstrainSelectedInstOperands, |
| 68302 | /* 193323 */ // GIR_Coverage, 5450, |
| 68303 | /* 193323 */ GIR_Done, |
| 68304 | /* 193324 */ // Label 4345: @193324 |
| 68305 | /* 193324 */ GIM_Reject, |
| 68306 | /* 193325 */ // Label 4338: @193325 |
| 68307 | /* 193325 */ GIM_Reject, |
| 68308 | /* 193326 */ // Label 4311: @193326 |
| 68309 | /* 193326 */ GIM_Try, /*On fail goto*//*Label 4346*/ GIMT_Encode4(193640), |
| 68310 | /* 193331 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 68311 | /* 193334 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 68312 | /* 193337 */ GIM_Try, /*On fail goto*//*Label 4347*/ GIMT_Encode4(193399), // Rule ID 23595 // |
| 68313 | /* 193342 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 68314 | /* 193345 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68315 | /* 193349 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68316 | /* 193353 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68317 | /* 193357 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68318 | /* 193360 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68319 | /* 193364 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68320 | /* 193368 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68321 | /* 193372 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68322 | /* 193374 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68323 | /* 193381 */ // (umax:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v8i32] }:$src1) => (VPMAXUDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68324 | /* 193381 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDYrm), |
| 68325 | /* 193384 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68326 | /* 193386 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68327 | /* 193388 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68328 | /* 193392 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68329 | /* 193397 */ GIR_RootConstrainSelectedInstOperands, |
| 68330 | /* 193398 */ // GIR_Coverage, 23595, |
| 68331 | /* 193398 */ GIR_EraseRootFromParent_Done, |
| 68332 | /* 193399 */ // Label 4347: @193399 |
| 68333 | /* 193399 */ GIM_Try, /*On fail goto*//*Label 4348*/ GIMT_Encode4(193461), // Rule ID 24081 // |
| 68334 | /* 193404 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68335 | /* 193407 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68336 | /* 193411 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68337 | /* 193415 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68338 | /* 193419 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68339 | /* 193422 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68340 | /* 193426 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68341 | /* 193430 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68342 | /* 193434 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68343 | /* 193436 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68344 | /* 193443 */ // (umax:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v8i32] }:$src1) => (VPMAXUDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68345 | /* 193443 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ256rm), |
| 68346 | /* 193446 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68347 | /* 193448 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68348 | /* 193450 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68349 | /* 193454 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68350 | /* 193459 */ GIR_RootConstrainSelectedInstOperands, |
| 68351 | /* 193460 */ // GIR_Coverage, 24081, |
| 68352 | /* 193460 */ GIR_EraseRootFromParent_Done, |
| 68353 | /* 193461 */ // Label 4348: @193461 |
| 68354 | /* 193461 */ GIM_Try, /*On fail goto*//*Label 4349*/ GIMT_Encode4(193523), // Rule ID 3210 // |
| 68355 | /* 193466 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 68356 | /* 193469 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68357 | /* 193473 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68358 | /* 193477 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68359 | /* 193481 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68360 | /* 193485 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68361 | /* 193488 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68362 | /* 193492 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68363 | /* 193496 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68364 | /* 193498 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68365 | /* 193505 */ // (umax:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDYrm:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68366 | /* 193505 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDYrm), |
| 68367 | /* 193508 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68368 | /* 193510 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68369 | /* 193512 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68370 | /* 193516 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68371 | /* 193521 */ GIR_RootConstrainSelectedInstOperands, |
| 68372 | /* 193522 */ // GIR_Coverage, 3210, |
| 68373 | /* 193522 */ GIR_EraseRootFromParent_Done, |
| 68374 | /* 193523 */ // Label 4349: @193523 |
| 68375 | /* 193523 */ GIM_Try, /*On fail goto*//*Label 4350*/ GIMT_Encode4(193585), // Rule ID 5468 // |
| 68376 | /* 193528 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68377 | /* 193531 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68378 | /* 193535 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68379 | /* 193539 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68380 | /* 193543 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68381 | /* 193547 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68382 | /* 193550 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68383 | /* 193554 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68384 | /* 193558 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68385 | /* 193560 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68386 | /* 193567 */ // (umax:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDZ256rm:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68387 | /* 193567 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ256rm), |
| 68388 | /* 193570 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68389 | /* 193572 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68390 | /* 193574 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68391 | /* 193578 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68392 | /* 193583 */ GIR_RootConstrainSelectedInstOperands, |
| 68393 | /* 193584 */ // GIR_Coverage, 5468, |
| 68394 | /* 193584 */ GIR_EraseRootFromParent_Done, |
| 68395 | /* 193585 */ // Label 4350: @193585 |
| 68396 | /* 193585 */ GIM_Try, /*On fail goto*//*Label 4351*/ GIMT_Encode4(193612), // Rule ID 3209 // |
| 68397 | /* 193590 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 68398 | /* 193593 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68399 | /* 193597 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68400 | /* 193601 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68401 | /* 193605 */ // (umax:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) => (VPMAXUDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src1, VR256:{ *:[v8i32] }:$src2) |
| 68402 | /* 193605 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDYrr), |
| 68403 | /* 193610 */ GIR_RootConstrainSelectedInstOperands, |
| 68404 | /* 193611 */ // GIR_Coverage, 3209, |
| 68405 | /* 193611 */ GIR_Done, |
| 68406 | /* 193612 */ // Label 4351: @193612 |
| 68407 | /* 193612 */ GIM_Try, /*On fail goto*//*Label 4352*/ GIMT_Encode4(193639), // Rule ID 5465 // |
| 68408 | /* 193617 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 68409 | /* 193620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68410 | /* 193624 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68411 | /* 193628 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68412 | /* 193632 */ // (umax:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) => (VPMAXUDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1, VR256X:{ *:[v8i32] }:$src2) |
| 68413 | /* 193632 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZ256rr), |
| 68414 | /* 193637 */ GIR_RootConstrainSelectedInstOperands, |
| 68415 | /* 193638 */ // GIR_Coverage, 5465, |
| 68416 | /* 193638 */ GIR_Done, |
| 68417 | /* 193639 */ // Label 4352: @193639 |
| 68418 | /* 193639 */ GIM_Reject, |
| 68419 | /* 193640 */ // Label 4346: @193640 |
| 68420 | /* 193640 */ GIM_Reject, |
| 68421 | /* 193641 */ // Label 4312: @193641 |
| 68422 | /* 193641 */ GIM_Try, /*On fail goto*//*Label 4353*/ GIMT_Encode4(193796), |
| 68423 | /* 193646 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 68424 | /* 193649 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 68425 | /* 193652 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68426 | /* 193656 */ GIM_Try, /*On fail goto*//*Label 4354*/ GIMT_Encode4(193714), // Rule ID 24093 // |
| 68427 | /* 193661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68428 | /* 193664 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68429 | /* 193668 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68430 | /* 193672 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68431 | /* 193675 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68432 | /* 193679 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68433 | /* 193683 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68434 | /* 193687 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68435 | /* 193689 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68436 | /* 193696 */ // (umax:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v8i64] }:$src1) => (VPMAXUQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68437 | /* 193696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrm), |
| 68438 | /* 193699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68439 | /* 193701 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68440 | /* 193703 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68441 | /* 193707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68442 | /* 193712 */ GIR_RootConstrainSelectedInstOperands, |
| 68443 | /* 193713 */ // GIR_Coverage, 24093, |
| 68444 | /* 193713 */ GIR_EraseRootFromParent_Done, |
| 68445 | /* 193714 */ // Label 4354: @193714 |
| 68446 | /* 193714 */ GIM_Try, /*On fail goto*//*Label 4355*/ GIMT_Encode4(193772), // Rule ID 5486 // |
| 68447 | /* 193719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68448 | /* 193722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68449 | /* 193726 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68450 | /* 193730 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68451 | /* 193734 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68452 | /* 193737 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68453 | /* 193741 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68454 | /* 193745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68455 | /* 193747 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68456 | /* 193754 */ // (umax:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUQZrm:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68457 | /* 193754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrm), |
| 68458 | /* 193757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68459 | /* 193759 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68460 | /* 193761 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68461 | /* 193765 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68462 | /* 193770 */ GIR_RootConstrainSelectedInstOperands, |
| 68463 | /* 193771 */ // GIR_Coverage, 5486, |
| 68464 | /* 193771 */ GIR_EraseRootFromParent_Done, |
| 68465 | /* 193772 */ // Label 4355: @193772 |
| 68466 | /* 193772 */ GIM_Try, /*On fail goto*//*Label 4356*/ GIMT_Encode4(193795), // Rule ID 5483 // |
| 68467 | /* 193777 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68468 | /* 193780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68469 | /* 193784 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68470 | /* 193788 */ // (umax:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) => (VPMAXUQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1, VR512:{ *:[v8i64] }:$src2) |
| 68471 | /* 193788 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUQZrr), |
| 68472 | /* 193793 */ GIR_RootConstrainSelectedInstOperands, |
| 68473 | /* 193794 */ // GIR_Coverage, 5483, |
| 68474 | /* 193794 */ GIR_Done, |
| 68475 | /* 193795 */ // Label 4356: @193795 |
| 68476 | /* 193795 */ GIM_Reject, |
| 68477 | /* 193796 */ // Label 4353: @193796 |
| 68478 | /* 193796 */ GIM_Reject, |
| 68479 | /* 193797 */ // Label 4313: @193797 |
| 68480 | /* 193797 */ GIM_Try, /*On fail goto*//*Label 4357*/ GIMT_Encode4(194138), |
| 68481 | /* 193802 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 68482 | /* 193805 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 68483 | /* 193808 */ GIM_Try, /*On fail goto*//*Label 4358*/ GIMT_Encode4(193870), // Rule ID 23550 // |
| 68484 | /* 193813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68485 | /* 193816 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68486 | /* 193820 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68487 | /* 193824 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68488 | /* 193828 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68489 | /* 193831 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68490 | /* 193835 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68491 | /* 193839 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68492 | /* 193843 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68493 | /* 193845 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68494 | /* 193852 */ // (umax:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128:{ *:[v16i8] }:$src1) => (VPMAXUBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68495 | /* 193852 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBrm), |
| 68496 | /* 193855 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68497 | /* 193857 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68498 | /* 193859 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68499 | /* 193863 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68500 | /* 193868 */ GIR_RootConstrainSelectedInstOperands, |
| 68501 | /* 193869 */ // GIR_Coverage, 23550, |
| 68502 | /* 193869 */ GIR_EraseRootFromParent_Done, |
| 68503 | /* 193870 */ // Label 4358: @193870 |
| 68504 | /* 193870 */ GIM_Try, /*On fail goto*//*Label 4359*/ GIMT_Encode4(193932), // Rule ID 24063 // |
| 68505 | /* 193875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68506 | /* 193878 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68507 | /* 193882 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68508 | /* 193886 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68509 | /* 193890 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68510 | /* 193893 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68511 | /* 193897 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68512 | /* 193901 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68513 | /* 193905 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68514 | /* 193907 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68515 | /* 193914 */ // (umax:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR128X:{ *:[v16i8] }:$src1) => (VPMAXUBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68516 | /* 193914 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ128rm), |
| 68517 | /* 193917 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68518 | /* 193919 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68519 | /* 193921 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68520 | /* 193925 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68521 | /* 193930 */ GIR_RootConstrainSelectedInstOperands, |
| 68522 | /* 193931 */ // GIR_Coverage, 24063, |
| 68523 | /* 193931 */ GIR_EraseRootFromParent_Done, |
| 68524 | /* 193932 */ // Label 4359: @193932 |
| 68525 | /* 193932 */ GIM_Try, /*On fail goto*//*Label 4360*/ GIMT_Encode4(193994), // Rule ID 2649 // |
| 68526 | /* 193937 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68527 | /* 193940 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68528 | /* 193944 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68529 | /* 193948 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68530 | /* 193952 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68531 | /* 193956 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68532 | /* 193959 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68533 | /* 193963 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68534 | /* 193967 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68535 | /* 193969 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68536 | /* 193976 */ // (umax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBrm:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68537 | /* 193976 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBrm), |
| 68538 | /* 193979 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68539 | /* 193981 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68540 | /* 193983 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68541 | /* 193987 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68542 | /* 193992 */ GIR_RootConstrainSelectedInstOperands, |
| 68543 | /* 193993 */ // GIR_Coverage, 2649, |
| 68544 | /* 193993 */ GIR_EraseRootFromParent_Done, |
| 68545 | /* 193994 */ // Label 4360: @193994 |
| 68546 | /* 193994 */ GIM_Try, /*On fail goto*//*Label 4361*/ GIMT_Encode4(194056), // Rule ID 5435 // |
| 68547 | /* 193999 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68548 | /* 194002 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68549 | /* 194006 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68550 | /* 194010 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68551 | /* 194014 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68552 | /* 194018 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68553 | /* 194021 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68554 | /* 194025 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68555 | /* 194029 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68556 | /* 194031 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68557 | /* 194038 */ // (umax:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBZ128rm:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68558 | /* 194038 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ128rm), |
| 68559 | /* 194041 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68560 | /* 194043 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68561 | /* 194045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68562 | /* 194049 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68563 | /* 194054 */ GIR_RootConstrainSelectedInstOperands, |
| 68564 | /* 194055 */ // GIR_Coverage, 5435, |
| 68565 | /* 194055 */ GIR_EraseRootFromParent_Done, |
| 68566 | /* 194056 */ // Label 4361: @194056 |
| 68567 | /* 194056 */ GIM_Try, /*On fail goto*//*Label 4362*/ GIMT_Encode4(194083), // Rule ID 2648 // |
| 68568 | /* 194061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 68569 | /* 194064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68570 | /* 194068 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68571 | /* 194072 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68572 | /* 194076 */ // (umax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (VPMAXUBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 68573 | /* 194076 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBrr), |
| 68574 | /* 194081 */ GIR_RootConstrainSelectedInstOperands, |
| 68575 | /* 194082 */ // GIR_Coverage, 2648, |
| 68576 | /* 194082 */ GIR_Done, |
| 68577 | /* 194083 */ // Label 4362: @194083 |
| 68578 | /* 194083 */ GIM_Try, /*On fail goto*//*Label 4363*/ GIMT_Encode4(194110), // Rule ID 2650 // |
| 68579 | /* 194088 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 68580 | /* 194091 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68581 | /* 194095 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68582 | /* 194099 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 68583 | /* 194103 */ // (umax:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) => (PMAXUBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src1, VR128:{ *:[v16i8] }:$src2) |
| 68584 | /* 194103 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PMAXUBrr), |
| 68585 | /* 194108 */ GIR_RootConstrainSelectedInstOperands, |
| 68586 | /* 194109 */ // GIR_Coverage, 2650, |
| 68587 | /* 194109 */ GIR_Done, |
| 68588 | /* 194110 */ // Label 4363: @194110 |
| 68589 | /* 194110 */ GIM_Try, /*On fail goto*//*Label 4364*/ GIMT_Encode4(194137), // Rule ID 5432 // |
| 68590 | /* 194115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68591 | /* 194118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68592 | /* 194122 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68593 | /* 194126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 68594 | /* 194130 */ // (umax:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) => (VPMAXUBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1, VR128X:{ *:[v16i8] }:$src2) |
| 68595 | /* 194130 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ128rr), |
| 68596 | /* 194135 */ GIR_RootConstrainSelectedInstOperands, |
| 68597 | /* 194136 */ // GIR_Coverage, 5432, |
| 68598 | /* 194136 */ GIR_Done, |
| 68599 | /* 194137 */ // Label 4364: @194137 |
| 68600 | /* 194137 */ GIM_Reject, |
| 68601 | /* 194138 */ // Label 4357: @194138 |
| 68602 | /* 194138 */ GIM_Reject, |
| 68603 | /* 194139 */ // Label 4314: @194139 |
| 68604 | /* 194139 */ GIM_Try, /*On fail goto*//*Label 4365*/ GIMT_Encode4(194453), |
| 68605 | /* 194144 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 68606 | /* 194147 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 68607 | /* 194150 */ GIM_Try, /*On fail goto*//*Label 4366*/ GIMT_Encode4(194212), // Rule ID 23600 // |
| 68608 | /* 194155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68609 | /* 194158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68610 | /* 194162 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68611 | /* 194166 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68612 | /* 194170 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68613 | /* 194173 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68614 | /* 194177 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68615 | /* 194181 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68616 | /* 194185 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68617 | /* 194187 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68618 | /* 194194 */ // (umax:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v16i16] }:$src1) => (VPMAXUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68619 | /* 194194 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWYrm), |
| 68620 | /* 194197 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68621 | /* 194199 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68622 | /* 194201 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68623 | /* 194205 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68624 | /* 194210 */ GIR_RootConstrainSelectedInstOperands, |
| 68625 | /* 194211 */ // GIR_Coverage, 23600, |
| 68626 | /* 194211 */ GIR_EraseRootFromParent_Done, |
| 68627 | /* 194212 */ // Label 4366: @194212 |
| 68628 | /* 194212 */ GIM_Try, /*On fail goto*//*Label 4367*/ GIMT_Encode4(194274), // Rule ID 24069 // |
| 68629 | /* 194217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68630 | /* 194220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68631 | /* 194224 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68632 | /* 194228 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68633 | /* 194232 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68634 | /* 194235 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68635 | /* 194239 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68636 | /* 194243 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68637 | /* 194247 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68638 | /* 194249 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68639 | /* 194256 */ // (umax:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v16i16] }:$src1) => (VPMAXUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68640 | /* 194256 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ256rm), |
| 68641 | /* 194259 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68642 | /* 194261 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68643 | /* 194263 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68644 | /* 194267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68645 | /* 194272 */ GIR_RootConstrainSelectedInstOperands, |
| 68646 | /* 194273 */ // GIR_Coverage, 24069, |
| 68647 | /* 194273 */ GIR_EraseRootFromParent_Done, |
| 68648 | /* 194274 */ // Label 4367: @194274 |
| 68649 | /* 194274 */ GIM_Try, /*On fail goto*//*Label 4368*/ GIMT_Encode4(194336), // Rule ID 3220 // |
| 68650 | /* 194279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68651 | /* 194282 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68652 | /* 194286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68653 | /* 194290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68654 | /* 194294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68655 | /* 194298 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68656 | /* 194301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68657 | /* 194305 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68658 | /* 194309 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68659 | /* 194311 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68660 | /* 194318 */ // (umax:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWYrm:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68661 | /* 194318 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWYrm), |
| 68662 | /* 194321 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68663 | /* 194323 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68664 | /* 194325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68665 | /* 194329 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68666 | /* 194334 */ GIR_RootConstrainSelectedInstOperands, |
| 68667 | /* 194335 */ // GIR_Coverage, 3220, |
| 68668 | /* 194335 */ GIR_EraseRootFromParent_Done, |
| 68669 | /* 194336 */ // Label 4368: @194336 |
| 68670 | /* 194336 */ GIM_Try, /*On fail goto*//*Label 4369*/ GIMT_Encode4(194398), // Rule ID 5447 // |
| 68671 | /* 194341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68672 | /* 194344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68673 | /* 194348 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68674 | /* 194352 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68675 | /* 194356 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68676 | /* 194360 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68677 | /* 194363 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68678 | /* 194367 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68679 | /* 194371 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68680 | /* 194373 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68681 | /* 194380 */ // (umax:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWZ256rm:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68682 | /* 194380 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ256rm), |
| 68683 | /* 194383 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68684 | /* 194385 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68685 | /* 194387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68686 | /* 194391 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68687 | /* 194396 */ GIR_RootConstrainSelectedInstOperands, |
| 68688 | /* 194397 */ // GIR_Coverage, 5447, |
| 68689 | /* 194397 */ GIR_EraseRootFromParent_Done, |
| 68690 | /* 194398 */ // Label 4369: @194398 |
| 68691 | /* 194398 */ GIM_Try, /*On fail goto*//*Label 4370*/ GIMT_Encode4(194425), // Rule ID 3219 // |
| 68692 | /* 194403 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68693 | /* 194406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68694 | /* 194410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68695 | /* 194414 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68696 | /* 194418 */ // (umax:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) => (VPMAXUWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src1, VR256:{ *:[v16i16] }:$src2) |
| 68697 | /* 194418 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWYrr), |
| 68698 | /* 194423 */ GIR_RootConstrainSelectedInstOperands, |
| 68699 | /* 194424 */ // GIR_Coverage, 3219, |
| 68700 | /* 194424 */ GIR_Done, |
| 68701 | /* 194425 */ // Label 4370: @194425 |
| 68702 | /* 194425 */ GIM_Try, /*On fail goto*//*Label 4371*/ GIMT_Encode4(194452), // Rule ID 5444 // |
| 68703 | /* 194430 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68704 | /* 194433 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68705 | /* 194437 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68706 | /* 194441 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68707 | /* 194445 */ // (umax:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) => (VPMAXUWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1, VR256X:{ *:[v16i16] }:$src2) |
| 68708 | /* 194445 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZ256rr), |
| 68709 | /* 194450 */ GIR_RootConstrainSelectedInstOperands, |
| 68710 | /* 194451 */ // GIR_Coverage, 5444, |
| 68711 | /* 194451 */ GIR_Done, |
| 68712 | /* 194452 */ // Label 4371: @194452 |
| 68713 | /* 194452 */ GIM_Reject, |
| 68714 | /* 194453 */ // Label 4365: @194453 |
| 68715 | /* 194453 */ GIM_Reject, |
| 68716 | /* 194454 */ // Label 4315: @194454 |
| 68717 | /* 194454 */ GIM_Try, /*On fail goto*//*Label 4372*/ GIMT_Encode4(194609), |
| 68718 | /* 194459 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 68719 | /* 194462 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 68720 | /* 194465 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68721 | /* 194469 */ GIM_Try, /*On fail goto*//*Label 4373*/ GIMT_Encode4(194527), // Rule ID 24075 // |
| 68722 | /* 194474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68723 | /* 194477 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68724 | /* 194481 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68725 | /* 194485 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68726 | /* 194488 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68727 | /* 194492 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68728 | /* 194496 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68729 | /* 194500 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68730 | /* 194502 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68731 | /* 194509 */ // (umax:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v16i32] }:$src1) => (VPMAXUDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68732 | /* 194509 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZrm), |
| 68733 | /* 194512 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68734 | /* 194514 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68735 | /* 194516 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68736 | /* 194520 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68737 | /* 194525 */ GIR_RootConstrainSelectedInstOperands, |
| 68738 | /* 194526 */ // GIR_Coverage, 24075, |
| 68739 | /* 194526 */ GIR_EraseRootFromParent_Done, |
| 68740 | /* 194527 */ // Label 4373: @194527 |
| 68741 | /* 194527 */ GIM_Try, /*On fail goto*//*Label 4374*/ GIMT_Encode4(194585), // Rule ID 5459 // |
| 68742 | /* 194532 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68743 | /* 194535 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68744 | /* 194539 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68745 | /* 194543 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68746 | /* 194547 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68747 | /* 194550 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68748 | /* 194554 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68749 | /* 194558 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68750 | /* 194560 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68751 | /* 194567 */ // (umax:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUDZrm:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68752 | /* 194567 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZrm), |
| 68753 | /* 194570 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68754 | /* 194572 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68755 | /* 194574 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68756 | /* 194578 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68757 | /* 194583 */ GIR_RootConstrainSelectedInstOperands, |
| 68758 | /* 194584 */ // GIR_Coverage, 5459, |
| 68759 | /* 194584 */ GIR_EraseRootFromParent_Done, |
| 68760 | /* 194585 */ // Label 4374: @194585 |
| 68761 | /* 194585 */ GIM_Try, /*On fail goto*//*Label 4375*/ GIMT_Encode4(194608), // Rule ID 5456 // |
| 68762 | /* 194590 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 68763 | /* 194593 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68764 | /* 194597 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68765 | /* 194601 */ // (umax:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) => (VPMAXUDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1, VR512:{ *:[v16i32] }:$src2) |
| 68766 | /* 194601 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUDZrr), |
| 68767 | /* 194606 */ GIR_RootConstrainSelectedInstOperands, |
| 68768 | /* 194607 */ // GIR_Coverage, 5456, |
| 68769 | /* 194607 */ GIR_Done, |
| 68770 | /* 194608 */ // Label 4375: @194608 |
| 68771 | /* 194608 */ GIM_Reject, |
| 68772 | /* 194609 */ // Label 4372: @194609 |
| 68773 | /* 194609 */ GIM_Reject, |
| 68774 | /* 194610 */ // Label 4316: @194610 |
| 68775 | /* 194610 */ GIM_Try, /*On fail goto*//*Label 4376*/ GIMT_Encode4(194924), |
| 68776 | /* 194615 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 68777 | /* 194618 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s8, |
| 68778 | /* 194621 */ GIM_Try, /*On fail goto*//*Label 4377*/ GIMT_Encode4(194683), // Rule ID 23552 // |
| 68779 | /* 194626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68780 | /* 194629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68781 | /* 194633 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68782 | /* 194637 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68783 | /* 194641 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68784 | /* 194644 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68785 | /* 194648 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68786 | /* 194652 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68787 | /* 194656 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68788 | /* 194658 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68789 | /* 194665 */ // (umax:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256:{ *:[v32i8] }:$src1) => (VPMAXUBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68790 | /* 194665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBYrm), |
| 68791 | /* 194668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68792 | /* 194670 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68793 | /* 194672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68794 | /* 194676 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68795 | /* 194681 */ GIR_RootConstrainSelectedInstOperands, |
| 68796 | /* 194682 */ // GIR_Coverage, 23552, |
| 68797 | /* 194682 */ GIR_EraseRootFromParent_Done, |
| 68798 | /* 194683 */ // Label 4377: @194683 |
| 68799 | /* 194683 */ GIM_Try, /*On fail goto*//*Label 4378*/ GIMT_Encode4(194745), // Rule ID 24060 // |
| 68800 | /* 194688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68801 | /* 194691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68802 | /* 194695 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68803 | /* 194699 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68804 | /* 194703 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68805 | /* 194706 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68806 | /* 194710 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68807 | /* 194714 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68808 | /* 194718 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68809 | /* 194720 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68810 | /* 194727 */ // (umax:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR256X:{ *:[v32i8] }:$src1) => (VPMAXUBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68811 | /* 194727 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ256rm), |
| 68812 | /* 194730 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68813 | /* 194732 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68814 | /* 194734 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68815 | /* 194738 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68816 | /* 194743 */ GIR_RootConstrainSelectedInstOperands, |
| 68817 | /* 194744 */ // GIR_Coverage, 24060, |
| 68818 | /* 194744 */ GIR_EraseRootFromParent_Done, |
| 68819 | /* 194745 */ // Label 4378: @194745 |
| 68820 | /* 194745 */ GIM_Try, /*On fail goto*//*Label 4379*/ GIMT_Encode4(194807), // Rule ID 2653 // |
| 68821 | /* 194750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68822 | /* 194753 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68823 | /* 194757 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68824 | /* 194761 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68825 | /* 194765 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68826 | /* 194769 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68827 | /* 194772 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68828 | /* 194776 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68829 | /* 194780 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68830 | /* 194782 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68831 | /* 194789 */ // (umax:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBYrm:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68832 | /* 194789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBYrm), |
| 68833 | /* 194792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68834 | /* 194794 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68835 | /* 194796 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68836 | /* 194800 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68837 | /* 194805 */ GIR_RootConstrainSelectedInstOperands, |
| 68838 | /* 194806 */ // GIR_Coverage, 2653, |
| 68839 | /* 194806 */ GIR_EraseRootFromParent_Done, |
| 68840 | /* 194807 */ // Label 4379: @194807 |
| 68841 | /* 194807 */ GIM_Try, /*On fail goto*//*Label 4380*/ GIMT_Encode4(194869), // Rule ID 5429 // |
| 68842 | /* 194812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68843 | /* 194815 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68844 | /* 194819 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68845 | /* 194823 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68846 | /* 194827 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68847 | /* 194831 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68848 | /* 194834 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68849 | /* 194838 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68850 | /* 194842 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68851 | /* 194844 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68852 | /* 194851 */ // (umax:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBZ256rm:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68853 | /* 194851 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ256rm), |
| 68854 | /* 194854 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68855 | /* 194856 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68856 | /* 194858 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68857 | /* 194862 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68858 | /* 194867 */ GIR_RootConstrainSelectedInstOperands, |
| 68859 | /* 194868 */ // GIR_Coverage, 5429, |
| 68860 | /* 194868 */ GIR_EraseRootFromParent_Done, |
| 68861 | /* 194869 */ // Label 4380: @194869 |
| 68862 | /* 194869 */ GIM_Try, /*On fail goto*//*Label 4381*/ GIMT_Encode4(194896), // Rule ID 2652 // |
| 68863 | /* 194874 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 68864 | /* 194877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68865 | /* 194881 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68866 | /* 194885 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 68867 | /* 194889 */ // (umax:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) => (VPMAXUBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src1, VR256:{ *:[v32i8] }:$src2) |
| 68868 | /* 194889 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBYrr), |
| 68869 | /* 194894 */ GIR_RootConstrainSelectedInstOperands, |
| 68870 | /* 194895 */ // GIR_Coverage, 2652, |
| 68871 | /* 194895 */ GIR_Done, |
| 68872 | /* 194896 */ // Label 4381: @194896 |
| 68873 | /* 194896 */ GIM_Try, /*On fail goto*//*Label 4382*/ GIMT_Encode4(194923), // Rule ID 5426 // |
| 68874 | /* 194901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 68875 | /* 194904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68876 | /* 194908 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68877 | /* 194912 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 68878 | /* 194916 */ // (umax:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) => (VPMAXUBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1, VR256X:{ *:[v32i8] }:$src2) |
| 68879 | /* 194916 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZ256rr), |
| 68880 | /* 194921 */ GIR_RootConstrainSelectedInstOperands, |
| 68881 | /* 194922 */ // GIR_Coverage, 5426, |
| 68882 | /* 194922 */ GIR_Done, |
| 68883 | /* 194923 */ // Label 4382: @194923 |
| 68884 | /* 194923 */ GIM_Reject, |
| 68885 | /* 194924 */ // Label 4376: @194924 |
| 68886 | /* 194924 */ GIM_Reject, |
| 68887 | /* 194925 */ // Label 4317: @194925 |
| 68888 | /* 194925 */ GIM_Try, /*On fail goto*//*Label 4383*/ GIMT_Encode4(195080), |
| 68889 | /* 194930 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 68890 | /* 194933 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 68891 | /* 194936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68892 | /* 194940 */ GIM_Try, /*On fail goto*//*Label 4384*/ GIMT_Encode4(194998), // Rule ID 24066 // |
| 68893 | /* 194945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68894 | /* 194948 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68895 | /* 194952 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68896 | /* 194956 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68897 | /* 194959 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68898 | /* 194963 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68899 | /* 194967 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68900 | /* 194971 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68901 | /* 194973 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68902 | /* 194980 */ // (umax:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v32i16] }:$src1) => (VPMAXUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68903 | /* 194980 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZrm), |
| 68904 | /* 194983 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68905 | /* 194985 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68906 | /* 194987 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68907 | /* 194991 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68908 | /* 194996 */ GIR_RootConstrainSelectedInstOperands, |
| 68909 | /* 194997 */ // GIR_Coverage, 24066, |
| 68910 | /* 194997 */ GIR_EraseRootFromParent_Done, |
| 68911 | /* 194998 */ // Label 4384: @194998 |
| 68912 | /* 194998 */ GIM_Try, /*On fail goto*//*Label 4385*/ GIMT_Encode4(195056), // Rule ID 5441 // |
| 68913 | /* 195003 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68914 | /* 195006 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68915 | /* 195010 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68916 | /* 195014 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68917 | /* 195018 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68918 | /* 195021 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68919 | /* 195025 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68920 | /* 195029 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68921 | /* 195031 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68922 | /* 195038 */ // (umax:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUWZrm:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68923 | /* 195038 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZrm), |
| 68924 | /* 195041 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68925 | /* 195043 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68926 | /* 195045 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68927 | /* 195049 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68928 | /* 195054 */ GIR_RootConstrainSelectedInstOperands, |
| 68929 | /* 195055 */ // GIR_Coverage, 5441, |
| 68930 | /* 195055 */ GIR_EraseRootFromParent_Done, |
| 68931 | /* 195056 */ // Label 4385: @195056 |
| 68932 | /* 195056 */ GIM_Try, /*On fail goto*//*Label 4386*/ GIMT_Encode4(195079), // Rule ID 5438 // |
| 68933 | /* 195061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68934 | /* 195064 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68935 | /* 195068 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68936 | /* 195072 */ // (umax:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) => (VPMAXUWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1, VR512:{ *:[v32i16] }:$src2) |
| 68937 | /* 195072 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUWZrr), |
| 68938 | /* 195077 */ GIR_RootConstrainSelectedInstOperands, |
| 68939 | /* 195078 */ // GIR_Coverage, 5438, |
| 68940 | /* 195078 */ GIR_Done, |
| 68941 | /* 195079 */ // Label 4386: @195079 |
| 68942 | /* 195079 */ GIM_Reject, |
| 68943 | /* 195080 */ // Label 4383: @195080 |
| 68944 | /* 195080 */ GIM_Reject, |
| 68945 | /* 195081 */ // Label 4318: @195081 |
| 68946 | /* 195081 */ GIM_Try, /*On fail goto*//*Label 4387*/ GIMT_Encode4(195236), |
| 68947 | /* 195086 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 68948 | /* 195089 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s8, |
| 68949 | /* 195092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68950 | /* 195096 */ GIM_Try, /*On fail goto*//*Label 4388*/ GIMT_Encode4(195154), // Rule ID 24057 // |
| 68951 | /* 195101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68952 | /* 195104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 68953 | /* 195108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68954 | /* 195112 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68955 | /* 195115 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68956 | /* 195119 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68957 | /* 195123 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68958 | /* 195127 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68959 | /* 195129 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68960 | /* 195136 */ // (umax:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, VR512:{ *:[v64i8] }:$src1) => (VPMAXUBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68961 | /* 195136 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZrm), |
| 68962 | /* 195139 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68963 | /* 195141 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 68964 | /* 195143 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68965 | /* 195147 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68966 | /* 195152 */ GIR_RootConstrainSelectedInstOperands, |
| 68967 | /* 195153 */ // GIR_Coverage, 24057, |
| 68968 | /* 195153 */ GIR_EraseRootFromParent_Done, |
| 68969 | /* 195154 */ // Label 4388: @195154 |
| 68970 | /* 195154 */ GIM_Try, /*On fail goto*//*Label 4389*/ GIMT_Encode4(195212), // Rule ID 5423 // |
| 68971 | /* 195159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68972 | /* 195162 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68973 | /* 195166 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 68974 | /* 195170 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 68975 | /* 195174 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 68976 | /* 195177 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 68977 | /* 195181 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 68978 | /* 195185 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 68979 | /* 195187 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 68980 | /* 195194 */ // (umax:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPMAXUBZrm:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 68981 | /* 195194 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZrm), |
| 68982 | /* 195197 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 68983 | /* 195199 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 68984 | /* 195201 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 68985 | /* 195205 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 68986 | /* 195210 */ GIR_RootConstrainSelectedInstOperands, |
| 68987 | /* 195211 */ // GIR_Coverage, 5423, |
| 68988 | /* 195211 */ GIR_EraseRootFromParent_Done, |
| 68989 | /* 195212 */ // Label 4389: @195212 |
| 68990 | /* 195212 */ GIM_Try, /*On fail goto*//*Label 4390*/ GIMT_Encode4(195235), // Rule ID 5420 // |
| 68991 | /* 195217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 68992 | /* 195220 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68993 | /* 195224 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 68994 | /* 195228 */ // (umax:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) => (VPMAXUBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1, VR512:{ *:[v64i8] }:$src2) |
| 68995 | /* 195228 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPMAXUBZrr), |
| 68996 | /* 195233 */ GIR_RootConstrainSelectedInstOperands, |
| 68997 | /* 195234 */ // GIR_Coverage, 5420, |
| 68998 | /* 195234 */ GIR_Done, |
| 68999 | /* 195235 */ // Label 4390: @195235 |
| 69000 | /* 195235 */ GIM_Reject, |
| 69001 | /* 195236 */ // Label 4387: @195236 |
| 69002 | /* 195236 */ GIM_Reject, |
| 69003 | /* 195237 */ // Label 4319: @195237 |
| 69004 | /* 195237 */ GIM_Reject, |
| 69005 | /* 195238 */ // Label 59: @195238 |
| 69006 | /* 195238 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4403*/ GIMT_Encode4(197118), |
| 69007 | /* 195249 */ /*GILLT_v2s64*//*Label 4391*/ GIMT_Encode4(195317), GIMT_Encode4(0), |
| 69008 | /* 195257 */ /*GILLT_v4s32*//*Label 4392*/ GIMT_Encode4(195513), |
| 69009 | /* 195261 */ /*GILLT_v4s64*//*Label 4393*/ GIMT_Encode4(195704), GIMT_Encode4(0), |
| 69010 | /* 195269 */ /*GILLT_v8s16*//*Label 4394*/ GIMT_Encode4(195892), |
| 69011 | /* 195273 */ /*GILLT_v8s32*//*Label 4395*/ GIMT_Encode4(196083), |
| 69012 | /* 195277 */ /*GILLT_v8s64*//*Label 4396*/ GIMT_Encode4(196251), GIMT_Encode4(0), |
| 69013 | /* 195285 */ /*GILLT_v16s8*//*Label 4397*/ GIMT_Encode4(196336), |
| 69014 | /* 195289 */ /*GILLT_v16s16*//*Label 4398*/ GIMT_Encode4(196527), |
| 69015 | /* 195293 */ /*GILLT_v16s32*//*Label 4399*/ GIMT_Encode4(196695), GIMT_Encode4(0), |
| 69016 | /* 195301 */ /*GILLT_v32s8*//*Label 4400*/ GIMT_Encode4(196780), |
| 69017 | /* 195305 */ /*GILLT_v32s16*//*Label 4401*/ GIMT_Encode4(196948), GIMT_Encode4(0), |
| 69018 | /* 195313 */ /*GILLT_v64s8*//*Label 4402*/ GIMT_Encode4(197033), |
| 69019 | /* 195317 */ // Label 4391: @195317 |
| 69020 | /* 195317 */ GIM_Try, /*On fail goto*//*Label 4404*/ GIMT_Encode4(195512), |
| 69021 | /* 195322 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 69022 | /* 195325 */ GIM_Try, /*On fail goto*//*Label 4405*/ GIMT_Encode4(195381), // Rule ID 13271 // |
| 69023 | /* 195330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69024 | /* 195333 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69025 | /* 195337 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69026 | /* 195341 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69027 | /* 195345 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69028 | /* 195348 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69029 | /* 195352 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69030 | /* 195356 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69031 | /* 195358 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69032 | /* 195365 */ // (abs:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1) |
| 69033 | /* 195365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSQZ128rm), |
| 69034 | /* 195368 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69035 | /* 195370 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69036 | /* 195374 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69037 | /* 195379 */ GIR_RootConstrainSelectedInstOperands, |
| 69038 | /* 195380 */ // GIR_Coverage, 13271, |
| 69039 | /* 195380 */ GIR_EraseRootFromParent_Done, |
| 69040 | /* 195381 */ // Label 4405: @195381 |
| 69041 | /* 195381 */ GIM_Try, /*On fail goto*//*Label 4406*/ GIMT_Encode4(195404), // Rule ID 13268 // |
| 69042 | /* 195386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69043 | /* 195389 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69044 | /* 195393 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69045 | /* 195397 */ // (abs:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) => (VPABSQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) |
| 69046 | /* 195397 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSQZ128rr), |
| 69047 | /* 195402 */ GIR_RootConstrainSelectedInstOperands, |
| 69048 | /* 195403 */ // GIR_Coverage, 13268, |
| 69049 | /* 195403 */ GIR_Done, |
| 69050 | /* 195404 */ // Label 4406: @195404 |
| 69051 | /* 195404 */ GIM_Try, /*On fail goto*//*Label 4407*/ GIMT_Encode4(195511), // Rule ID 21835 // |
| 69052 | /* 195409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 69053 | /* 195412 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 69054 | /* 195416 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69055 | /* 195420 */ // (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] }) |
| 69056 | /* 195420 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 69057 | /* 195423 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 69058 | /* 195427 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69059 | /* 195432 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 69060 | /* 195434 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 69061 | /* 195437 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 69062 | /* 195441 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69063 | /* 195446 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 69064 | /* 195449 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 69065 | /* 195453 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 69066 | /* 195456 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 69067 | /* 195461 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69068 | /* 195466 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 69069 | /* 195471 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 69070 | /* 195474 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPABSQZrr), |
| 69071 | /* 195478 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69072 | /* 195483 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 69073 | /* 195486 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 69074 | /* 195488 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69075 | /* 195491 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69076 | /* 195493 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 69077 | /* 195500 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 69078 | /* 195505 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69079 | /* 195510 */ // GIR_Coverage, 21835, |
| 69080 | /* 195510 */ GIR_EraseRootFromParent_Done, |
| 69081 | /* 195511 */ // Label 4407: @195511 |
| 69082 | /* 195511 */ GIM_Reject, |
| 69083 | /* 195512 */ // Label 4404: @195512 |
| 69084 | /* 195512 */ GIM_Reject, |
| 69085 | /* 195513 */ // Label 4392: @195513 |
| 69086 | /* 195513 */ GIM_Try, /*On fail goto*//*Label 4408*/ GIMT_Encode4(195703), |
| 69087 | /* 195518 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 69088 | /* 195521 */ GIM_Try, /*On fail goto*//*Label 4409*/ GIMT_Encode4(195577), // Rule ID 2995 // |
| 69089 | /* 195526 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 69090 | /* 195529 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69091 | /* 195533 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69092 | /* 195537 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69093 | /* 195541 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69094 | /* 195544 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69095 | /* 195548 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69096 | /* 195552 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69097 | /* 195554 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69098 | /* 195561 */ // (abs:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDrm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src) |
| 69099 | /* 195561 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDrm), |
| 69100 | /* 195564 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69101 | /* 195566 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69102 | /* 195570 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69103 | /* 195575 */ GIR_RootConstrainSelectedInstOperands, |
| 69104 | /* 195576 */ // GIR_Coverage, 2995, |
| 69105 | /* 195576 */ GIR_EraseRootFromParent_Done, |
| 69106 | /* 195577 */ // Label 4409: @195577 |
| 69107 | /* 195577 */ GIM_Try, /*On fail goto*//*Label 4410*/ GIMT_Encode4(195633), // Rule ID 13298 // |
| 69108 | /* 195582 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69109 | /* 195585 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69110 | /* 195589 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69111 | /* 195593 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69112 | /* 195597 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69113 | /* 195600 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69114 | /* 195604 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69115 | /* 195608 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69116 | /* 195610 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69117 | /* 195617 */ // (abs:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDZ128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1) |
| 69118 | /* 195617 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDZ128rm), |
| 69119 | /* 195620 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69120 | /* 195622 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69121 | /* 195626 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69122 | /* 195631 */ GIR_RootConstrainSelectedInstOperands, |
| 69123 | /* 195632 */ // GIR_Coverage, 13298, |
| 69124 | /* 195632 */ GIR_EraseRootFromParent_Done, |
| 69125 | /* 195633 */ // Label 4410: @195633 |
| 69126 | /* 195633 */ GIM_Try, /*On fail goto*//*Label 4411*/ GIMT_Encode4(195656), // Rule ID 2994 // |
| 69127 | /* 195638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 69128 | /* 195641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69129 | /* 195645 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69130 | /* 195649 */ // (abs:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src) => (VPABSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src) |
| 69131 | /* 195649 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDrr), |
| 69132 | /* 195654 */ GIR_RootConstrainSelectedInstOperands, |
| 69133 | /* 195655 */ // GIR_Coverage, 2994, |
| 69134 | /* 195655 */ GIR_Done, |
| 69135 | /* 195656 */ // Label 4411: @195656 |
| 69136 | /* 195656 */ GIM_Try, /*On fail goto*//*Label 4412*/ GIMT_Encode4(195679), // Rule ID 3006 // |
| 69137 | /* 195661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 69138 | /* 195664 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69139 | /* 195668 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69140 | /* 195672 */ // (abs:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src) => (PABSDrr:{ *:[v4i32] } VR128:{ *:[v4i32] }:$src) |
| 69141 | /* 195672 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PABSDrr), |
| 69142 | /* 195677 */ GIR_RootConstrainSelectedInstOperands, |
| 69143 | /* 195678 */ // GIR_Coverage, 3006, |
| 69144 | /* 195678 */ GIR_Done, |
| 69145 | /* 195679 */ // Label 4412: @195679 |
| 69146 | /* 195679 */ GIM_Try, /*On fail goto*//*Label 4413*/ GIMT_Encode4(195702), // Rule ID 13295 // |
| 69147 | /* 195684 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69148 | /* 195687 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69149 | /* 195691 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69150 | /* 195695 */ // (abs:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) => (VPABSDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) |
| 69151 | /* 195695 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDZ128rr), |
| 69152 | /* 195700 */ GIR_RootConstrainSelectedInstOperands, |
| 69153 | /* 195701 */ // GIR_Coverage, 13295, |
| 69154 | /* 195701 */ GIR_Done, |
| 69155 | /* 195702 */ // Label 4413: @195702 |
| 69156 | /* 195702 */ GIM_Reject, |
| 69157 | /* 195703 */ // Label 4408: @195703 |
| 69158 | /* 195703 */ GIM_Reject, |
| 69159 | /* 195704 */ // Label 4393: @195704 |
| 69160 | /* 195704 */ GIM_Try, /*On fail goto*//*Label 4414*/ GIMT_Encode4(195891), |
| 69161 | /* 195709 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 69162 | /* 195712 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69163 | /* 195716 */ GIM_Try, /*On fail goto*//*Label 4415*/ GIMT_Encode4(195768), // Rule ID 13262 // |
| 69164 | /* 195721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69165 | /* 195724 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69166 | /* 195728 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69167 | /* 195732 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69168 | /* 195735 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69169 | /* 195739 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69170 | /* 195743 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69171 | /* 195745 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69172 | /* 195752 */ // (abs:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1) |
| 69173 | /* 195752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSQZ256rm), |
| 69174 | /* 195755 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69175 | /* 195757 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69176 | /* 195761 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69177 | /* 195766 */ GIR_RootConstrainSelectedInstOperands, |
| 69178 | /* 195767 */ // GIR_Coverage, 13262, |
| 69179 | /* 195767 */ GIR_EraseRootFromParent_Done, |
| 69180 | /* 195768 */ // Label 4415: @195768 |
| 69181 | /* 195768 */ GIM_Try, /*On fail goto*//*Label 4416*/ GIMT_Encode4(195787), // Rule ID 13259 // |
| 69182 | /* 195773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69183 | /* 195776 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69184 | /* 195780 */ // (abs:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) => (VPABSQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) |
| 69185 | /* 195780 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSQZ256rr), |
| 69186 | /* 195785 */ GIR_RootConstrainSelectedInstOperands, |
| 69187 | /* 195786 */ // GIR_Coverage, 13259, |
| 69188 | /* 195786 */ GIR_Done, |
| 69189 | /* 195787 */ // Label 4416: @195787 |
| 69190 | /* 195787 */ GIM_Try, /*On fail goto*//*Label 4417*/ GIMT_Encode4(195890), // Rule ID 21834 // |
| 69191 | /* 195792 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_NoVLX), |
| 69192 | /* 195795 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69193 | /* 195799 */ // (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] }) |
| 69194 | /* 195799 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 69195 | /* 195802 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 69196 | /* 195806 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69197 | /* 195811 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 69198 | /* 195813 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 69199 | /* 195816 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 69200 | /* 195820 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69201 | /* 195825 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 69202 | /* 195828 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 69203 | /* 195832 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 69204 | /* 195835 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 69205 | /* 195840 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69206 | /* 195845 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 69207 | /* 195850 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 69208 | /* 195853 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPABSQZrr), |
| 69209 | /* 195857 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69210 | /* 195862 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 69211 | /* 195865 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 69212 | /* 195867 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69213 | /* 195870 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69214 | /* 195872 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 69215 | /* 195879 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 69216 | /* 195884 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69217 | /* 195889 */ // GIR_Coverage, 21834, |
| 69218 | /* 195889 */ GIR_EraseRootFromParent_Done, |
| 69219 | /* 195890 */ // Label 4417: @195890 |
| 69220 | /* 195890 */ GIM_Reject, |
| 69221 | /* 195891 */ // Label 4414: @195891 |
| 69222 | /* 195891 */ GIM_Reject, |
| 69223 | /* 195892 */ // Label 4394: @195892 |
| 69224 | /* 195892 */ GIM_Try, /*On fail goto*//*Label 4418*/ GIMT_Encode4(196082), |
| 69225 | /* 195897 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 69226 | /* 195900 */ GIM_Try, /*On fail goto*//*Label 4419*/ GIMT_Encode4(195956), // Rule ID 2993 // |
| 69227 | /* 195905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69228 | /* 195908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69229 | /* 195912 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69230 | /* 195916 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69231 | /* 195920 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69232 | /* 195923 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69233 | /* 195927 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69234 | /* 195931 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69235 | /* 195933 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69236 | /* 195940 */ // (abs:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWrm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src) |
| 69237 | /* 195940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWrm), |
| 69238 | /* 195943 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69239 | /* 195945 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69240 | /* 195949 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69241 | /* 195954 */ GIR_RootConstrainSelectedInstOperands, |
| 69242 | /* 195955 */ // GIR_Coverage, 2993, |
| 69243 | /* 195955 */ GIR_EraseRootFromParent_Done, |
| 69244 | /* 195956 */ // Label 4419: @195956 |
| 69245 | /* 195956 */ GIM_Try, /*On fail goto*//*Label 4420*/ GIMT_Encode4(196012), // Rule ID 13319 // |
| 69246 | /* 195961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69247 | /* 195964 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69248 | /* 195968 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69249 | /* 195972 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69250 | /* 195976 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69251 | /* 195979 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69252 | /* 195983 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69253 | /* 195987 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69254 | /* 195989 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69255 | /* 195996 */ // (abs:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWZ128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1) |
| 69256 | /* 195996 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWZ128rm), |
| 69257 | /* 195999 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69258 | /* 196001 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69259 | /* 196005 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69260 | /* 196010 */ GIR_RootConstrainSelectedInstOperands, |
| 69261 | /* 196011 */ // GIR_Coverage, 13319, |
| 69262 | /* 196011 */ GIR_EraseRootFromParent_Done, |
| 69263 | /* 196012 */ // Label 4420: @196012 |
| 69264 | /* 196012 */ GIM_Try, /*On fail goto*//*Label 4421*/ GIMT_Encode4(196035), // Rule ID 2992 // |
| 69265 | /* 196017 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69266 | /* 196020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69267 | /* 196024 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69268 | /* 196028 */ // (abs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src) => (VPABSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src) |
| 69269 | /* 196028 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWrr), |
| 69270 | /* 196033 */ GIR_RootConstrainSelectedInstOperands, |
| 69271 | /* 196034 */ // GIR_Coverage, 2992, |
| 69272 | /* 196034 */ GIR_Done, |
| 69273 | /* 196035 */ // Label 4421: @196035 |
| 69274 | /* 196035 */ GIM_Try, /*On fail goto*//*Label 4422*/ GIMT_Encode4(196058), // Rule ID 3004 // |
| 69275 | /* 196040 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 69276 | /* 196043 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69277 | /* 196047 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69278 | /* 196051 */ // (abs:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src) => (PABSWrr:{ *:[v8i16] } VR128:{ *:[v8i16] }:$src) |
| 69279 | /* 196051 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PABSWrr), |
| 69280 | /* 196056 */ GIR_RootConstrainSelectedInstOperands, |
| 69281 | /* 196057 */ // GIR_Coverage, 3004, |
| 69282 | /* 196057 */ GIR_Done, |
| 69283 | /* 196058 */ // Label 4422: @196058 |
| 69284 | /* 196058 */ GIM_Try, /*On fail goto*//*Label 4423*/ GIMT_Encode4(196081), // Rule ID 13316 // |
| 69285 | /* 196063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69286 | /* 196066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69287 | /* 196070 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69288 | /* 196074 */ // (abs:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) => (VPABSWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) |
| 69289 | /* 196074 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWZ128rr), |
| 69290 | /* 196079 */ GIR_RootConstrainSelectedInstOperands, |
| 69291 | /* 196080 */ // GIR_Coverage, 13316, |
| 69292 | /* 196080 */ GIR_Done, |
| 69293 | /* 196081 */ // Label 4423: @196081 |
| 69294 | /* 196081 */ GIM_Reject, |
| 69295 | /* 196082 */ // Label 4418: @196082 |
| 69296 | /* 196082 */ GIM_Reject, |
| 69297 | /* 196083 */ // Label 4395: @196083 |
| 69298 | /* 196083 */ GIM_Try, /*On fail goto*//*Label 4424*/ GIMT_Encode4(196250), |
| 69299 | /* 196088 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 69300 | /* 196091 */ GIM_Try, /*On fail goto*//*Label 4425*/ GIMT_Encode4(196147), // Rule ID 3001 // |
| 69301 | /* 196096 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 69302 | /* 196099 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69303 | /* 196103 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69304 | /* 196107 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69305 | /* 196111 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69306 | /* 196114 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69307 | /* 196118 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69308 | /* 196122 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69309 | /* 196124 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69310 | /* 196131 */ // (abs:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDYrm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src) |
| 69311 | /* 196131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDYrm), |
| 69312 | /* 196134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69313 | /* 196136 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69314 | /* 196140 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69315 | /* 196145 */ GIR_RootConstrainSelectedInstOperands, |
| 69316 | /* 196146 */ // GIR_Coverage, 3001, |
| 69317 | /* 196146 */ GIR_EraseRootFromParent_Done, |
| 69318 | /* 196147 */ // Label 4425: @196147 |
| 69319 | /* 196147 */ GIM_Try, /*On fail goto*//*Label 4426*/ GIMT_Encode4(196203), // Rule ID 13289 // |
| 69320 | /* 196152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69321 | /* 196155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69322 | /* 196159 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69323 | /* 196163 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69324 | /* 196167 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69325 | /* 196170 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69326 | /* 196174 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69327 | /* 196178 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69328 | /* 196180 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69329 | /* 196187 */ // (abs:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1) |
| 69330 | /* 196187 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDZ256rm), |
| 69331 | /* 196190 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69332 | /* 196192 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69333 | /* 196196 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69334 | /* 196201 */ GIR_RootConstrainSelectedInstOperands, |
| 69335 | /* 196202 */ // GIR_Coverage, 13289, |
| 69336 | /* 196202 */ GIR_EraseRootFromParent_Done, |
| 69337 | /* 196203 */ // Label 4426: @196203 |
| 69338 | /* 196203 */ GIM_Try, /*On fail goto*//*Label 4427*/ GIMT_Encode4(196226), // Rule ID 3000 // |
| 69339 | /* 196208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX), |
| 69340 | /* 196211 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69341 | /* 196215 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69342 | /* 196219 */ // (abs:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src) => (VPABSDYrr:{ *:[v8i32] } VR256:{ *:[v8i32] }:$src) |
| 69343 | /* 196219 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDYrr), |
| 69344 | /* 196224 */ GIR_RootConstrainSelectedInstOperands, |
| 69345 | /* 196225 */ // GIR_Coverage, 3000, |
| 69346 | /* 196225 */ GIR_Done, |
| 69347 | /* 196226 */ // Label 4427: @196226 |
| 69348 | /* 196226 */ GIM_Try, /*On fail goto*//*Label 4428*/ GIMT_Encode4(196249), // Rule ID 13286 // |
| 69349 | /* 196231 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 69350 | /* 196234 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69351 | /* 196238 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69352 | /* 196242 */ // (abs:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) => (VPABSDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) |
| 69353 | /* 196242 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDZ256rr), |
| 69354 | /* 196247 */ GIR_RootConstrainSelectedInstOperands, |
| 69355 | /* 196248 */ // GIR_Coverage, 13286, |
| 69356 | /* 196248 */ GIR_Done, |
| 69357 | /* 196249 */ // Label 4428: @196249 |
| 69358 | /* 196249 */ GIM_Reject, |
| 69359 | /* 196250 */ // Label 4424: @196250 |
| 69360 | /* 196250 */ GIM_Reject, |
| 69361 | /* 196251 */ // Label 4396: @196251 |
| 69362 | /* 196251 */ GIM_Try, /*On fail goto*//*Label 4429*/ GIMT_Encode4(196335), |
| 69363 | /* 196256 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 69364 | /* 196259 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69365 | /* 196263 */ GIM_Try, /*On fail goto*//*Label 4430*/ GIMT_Encode4(196315), // Rule ID 13253 // |
| 69366 | /* 196268 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69367 | /* 196271 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69368 | /* 196275 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69369 | /* 196279 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69370 | /* 196282 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69371 | /* 196286 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69372 | /* 196290 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69373 | /* 196292 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69374 | /* 196299 */ // (abs:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1) |
| 69375 | /* 196299 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSQZrm), |
| 69376 | /* 196302 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69377 | /* 196304 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69378 | /* 196308 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69379 | /* 196313 */ GIR_RootConstrainSelectedInstOperands, |
| 69380 | /* 196314 */ // GIR_Coverage, 13253, |
| 69381 | /* 196314 */ GIR_EraseRootFromParent_Done, |
| 69382 | /* 196315 */ // Label 4430: @196315 |
| 69383 | /* 196315 */ GIM_Try, /*On fail goto*//*Label 4431*/ GIMT_Encode4(196334), // Rule ID 13250 // |
| 69384 | /* 196320 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69385 | /* 196323 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69386 | /* 196327 */ // (abs:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) => (VPABSQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) |
| 69387 | /* 196327 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSQZrr), |
| 69388 | /* 196332 */ GIR_RootConstrainSelectedInstOperands, |
| 69389 | /* 196333 */ // GIR_Coverage, 13250, |
| 69390 | /* 196333 */ GIR_Done, |
| 69391 | /* 196334 */ // Label 4431: @196334 |
| 69392 | /* 196334 */ GIM_Reject, |
| 69393 | /* 196335 */ // Label 4429: @196335 |
| 69394 | /* 196335 */ GIM_Reject, |
| 69395 | /* 196336 */ // Label 4397: @196336 |
| 69396 | /* 196336 */ GIM_Try, /*On fail goto*//*Label 4432*/ GIMT_Encode4(196526), |
| 69397 | /* 196341 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 69398 | /* 196344 */ GIM_Try, /*On fail goto*//*Label 4433*/ GIMT_Encode4(196400), // Rule ID 2991 // |
| 69399 | /* 196349 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69400 | /* 196352 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69401 | /* 196356 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69402 | /* 196360 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69403 | /* 196364 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69404 | /* 196367 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69405 | /* 196371 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69406 | /* 196375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69407 | /* 196377 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69408 | /* 196384 */ // (abs:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBrm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src) |
| 69409 | /* 196384 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBrm), |
| 69410 | /* 196387 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69411 | /* 196389 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69412 | /* 196393 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69413 | /* 196398 */ GIR_RootConstrainSelectedInstOperands, |
| 69414 | /* 196399 */ // GIR_Coverage, 2991, |
| 69415 | /* 196399 */ GIR_EraseRootFromParent_Done, |
| 69416 | /* 196400 */ // Label 4433: @196400 |
| 69417 | /* 196400 */ GIM_Try, /*On fail goto*//*Label 4434*/ GIMT_Encode4(196456), // Rule ID 13337 // |
| 69418 | /* 196405 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69419 | /* 196408 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69420 | /* 196412 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69421 | /* 196416 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69422 | /* 196420 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69423 | /* 196423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69424 | /* 196427 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69425 | /* 196431 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69426 | /* 196433 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69427 | /* 196440 */ // (abs:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBZ128rm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1) |
| 69428 | /* 196440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBZ128rm), |
| 69429 | /* 196443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69430 | /* 196445 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69431 | /* 196449 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69432 | /* 196454 */ GIR_RootConstrainSelectedInstOperands, |
| 69433 | /* 196455 */ // GIR_Coverage, 13337, |
| 69434 | /* 196455 */ GIR_EraseRootFromParent_Done, |
| 69435 | /* 196456 */ // Label 4434: @196456 |
| 69436 | /* 196456 */ GIM_Try, /*On fail goto*//*Label 4435*/ GIMT_Encode4(196479), // Rule ID 2990 // |
| 69437 | /* 196461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX_Or_NoBWI), |
| 69438 | /* 196464 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69439 | /* 196468 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69440 | /* 196472 */ // (abs:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src) => (VPABSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src) |
| 69441 | /* 196472 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBrr), |
| 69442 | /* 196477 */ GIR_RootConstrainSelectedInstOperands, |
| 69443 | /* 196478 */ // GIR_Coverage, 2990, |
| 69444 | /* 196478 */ GIR_Done, |
| 69445 | /* 196479 */ // Label 4435: @196479 |
| 69446 | /* 196479 */ GIM_Try, /*On fail goto*//*Label 4436*/ GIMT_Encode4(196502), // Rule ID 3002 // |
| 69447 | /* 196484 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSSE3), |
| 69448 | /* 196487 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69449 | /* 196491 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69450 | /* 196495 */ // (abs:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src) => (PABSBrr:{ *:[v16i8] } VR128:{ *:[v16i8] }:$src) |
| 69451 | /* 196495 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::PABSBrr), |
| 69452 | /* 196500 */ GIR_RootConstrainSelectedInstOperands, |
| 69453 | /* 196501 */ // GIR_Coverage, 3002, |
| 69454 | /* 196501 */ GIR_Done, |
| 69455 | /* 196502 */ // Label 4436: @196502 |
| 69456 | /* 196502 */ GIM_Try, /*On fail goto*//*Label 4437*/ GIMT_Encode4(196525), // Rule ID 13334 // |
| 69457 | /* 196507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69458 | /* 196510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69459 | /* 196514 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69460 | /* 196518 */ // (abs:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) => (VPABSBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) |
| 69461 | /* 196518 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBZ128rr), |
| 69462 | /* 196523 */ GIR_RootConstrainSelectedInstOperands, |
| 69463 | /* 196524 */ // GIR_Coverage, 13334, |
| 69464 | /* 196524 */ GIR_Done, |
| 69465 | /* 196525 */ // Label 4437: @196525 |
| 69466 | /* 196525 */ GIM_Reject, |
| 69467 | /* 196526 */ // Label 4432: @196526 |
| 69468 | /* 196526 */ GIM_Reject, |
| 69469 | /* 196527 */ // Label 4398: @196527 |
| 69470 | /* 196527 */ GIM_Try, /*On fail goto*//*Label 4438*/ GIMT_Encode4(196694), |
| 69471 | /* 196532 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 69472 | /* 196535 */ GIM_Try, /*On fail goto*//*Label 4439*/ GIMT_Encode4(196591), // Rule ID 2999 // |
| 69473 | /* 196540 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69474 | /* 196543 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69475 | /* 196547 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69476 | /* 196551 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69477 | /* 196555 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69478 | /* 196558 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69479 | /* 196562 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69480 | /* 196566 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69481 | /* 196568 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69482 | /* 196575 */ // (abs:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWYrm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src) |
| 69483 | /* 196575 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWYrm), |
| 69484 | /* 196578 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69485 | /* 196580 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69486 | /* 196584 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69487 | /* 196589 */ GIR_RootConstrainSelectedInstOperands, |
| 69488 | /* 196590 */ // GIR_Coverage, 2999, |
| 69489 | /* 196590 */ GIR_EraseRootFromParent_Done, |
| 69490 | /* 196591 */ // Label 4439: @196591 |
| 69491 | /* 196591 */ GIM_Try, /*On fail goto*//*Label 4440*/ GIMT_Encode4(196647), // Rule ID 13313 // |
| 69492 | /* 196596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69493 | /* 196599 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69494 | /* 196603 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69495 | /* 196607 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69496 | /* 196611 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69497 | /* 196614 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69498 | /* 196618 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69499 | /* 196622 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69500 | /* 196624 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69501 | /* 196631 */ // (abs:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src1) |
| 69502 | /* 196631 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWZ256rm), |
| 69503 | /* 196634 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69504 | /* 196636 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69505 | /* 196640 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69506 | /* 196645 */ GIR_RootConstrainSelectedInstOperands, |
| 69507 | /* 196646 */ // GIR_Coverage, 13313, |
| 69508 | /* 196646 */ GIR_EraseRootFromParent_Done, |
| 69509 | /* 196647 */ // Label 4440: @196647 |
| 69510 | /* 196647 */ GIM_Try, /*On fail goto*//*Label 4441*/ GIMT_Encode4(196670), // Rule ID 2998 // |
| 69511 | /* 196652 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69512 | /* 196655 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69513 | /* 196659 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69514 | /* 196663 */ // (abs:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src) => (VPABSWYrr:{ *:[v16i16] } VR256:{ *:[v16i16] }:$src) |
| 69515 | /* 196663 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWYrr), |
| 69516 | /* 196668 */ GIR_RootConstrainSelectedInstOperands, |
| 69517 | /* 196669 */ // GIR_Coverage, 2998, |
| 69518 | /* 196669 */ GIR_Done, |
| 69519 | /* 196670 */ // Label 4441: @196670 |
| 69520 | /* 196670 */ GIM_Try, /*On fail goto*//*Label 4442*/ GIMT_Encode4(196693), // Rule ID 13310 // |
| 69521 | /* 196675 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69522 | /* 196678 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69523 | /* 196682 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69524 | /* 196686 */ // (abs:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) => (VPABSWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) |
| 69525 | /* 196686 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWZ256rr), |
| 69526 | /* 196691 */ GIR_RootConstrainSelectedInstOperands, |
| 69527 | /* 196692 */ // GIR_Coverage, 13310, |
| 69528 | /* 196692 */ GIR_Done, |
| 69529 | /* 196693 */ // Label 4442: @196693 |
| 69530 | /* 196693 */ GIM_Reject, |
| 69531 | /* 196694 */ // Label 4438: @196694 |
| 69532 | /* 196694 */ GIM_Reject, |
| 69533 | /* 196695 */ // Label 4399: @196695 |
| 69534 | /* 196695 */ GIM_Try, /*On fail goto*//*Label 4443*/ GIMT_Encode4(196779), |
| 69535 | /* 196700 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 69536 | /* 196703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69537 | /* 196707 */ GIM_Try, /*On fail goto*//*Label 4444*/ GIMT_Encode4(196759), // Rule ID 13280 // |
| 69538 | /* 196712 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69539 | /* 196715 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69540 | /* 196719 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69541 | /* 196723 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69542 | /* 196726 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69543 | /* 196730 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69544 | /* 196734 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69545 | /* 196736 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69546 | /* 196743 */ // (abs:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1) |
| 69547 | /* 196743 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSDZrm), |
| 69548 | /* 196746 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69549 | /* 196748 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69550 | /* 196752 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69551 | /* 196757 */ GIR_RootConstrainSelectedInstOperands, |
| 69552 | /* 196758 */ // GIR_Coverage, 13280, |
| 69553 | /* 196758 */ GIR_EraseRootFromParent_Done, |
| 69554 | /* 196759 */ // Label 4444: @196759 |
| 69555 | /* 196759 */ GIM_Try, /*On fail goto*//*Label 4445*/ GIMT_Encode4(196778), // Rule ID 13277 // |
| 69556 | /* 196764 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 69557 | /* 196767 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69558 | /* 196771 */ // (abs:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) => (VPABSDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) |
| 69559 | /* 196771 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSDZrr), |
| 69560 | /* 196776 */ GIR_RootConstrainSelectedInstOperands, |
| 69561 | /* 196777 */ // GIR_Coverage, 13277, |
| 69562 | /* 196777 */ GIR_Done, |
| 69563 | /* 196778 */ // Label 4445: @196778 |
| 69564 | /* 196778 */ GIM_Reject, |
| 69565 | /* 196779 */ // Label 4443: @196779 |
| 69566 | /* 196779 */ GIM_Reject, |
| 69567 | /* 196780 */ // Label 4400: @196780 |
| 69568 | /* 196780 */ GIM_Try, /*On fail goto*//*Label 4446*/ GIMT_Encode4(196947), |
| 69569 | /* 196785 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 69570 | /* 196788 */ GIM_Try, /*On fail goto*//*Label 4447*/ GIMT_Encode4(196844), // Rule ID 2997 // |
| 69571 | /* 196793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69572 | /* 196796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69573 | /* 196800 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69574 | /* 196804 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69575 | /* 196808 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69576 | /* 196811 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69577 | /* 196815 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69578 | /* 196819 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69579 | /* 196821 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69580 | /* 196828 */ // (abs:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBYrm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src) |
| 69581 | /* 196828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBYrm), |
| 69582 | /* 196831 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69583 | /* 196833 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 69584 | /* 196837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69585 | /* 196842 */ GIR_RootConstrainSelectedInstOperands, |
| 69586 | /* 196843 */ // GIR_Coverage, 2997, |
| 69587 | /* 196843 */ GIR_EraseRootFromParent_Done, |
| 69588 | /* 196844 */ // Label 4447: @196844 |
| 69589 | /* 196844 */ GIM_Try, /*On fail goto*//*Label 4448*/ GIMT_Encode4(196900), // Rule ID 13331 // |
| 69590 | /* 196849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69591 | /* 196852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69592 | /* 196856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69593 | /* 196860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69594 | /* 196864 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69595 | /* 196867 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69596 | /* 196871 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69597 | /* 196875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69598 | /* 196877 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69599 | /* 196884 */ // (abs:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBZ256rm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src1) |
| 69600 | /* 196884 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBZ256rm), |
| 69601 | /* 196887 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69602 | /* 196889 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69603 | /* 196893 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69604 | /* 196898 */ GIR_RootConstrainSelectedInstOperands, |
| 69605 | /* 196899 */ // GIR_Coverage, 13331, |
| 69606 | /* 196899 */ GIR_EraseRootFromParent_Done, |
| 69607 | /* 196900 */ // Label 4448: @196900 |
| 69608 | /* 196900 */ GIM_Try, /*On fail goto*//*Label 4449*/ GIMT_Encode4(196923), // Rule ID 2996 // |
| 69609 | /* 196905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX2_NoVLX_Or_NoBWI), |
| 69610 | /* 196908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69611 | /* 196912 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69612 | /* 196916 */ // (abs:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src) => (VPABSBYrr:{ *:[v32i8] } VR256:{ *:[v32i8] }:$src) |
| 69613 | /* 196916 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBYrr), |
| 69614 | /* 196921 */ GIR_RootConstrainSelectedInstOperands, |
| 69615 | /* 196922 */ // GIR_Coverage, 2996, |
| 69616 | /* 196922 */ GIR_Done, |
| 69617 | /* 196923 */ // Label 4449: @196923 |
| 69618 | /* 196923 */ GIM_Try, /*On fail goto*//*Label 4450*/ GIMT_Encode4(196946), // Rule ID 13328 // |
| 69619 | /* 196928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI_HasVLX), |
| 69620 | /* 196931 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69621 | /* 196935 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 69622 | /* 196939 */ // (abs:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) => (VPABSBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) |
| 69623 | /* 196939 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBZ256rr), |
| 69624 | /* 196944 */ GIR_RootConstrainSelectedInstOperands, |
| 69625 | /* 196945 */ // GIR_Coverage, 13328, |
| 69626 | /* 196945 */ GIR_Done, |
| 69627 | /* 196946 */ // Label 4450: @196946 |
| 69628 | /* 196946 */ GIM_Reject, |
| 69629 | /* 196947 */ // Label 4446: @196947 |
| 69630 | /* 196947 */ GIM_Reject, |
| 69631 | /* 196948 */ // Label 4401: @196948 |
| 69632 | /* 196948 */ GIM_Try, /*On fail goto*//*Label 4451*/ GIMT_Encode4(197032), |
| 69633 | /* 196953 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 69634 | /* 196956 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69635 | /* 196960 */ GIM_Try, /*On fail goto*//*Label 4452*/ GIMT_Encode4(197012), // Rule ID 13307 // |
| 69636 | /* 196965 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69637 | /* 196968 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69638 | /* 196972 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69639 | /* 196976 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69640 | /* 196979 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69641 | /* 196983 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69642 | /* 196987 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69643 | /* 196989 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69644 | /* 196996 */ // (abs:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSWZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src1) |
| 69645 | /* 196996 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSWZrm), |
| 69646 | /* 196999 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69647 | /* 197001 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69648 | /* 197005 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69649 | /* 197010 */ GIR_RootConstrainSelectedInstOperands, |
| 69650 | /* 197011 */ // GIR_Coverage, 13307, |
| 69651 | /* 197011 */ GIR_EraseRootFromParent_Done, |
| 69652 | /* 197012 */ // Label 4452: @197012 |
| 69653 | /* 197012 */ GIM_Try, /*On fail goto*//*Label 4453*/ GIMT_Encode4(197031), // Rule ID 13304 // |
| 69654 | /* 197017 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69655 | /* 197020 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69656 | /* 197024 */ // (abs:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1) => (VPABSWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1) |
| 69657 | /* 197024 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSWZrr), |
| 69658 | /* 197029 */ GIR_RootConstrainSelectedInstOperands, |
| 69659 | /* 197030 */ // GIR_Coverage, 13304, |
| 69660 | /* 197030 */ GIR_Done, |
| 69661 | /* 197031 */ // Label 4453: @197031 |
| 69662 | /* 197031 */ GIM_Reject, |
| 69663 | /* 197032 */ // Label 4451: @197032 |
| 69664 | /* 197032 */ GIM_Reject, |
| 69665 | /* 197033 */ // Label 4402: @197033 |
| 69666 | /* 197033 */ GIM_Try, /*On fail goto*//*Label 4454*/ GIMT_Encode4(197117), |
| 69667 | /* 197038 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 69668 | /* 197041 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69669 | /* 197045 */ GIM_Try, /*On fail goto*//*Label 4455*/ GIMT_Encode4(197097), // Rule ID 13325 // |
| 69670 | /* 197050 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69671 | /* 197053 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 69672 | /* 197057 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 69673 | /* 197061 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 69674 | /* 197064 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 69675 | /* 197068 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 69676 | /* 197072 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 69677 | /* 197074 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 69678 | /* 197081 */ // (abs:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPABSBZrm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src1) |
| 69679 | /* 197081 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPABSBZrm), |
| 69680 | /* 197084 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69681 | /* 197086 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 69682 | /* 197090 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 69683 | /* 197095 */ GIR_RootConstrainSelectedInstOperands, |
| 69684 | /* 197096 */ // GIR_Coverage, 13325, |
| 69685 | /* 197096 */ GIR_EraseRootFromParent_Done, |
| 69686 | /* 197097 */ // Label 4455: @197097 |
| 69687 | /* 197097 */ GIM_Try, /*On fail goto*//*Label 4456*/ GIMT_Encode4(197116), // Rule ID 13322 // |
| 69688 | /* 197102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBWI), |
| 69689 | /* 197105 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69690 | /* 197109 */ // (abs:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1) => (VPABSBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1) |
| 69691 | /* 197109 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPABSBZrr), |
| 69692 | /* 197114 */ GIR_RootConstrainSelectedInstOperands, |
| 69693 | /* 197115 */ // GIR_Coverage, 13322, |
| 69694 | /* 197115 */ GIR_Done, |
| 69695 | /* 197116 */ // Label 4456: @197116 |
| 69696 | /* 197116 */ GIM_Reject, |
| 69697 | /* 197117 */ // Label 4454: @197117 |
| 69698 | /* 197117 */ GIM_Reject, |
| 69699 | /* 197118 */ // Label 4403: @197118 |
| 69700 | /* 197118 */ GIM_Reject, |
| 69701 | /* 197119 */ // Label 60: @197119 |
| 69702 | /* 197119 */ GIM_Try, /*On fail goto*//*Label 4457*/ GIMT_Encode4(197134), // Rule ID 629 // |
| 69703 | /* 197124 */ // MIs[0] dst |
| 69704 | /* 197124 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/0, |
| 69705 | /* 197127 */ // (br (bb:{ *:[Other] }):$dst) => (JMP_1 (bb:{ *:[Other] }):$dst) |
| 69706 | /* 197127 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::JMP_1), |
| 69707 | /* 197132 */ GIR_RootConstrainSelectedInstOperands, |
| 69708 | /* 197133 */ // GIR_Coverage, 629, |
| 69709 | /* 197133 */ GIR_Done, |
| 69710 | /* 197134 */ // Label 4457: @197134 |
| 69711 | /* 197134 */ GIM_Reject, |
| 69712 | /* 197135 */ // Label 61: @197135 |
| 69713 | /* 197135 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(22), /*)*//*default:*//*Label 4472*/ GIMT_Encode4(200063), |
| 69714 | /* 197146 */ /*GILLT_s1*//*Label 4458*/ GIMT_Encode4(197234), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 69715 | /* 197174 */ /*GILLT_v2s1*//*Label 4459*/ GIMT_Encode4(197475), |
| 69716 | /* 197178 */ /*GILLT_v2s64*//*Label 4460*/ GIMT_Encode4(197676), |
| 69717 | /* 197182 */ /*GILLT_v4s1*//*Label 4461*/ GIMT_Encode4(198157), |
| 69718 | /* 197186 */ /*GILLT_v4s32*//*Label 4462*/ GIMT_Encode4(198318), |
| 69719 | /* 197190 */ /*GILLT_v4s64*//*Label 4463*/ GIMT_Encode4(198799), |
| 69720 | /* 197194 */ /*GILLT_v8s1*//*Label 4464*/ GIMT_Encode4(198882), |
| 69721 | /* 197198 */ /*GILLT_v8s16*//*Label 4465*/ GIMT_Encode4(199003), |
| 69722 | /* 197202 */ /*GILLT_v8s32*//*Label 4466*/ GIMT_Encode4(199484), GIMT_Encode4(0), |
| 69723 | /* 197210 */ /*GILLT_v16s1*//*Label 4467*/ GIMT_Encode4(199567), |
| 69724 | /* 197214 */ /*GILLT_v16s8*//*Label 4468*/ GIMT_Encode4(199648), |
| 69725 | /* 197218 */ /*GILLT_v16s16*//*Label 4469*/ GIMT_Encode4(199889), GIMT_Encode4(0), |
| 69726 | /* 197226 */ /*GILLT_v32s1*//*Label 4470*/ GIMT_Encode4(199972), |
| 69727 | /* 197230 */ /*GILLT_v32s8*//*Label 4471*/ GIMT_Encode4(200013), |
| 69728 | /* 197234 */ // Label 4458: @197234 |
| 69729 | /* 197234 */ GIM_Try, /*On fail goto*//*Label 4473*/ GIMT_Encode4(197274), // Rule ID 19611 // |
| 69730 | /* 197239 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s1, |
| 69731 | /* 197242 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 69732 | /* 197246 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 69733 | /* 197250 */ // MIs[0] Operand 2 |
| 69734 | /* 197250 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69735 | /* 197261 */ // (extract_subvector:{ *:[v1i1] } VK2:{ *:[v2i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK2:{ *:[v2i1] }:$src, VK1:{ *:[i32] }) |
| 69736 | /* 197261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69737 | /* 197264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69738 | /* 197266 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69739 | /* 197268 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 69740 | /* 197273 */ // GIR_Coverage, 19611, |
| 69741 | /* 197273 */ GIR_EraseRootFromParent_Done, |
| 69742 | /* 197274 */ // Label 4473: @197274 |
| 69743 | /* 197274 */ GIM_Try, /*On fail goto*//*Label 4474*/ GIMT_Encode4(197314), // Rule ID 19613 // |
| 69744 | /* 197279 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 69745 | /* 197282 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 69746 | /* 197286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 69747 | /* 197290 */ // MIs[0] Operand 2 |
| 69748 | /* 197290 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69749 | /* 197301 */ // (extract_subvector:{ *:[v1i1] } VK4:{ *:[v4i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK4:{ *:[v4i1] }:$src, VK1:{ *:[i32] }) |
| 69750 | /* 197301 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69751 | /* 197304 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69752 | /* 197306 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69753 | /* 197308 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 69754 | /* 197313 */ // GIR_Coverage, 19613, |
| 69755 | /* 197313 */ GIR_EraseRootFromParent_Done, |
| 69756 | /* 197314 */ // Label 4474: @197314 |
| 69757 | /* 197314 */ GIM_Try, /*On fail goto*//*Label 4475*/ GIMT_Encode4(197354), // Rule ID 19615 // |
| 69758 | /* 197319 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 69759 | /* 197322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 69760 | /* 197326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 69761 | /* 197330 */ // MIs[0] Operand 2 |
| 69762 | /* 197330 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69763 | /* 197341 */ // (extract_subvector:{ *:[v1i1] } VK8:{ *:[v8i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK8:{ *:[v8i1] }:$src, VK1:{ *:[i32] }) |
| 69764 | /* 197341 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69765 | /* 197344 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69766 | /* 197346 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69767 | /* 197348 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 69768 | /* 197353 */ // GIR_Coverage, 19615, |
| 69769 | /* 197353 */ GIR_EraseRootFromParent_Done, |
| 69770 | /* 197354 */ // Label 4475: @197354 |
| 69771 | /* 197354 */ GIM_Try, /*On fail goto*//*Label 4476*/ GIMT_Encode4(197394), // Rule ID 19617 // |
| 69772 | /* 197359 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 69773 | /* 197362 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 69774 | /* 197366 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 69775 | /* 197370 */ // MIs[0] Operand 2 |
| 69776 | /* 197370 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69777 | /* 197381 */ // (extract_subvector:{ *:[v1i1] } VK16:{ *:[v16i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK16:{ *:[v16i1] }:$src, VK1:{ *:[i32] }) |
| 69778 | /* 197381 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69779 | /* 197384 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69780 | /* 197386 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69781 | /* 197388 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 69782 | /* 197393 */ // GIR_Coverage, 19617, |
| 69783 | /* 197393 */ GIR_EraseRootFromParent_Done, |
| 69784 | /* 197394 */ // Label 4476: @197394 |
| 69785 | /* 197394 */ GIM_Try, /*On fail goto*//*Label 4477*/ GIMT_Encode4(197434), // Rule ID 19619 // |
| 69786 | /* 197399 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 69787 | /* 197402 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 69788 | /* 197406 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 69789 | /* 197410 */ // MIs[0] Operand 2 |
| 69790 | /* 197410 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69791 | /* 197421 */ // (extract_subvector:{ *:[v1i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK32:{ *:[v32i1] }:$src, VK1:{ *:[i32] }) |
| 69792 | /* 197421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69793 | /* 197424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69794 | /* 197426 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69795 | /* 197428 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 69796 | /* 197433 */ // GIR_Coverage, 19619, |
| 69797 | /* 197433 */ GIR_EraseRootFromParent_Done, |
| 69798 | /* 197434 */ // Label 4477: @197434 |
| 69799 | /* 197434 */ GIM_Try, /*On fail goto*//*Label 4478*/ GIMT_Encode4(197474), // Rule ID 19621 // |
| 69800 | /* 197439 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 69801 | /* 197442 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK1RegClassID), |
| 69802 | /* 197446 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 69803 | /* 197450 */ // MIs[0] Operand 2 |
| 69804 | /* 197450 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69805 | /* 197461 */ // (extract_subvector:{ *:[v1i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v1i1] } VK64:{ *:[v64i1] }:$src, VK1:{ *:[i32] }) |
| 69806 | /* 197461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69807 | /* 197464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69808 | /* 197466 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69809 | /* 197468 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK1RegClassID), |
| 69810 | /* 197473 */ // GIR_Coverage, 19621, |
| 69811 | /* 197473 */ GIR_EraseRootFromParent_Done, |
| 69812 | /* 197474 */ // Label 4478: @197474 |
| 69813 | /* 197474 */ GIM_Reject, |
| 69814 | /* 197475 */ // Label 4459: @197475 |
| 69815 | /* 197475 */ GIM_Try, /*On fail goto*//*Label 4479*/ GIMT_Encode4(197515), // Rule ID 19623 // |
| 69816 | /* 197480 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s1, |
| 69817 | /* 197483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 69818 | /* 197487 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 69819 | /* 197491 */ // MIs[0] Operand 2 |
| 69820 | /* 197491 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69821 | /* 197502 */ // (extract_subvector:{ *:[v2i1] } VK4:{ *:[v4i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK4:{ *:[v4i1] }:$src, VK2:{ *:[i32] }) |
| 69822 | /* 197502 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69823 | /* 197505 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69824 | /* 197507 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69825 | /* 197509 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 69826 | /* 197514 */ // GIR_Coverage, 19623, |
| 69827 | /* 197514 */ GIR_EraseRootFromParent_Done, |
| 69828 | /* 197515 */ // Label 4479: @197515 |
| 69829 | /* 197515 */ GIM_Try, /*On fail goto*//*Label 4480*/ GIMT_Encode4(197555), // Rule ID 19625 // |
| 69830 | /* 197520 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 69831 | /* 197523 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 69832 | /* 197527 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 69833 | /* 197531 */ // MIs[0] Operand 2 |
| 69834 | /* 197531 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69835 | /* 197542 */ // (extract_subvector:{ *:[v2i1] } VK8:{ *:[v8i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK8:{ *:[v8i1] }:$src, VK2:{ *:[i32] }) |
| 69836 | /* 197542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69837 | /* 197545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69838 | /* 197547 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69839 | /* 197549 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 69840 | /* 197554 */ // GIR_Coverage, 19625, |
| 69841 | /* 197554 */ GIR_EraseRootFromParent_Done, |
| 69842 | /* 197555 */ // Label 4480: @197555 |
| 69843 | /* 197555 */ GIM_Try, /*On fail goto*//*Label 4481*/ GIMT_Encode4(197595), // Rule ID 19627 // |
| 69844 | /* 197560 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 69845 | /* 197563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 69846 | /* 197567 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 69847 | /* 197571 */ // MIs[0] Operand 2 |
| 69848 | /* 197571 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69849 | /* 197582 */ // (extract_subvector:{ *:[v2i1] } VK16:{ *:[v16i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK16:{ *:[v16i1] }:$src, VK2:{ *:[i32] }) |
| 69850 | /* 197582 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69851 | /* 197585 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69852 | /* 197587 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69853 | /* 197589 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 69854 | /* 197594 */ // GIR_Coverage, 19627, |
| 69855 | /* 197594 */ GIR_EraseRootFromParent_Done, |
| 69856 | /* 197595 */ // Label 4481: @197595 |
| 69857 | /* 197595 */ GIM_Try, /*On fail goto*//*Label 4482*/ GIMT_Encode4(197635), // Rule ID 19629 // |
| 69858 | /* 197600 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 69859 | /* 197603 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 69860 | /* 197607 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 69861 | /* 197611 */ // MIs[0] Operand 2 |
| 69862 | /* 197611 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69863 | /* 197622 */ // (extract_subvector:{ *:[v2i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK32:{ *:[v32i1] }:$src, VK2:{ *:[i32] }) |
| 69864 | /* 197622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69865 | /* 197625 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69866 | /* 197627 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69867 | /* 197629 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 69868 | /* 197634 */ // GIR_Coverage, 19629, |
| 69869 | /* 197634 */ GIR_EraseRootFromParent_Done, |
| 69870 | /* 197635 */ // Label 4482: @197635 |
| 69871 | /* 197635 */ GIM_Try, /*On fail goto*//*Label 4483*/ GIMT_Encode4(197675), // Rule ID 19631 // |
| 69872 | /* 197640 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 69873 | /* 197643 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK2RegClassID), |
| 69874 | /* 197647 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 69875 | /* 197651 */ // MIs[0] Operand 2 |
| 69876 | /* 197651 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69877 | /* 197662 */ // (extract_subvector:{ *:[v2i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v2i1] } VK64:{ *:[v64i1] }:$src, VK2:{ *:[i32] }) |
| 69878 | /* 197662 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69879 | /* 197665 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69880 | /* 197667 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 69881 | /* 197669 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK2RegClassID), |
| 69882 | /* 197674 */ // GIR_Coverage, 19631, |
| 69883 | /* 197674 */ GIR_EraseRootFromParent_Done, |
| 69884 | /* 197675 */ // Label 4483: @197675 |
| 69885 | /* 197675 */ GIM_Reject, |
| 69886 | /* 197676 */ // Label 4460: @197676 |
| 69887 | /* 197676 */ GIM_Try, /*On fail goto*//*Label 4484*/ GIMT_Encode4(197747), // Rule ID 19051 // |
| 69888 | /* 197681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoVLX), |
| 69889 | /* 197684 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 69890 | /* 197687 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69891 | /* 197691 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69892 | /* 197695 */ // MIs[0] Operand 2 |
| 69893 | /* 197695 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2), |
| 69894 | /* 197706 */ // (extract_subvector:{ *:[v2i64] } VR512:{ *:[v8i64] }:$src, 2:{ *:[iPTR] }) => (VEXTRACTI128rri:{ *:[v2i64] } (EXTRACT_SUBREG:{ *:[v4i64] } VR512:{ *:[v8i64] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 69895 | /* 197706 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s64, |
| 69896 | /* 197709 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69897 | /* 197713 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69898 | /* 197718 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 69899 | /* 197724 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 69900 | /* 197729 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69901 | /* 197734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI128rri), |
| 69902 | /* 197737 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69903 | /* 197739 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 69904 | /* 197742 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 69905 | /* 197745 */ GIR_RootConstrainSelectedInstOperands, |
| 69906 | /* 197746 */ // GIR_Coverage, 19051, |
| 69907 | /* 197746 */ GIR_EraseRootFromParent_Done, |
| 69908 | /* 197747 */ // Label 4484: @197747 |
| 69909 | /* 197747 */ GIM_Try, /*On fail goto*//*Label 4485*/ GIMT_Encode4(197818), // Rule ID 19052 // |
| 69910 | /* 197752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoVLX), |
| 69911 | /* 197755 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 69912 | /* 197758 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 69913 | /* 197762 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69914 | /* 197766 */ // MIs[0] Operand 2 |
| 69915 | /* 197766 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2), |
| 69916 | /* 197777 */ // (extract_subvector:{ *:[v2f64] } VR512:{ *:[v8f64] }:$src, 2:{ *:[iPTR] }) => (VEXTRACTF128rri:{ *:[v2f64] } (EXTRACT_SUBREG:{ *:[v4f64] } VR512:{ *:[v8f64] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 69917 | /* 197777 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s64, |
| 69918 | /* 197780 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69919 | /* 197784 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69920 | /* 197789 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 69921 | /* 197795 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 69922 | /* 197800 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69923 | /* 197805 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF128rri), |
| 69924 | /* 197808 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69925 | /* 197810 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 69926 | /* 197813 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 69927 | /* 197816 */ GIR_RootConstrainSelectedInstOperands, |
| 69928 | /* 197817 */ // GIR_Coverage, 19052, |
| 69929 | /* 197817 */ GIR_EraseRootFromParent_Done, |
| 69930 | /* 197818 */ // Label 4485: @197818 |
| 69931 | /* 197818 */ GIM_Try, /*On fail goto*//*Label 4486*/ GIMT_Encode4(197889), // Rule ID 19058 // |
| 69932 | /* 197823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 69933 | /* 197826 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 69934 | /* 197829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69935 | /* 197833 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69936 | /* 197837 */ // MIs[0] Operand 2 |
| 69937 | /* 197837 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2), |
| 69938 | /* 197848 */ // (extract_subvector:{ *:[v2i64] } VR512:{ *:[v8i64] }:$src, 2:{ *:[iPTR] }) => (VEXTRACTI32X4Z256rri:{ *:[v2i64] } (EXTRACT_SUBREG:{ *:[v4i64] } VR512:{ *:[v8i64] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 69939 | /* 197848 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s64, |
| 69940 | /* 197851 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69941 | /* 197855 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69942 | /* 197860 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 69943 | /* 197866 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 69944 | /* 197871 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69945 | /* 197876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI32X4Z256rri), |
| 69946 | /* 197879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69947 | /* 197881 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 69948 | /* 197884 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 69949 | /* 197887 */ GIR_RootConstrainSelectedInstOperands, |
| 69950 | /* 197888 */ // GIR_Coverage, 19058, |
| 69951 | /* 197888 */ GIR_EraseRootFromParent_Done, |
| 69952 | /* 197889 */ // Label 4486: @197889 |
| 69953 | /* 197889 */ GIM_Try, /*On fail goto*//*Label 4487*/ GIMT_Encode4(197960), // Rule ID 19059 // |
| 69954 | /* 197894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 69955 | /* 197897 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 69956 | /* 197900 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 69957 | /* 197904 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 69958 | /* 197908 */ // MIs[0] Operand 2 |
| 69959 | /* 197908 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(2), |
| 69960 | /* 197919 */ // (extract_subvector:{ *:[v2f64] } VR512:{ *:[v8f64] }:$src, 2:{ *:[iPTR] }) => (VEXTRACTF32X4Z256rri:{ *:[v2f64] } (EXTRACT_SUBREG:{ *:[v4f64] } VR512:{ *:[v8f64] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 69961 | /* 197919 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s64, |
| 69962 | /* 197922 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69963 | /* 197926 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 69964 | /* 197931 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 69965 | /* 197937 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 69966 | /* 197942 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 69967 | /* 197947 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF32X4Z256rri), |
| 69968 | /* 197950 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69969 | /* 197952 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 69970 | /* 197955 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 69971 | /* 197958 */ GIR_RootConstrainSelectedInstOperands, |
| 69972 | /* 197959 */ // GIR_Coverage, 19059, |
| 69973 | /* 197959 */ GIR_EraseRootFromParent_Done, |
| 69974 | /* 197960 */ // Label 4487: @197960 |
| 69975 | /* 197960 */ GIM_Try, /*On fail goto*//*Label 4488*/ GIMT_Encode4(198009), // Rule ID 23089 // |
| 69976 | /* 197965 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 69977 | /* 197968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 69978 | /* 197972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69979 | /* 197976 */ // MIs[0] Operand 2 |
| 69980 | /* 197976 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69981 | /* 197987 */ // (extract_subvector:{ *:[v2i64] } VR256:{ *:[v4i64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v2i64] } VR256:{ *:[v4i64] }:$src, sub_xmm:{ *:[i32] }) |
| 69982 | /* 197987 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69983 | /* 197990 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69984 | /* 197992 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 69985 | /* 197998 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 69986 | /* 198003 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 69987 | /* 198008 */ // GIR_Coverage, 23089, |
| 69988 | /* 198008 */ GIR_EraseRootFromParent_Done, |
| 69989 | /* 198009 */ // Label 4488: @198009 |
| 69990 | /* 198009 */ GIM_Try, /*On fail goto*//*Label 4489*/ GIMT_Encode4(198058), // Rule ID 23092 // |
| 69991 | /* 198014 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 69992 | /* 198017 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 69993 | /* 198021 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 69994 | /* 198025 */ // MIs[0] Operand 2 |
| 69995 | /* 198025 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 69996 | /* 198036 */ // (extract_subvector:{ *:[v2f64] } VR256:{ *:[v4f64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v2f64] } VR256:{ *:[v4f64] }:$src, sub_xmm:{ *:[i32] }) |
| 69997 | /* 198036 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 69998 | /* 198039 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 69999 | /* 198041 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70000 | /* 198047 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70001 | /* 198052 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70002 | /* 198057 */ // GIR_Coverage, 23092, |
| 70003 | /* 198057 */ GIR_EraseRootFromParent_Done, |
| 70004 | /* 198058 */ // Label 4489: @198058 |
| 70005 | /* 198058 */ GIM_Try, /*On fail goto*//*Label 4490*/ GIMT_Encode4(198107), // Rule ID 23110 // |
| 70006 | /* 198063 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70007 | /* 198066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70008 | /* 198070 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70009 | /* 198074 */ // MIs[0] Operand 2 |
| 70010 | /* 198074 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70011 | /* 198085 */ // (extract_subvector:{ *:[v2i64] } VR512:{ *:[v8i64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v2i64] } VR512:{ *:[v8i64] }:$src, sub_xmm:{ *:[i32] }) |
| 70012 | /* 198085 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70013 | /* 198088 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70014 | /* 198090 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70015 | /* 198096 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70016 | /* 198101 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70017 | /* 198106 */ // GIR_Coverage, 23110, |
| 70018 | /* 198106 */ GIR_EraseRootFromParent_Done, |
| 70019 | /* 198107 */ // Label 4490: @198107 |
| 70020 | /* 198107 */ GIM_Try, /*On fail goto*//*Label 4491*/ GIMT_Encode4(198156), // Rule ID 23113 // |
| 70021 | /* 198112 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70022 | /* 198115 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70023 | /* 198119 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70024 | /* 198123 */ // MIs[0] Operand 2 |
| 70025 | /* 198123 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70026 | /* 198134 */ // (extract_subvector:{ *:[v2f64] } VR512:{ *:[v8f64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v2f64] } VR512:{ *:[v8f64] }:$src, sub_xmm:{ *:[i32] }) |
| 70027 | /* 198134 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70028 | /* 198137 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70029 | /* 198139 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70030 | /* 198145 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70031 | /* 198150 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70032 | /* 198155 */ // GIR_Coverage, 23113, |
| 70033 | /* 198155 */ GIR_EraseRootFromParent_Done, |
| 70034 | /* 198156 */ // Label 4491: @198156 |
| 70035 | /* 198156 */ GIM_Reject, |
| 70036 | /* 198157 */ // Label 4461: @198157 |
| 70037 | /* 198157 */ GIM_Try, /*On fail goto*//*Label 4492*/ GIMT_Encode4(198197), // Rule ID 19633 // |
| 70038 | /* 198162 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s1, |
| 70039 | /* 198165 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70040 | /* 198169 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70041 | /* 198173 */ // MIs[0] Operand 2 |
| 70042 | /* 198173 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70043 | /* 198184 */ // (extract_subvector:{ *:[v4i1] } VK8:{ *:[v8i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } VK8:{ *:[v8i1] }:$src, VK4:{ *:[i32] }) |
| 70044 | /* 198184 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70045 | /* 198187 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70046 | /* 198189 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70047 | /* 198191 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 70048 | /* 198196 */ // GIR_Coverage, 19633, |
| 70049 | /* 198196 */ GIR_EraseRootFromParent_Done, |
| 70050 | /* 198197 */ // Label 4492: @198197 |
| 70051 | /* 198197 */ GIM_Try, /*On fail goto*//*Label 4493*/ GIMT_Encode4(198237), // Rule ID 19635 // |
| 70052 | /* 198202 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 70053 | /* 198205 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70054 | /* 198209 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70055 | /* 198213 */ // MIs[0] Operand 2 |
| 70056 | /* 198213 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70057 | /* 198224 */ // (extract_subvector:{ *:[v4i1] } VK16:{ *:[v16i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } VK16:{ *:[v16i1] }:$src, VK4:{ *:[i32] }) |
| 70058 | /* 198224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70059 | /* 198227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70060 | /* 198229 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70061 | /* 198231 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 70062 | /* 198236 */ // GIR_Coverage, 19635, |
| 70063 | /* 198236 */ GIR_EraseRootFromParent_Done, |
| 70064 | /* 198237 */ // Label 4493: @198237 |
| 70065 | /* 198237 */ GIM_Try, /*On fail goto*//*Label 4494*/ GIMT_Encode4(198277), // Rule ID 19637 // |
| 70066 | /* 198242 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 70067 | /* 198245 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70068 | /* 198249 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70069 | /* 198253 */ // MIs[0] Operand 2 |
| 70070 | /* 198253 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70071 | /* 198264 */ // (extract_subvector:{ *:[v4i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } VK32:{ *:[v32i1] }:$src, VK4:{ *:[i32] }) |
| 70072 | /* 198264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70073 | /* 198267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70074 | /* 198269 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70075 | /* 198271 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 70076 | /* 198276 */ // GIR_Coverage, 19637, |
| 70077 | /* 198276 */ GIR_EraseRootFromParent_Done, |
| 70078 | /* 198277 */ // Label 4494: @198277 |
| 70079 | /* 198277 */ GIM_Try, /*On fail goto*//*Label 4495*/ GIMT_Encode4(198317), // Rule ID 19639 // |
| 70080 | /* 198282 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70081 | /* 198285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK4RegClassID), |
| 70082 | /* 198289 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70083 | /* 198293 */ // MIs[0] Operand 2 |
| 70084 | /* 198293 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70085 | /* 198304 */ // (extract_subvector:{ *:[v4i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v4i1] } VK64:{ *:[v64i1] }:$src, VK4:{ *:[i32] }) |
| 70086 | /* 198304 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70087 | /* 198307 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70088 | /* 198309 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70089 | /* 198311 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK4RegClassID), |
| 70090 | /* 198316 */ // GIR_Coverage, 19639, |
| 70091 | /* 198316 */ GIR_EraseRootFromParent_Done, |
| 70092 | /* 198317 */ // Label 4495: @198317 |
| 70093 | /* 198317 */ GIM_Reject, |
| 70094 | /* 198318 */ // Label 4462: @198318 |
| 70095 | /* 198318 */ GIM_Try, /*On fail goto*//*Label 4496*/ GIMT_Encode4(198389), // Rule ID 19053 // |
| 70096 | /* 198323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoVLX), |
| 70097 | /* 198326 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70098 | /* 198329 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70099 | /* 198333 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70100 | /* 198337 */ // MIs[0] Operand 2 |
| 70101 | /* 198337 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(4), |
| 70102 | /* 198348 */ // (extract_subvector:{ *:[v4i32] } VR512:{ *:[v16i32] }:$src, 4:{ *:[iPTR] }) => (VEXTRACTI128rri:{ *:[v4i32] } (EXTRACT_SUBREG:{ *:[v8i32] } VR512:{ *:[v16i32] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70103 | /* 198348 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 70104 | /* 198351 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70105 | /* 198355 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70106 | /* 198360 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70107 | /* 198366 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70108 | /* 198371 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70109 | /* 198376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI128rri), |
| 70110 | /* 198379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70111 | /* 198381 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70112 | /* 198384 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70113 | /* 198387 */ GIR_RootConstrainSelectedInstOperands, |
| 70114 | /* 198388 */ // GIR_Coverage, 19053, |
| 70115 | /* 198388 */ GIR_EraseRootFromParent_Done, |
| 70116 | /* 198389 */ // Label 4496: @198389 |
| 70117 | /* 198389 */ GIM_Try, /*On fail goto*//*Label 4497*/ GIMT_Encode4(198460), // Rule ID 19054 // |
| 70118 | /* 198394 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoVLX), |
| 70119 | /* 198397 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70120 | /* 198400 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70121 | /* 198404 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70122 | /* 198408 */ // MIs[0] Operand 2 |
| 70123 | /* 198408 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(4), |
| 70124 | /* 198419 */ // (extract_subvector:{ *:[v4f32] } VR512:{ *:[v16f32] }:$src, 4:{ *:[iPTR] }) => (VEXTRACTF128rri:{ *:[v4f32] } (EXTRACT_SUBREG:{ *:[v8f32] } VR512:{ *:[v16f32] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70125 | /* 198419 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 70126 | /* 198422 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70127 | /* 198426 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70128 | /* 198431 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70129 | /* 198437 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70130 | /* 198442 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70131 | /* 198447 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF128rri), |
| 70132 | /* 198450 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70133 | /* 198452 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70134 | /* 198455 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70135 | /* 198458 */ GIR_RootConstrainSelectedInstOperands, |
| 70136 | /* 198459 */ // GIR_Coverage, 19054, |
| 70137 | /* 198459 */ GIR_EraseRootFromParent_Done, |
| 70138 | /* 198460 */ // Label 4497: @198460 |
| 70139 | /* 198460 */ GIM_Try, /*On fail goto*//*Label 4498*/ GIMT_Encode4(198531), // Rule ID 19060 // |
| 70140 | /* 198465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70141 | /* 198468 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70142 | /* 198471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70143 | /* 198475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70144 | /* 198479 */ // MIs[0] Operand 2 |
| 70145 | /* 198479 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(4), |
| 70146 | /* 198490 */ // (extract_subvector:{ *:[v4i32] } VR512:{ *:[v16i32] }:$src, 4:{ *:[iPTR] }) => (VEXTRACTI32X4Z256rri:{ *:[v4i32] } (EXTRACT_SUBREG:{ *:[v8i32] } VR512:{ *:[v16i32] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70147 | /* 198490 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 70148 | /* 198493 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70149 | /* 198497 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70150 | /* 198502 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70151 | /* 198508 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70152 | /* 198513 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70153 | /* 198518 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI32X4Z256rri), |
| 70154 | /* 198521 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70155 | /* 198523 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70156 | /* 198526 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70157 | /* 198529 */ GIR_RootConstrainSelectedInstOperands, |
| 70158 | /* 198530 */ // GIR_Coverage, 19060, |
| 70159 | /* 198530 */ GIR_EraseRootFromParent_Done, |
| 70160 | /* 198531 */ // Label 4498: @198531 |
| 70161 | /* 198531 */ GIM_Try, /*On fail goto*//*Label 4499*/ GIMT_Encode4(198602), // Rule ID 19061 // |
| 70162 | /* 198536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70163 | /* 198539 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70164 | /* 198542 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70165 | /* 198546 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70166 | /* 198550 */ // MIs[0] Operand 2 |
| 70167 | /* 198550 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(4), |
| 70168 | /* 198561 */ // (extract_subvector:{ *:[v4f32] } VR512:{ *:[v16f32] }:$src, 4:{ *:[iPTR] }) => (VEXTRACTF32X4Z256rri:{ *:[v4f32] } (EXTRACT_SUBREG:{ *:[v8f32] } VR512:{ *:[v16f32] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70169 | /* 198561 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s32, |
| 70170 | /* 198564 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70171 | /* 198568 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70172 | /* 198573 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70173 | /* 198579 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70174 | /* 198584 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70175 | /* 198589 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF32X4Z256rri), |
| 70176 | /* 198592 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70177 | /* 198594 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70178 | /* 198597 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70179 | /* 198600 */ GIR_RootConstrainSelectedInstOperands, |
| 70180 | /* 198601 */ // GIR_Coverage, 19061, |
| 70181 | /* 198601 */ GIR_EraseRootFromParent_Done, |
| 70182 | /* 198602 */ // Label 4499: @198602 |
| 70183 | /* 198602 */ GIM_Try, /*On fail goto*//*Label 4500*/ GIMT_Encode4(198651), // Rule ID 23083 // |
| 70184 | /* 198607 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 70185 | /* 198610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70186 | /* 198614 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70187 | /* 198618 */ // MIs[0] Operand 2 |
| 70188 | /* 198618 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70189 | /* 198629 */ // (extract_subvector:{ *:[v4i32] } VR256:{ *:[v8i32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4i32] } VR256:{ *:[v8i32] }:$src, sub_xmm:{ *:[i32] }) |
| 70190 | /* 198629 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70191 | /* 198632 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70192 | /* 198634 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70193 | /* 198640 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70194 | /* 198645 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70195 | /* 198650 */ // GIR_Coverage, 23083, |
| 70196 | /* 198650 */ GIR_EraseRootFromParent_Done, |
| 70197 | /* 198651 */ // Label 4500: @198651 |
| 70198 | /* 198651 */ GIM_Try, /*On fail goto*//*Label 4501*/ GIMT_Encode4(198700), // Rule ID 23086 // |
| 70199 | /* 198656 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 70200 | /* 198659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70201 | /* 198663 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70202 | /* 198667 */ // MIs[0] Operand 2 |
| 70203 | /* 198667 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70204 | /* 198678 */ // (extract_subvector:{ *:[v4f32] } VR256:{ *:[v8f32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4f32] } VR256:{ *:[v8f32] }:$src, sub_xmm:{ *:[i32] }) |
| 70205 | /* 198678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70206 | /* 198681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70207 | /* 198683 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70208 | /* 198689 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70209 | /* 198694 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70210 | /* 198699 */ // GIR_Coverage, 23086, |
| 70211 | /* 198699 */ GIR_EraseRootFromParent_Done, |
| 70212 | /* 198700 */ // Label 4501: @198700 |
| 70213 | /* 198700 */ GIM_Try, /*On fail goto*//*Label 4502*/ GIMT_Encode4(198749), // Rule ID 23104 // |
| 70214 | /* 198705 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70215 | /* 198708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70216 | /* 198712 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70217 | /* 198716 */ // MIs[0] Operand 2 |
| 70218 | /* 198716 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70219 | /* 198727 */ // (extract_subvector:{ *:[v4i32] } VR512:{ *:[v16i32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4i32] } VR512:{ *:[v16i32] }:$src, sub_xmm:{ *:[i32] }) |
| 70220 | /* 198727 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70221 | /* 198730 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70222 | /* 198732 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70223 | /* 198738 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70224 | /* 198743 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70225 | /* 198748 */ // GIR_Coverage, 23104, |
| 70226 | /* 198748 */ GIR_EraseRootFromParent_Done, |
| 70227 | /* 198749 */ // Label 4502: @198749 |
| 70228 | /* 198749 */ GIM_Try, /*On fail goto*//*Label 4503*/ GIMT_Encode4(198798), // Rule ID 23107 // |
| 70229 | /* 198754 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70230 | /* 198757 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70231 | /* 198761 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70232 | /* 198765 */ // MIs[0] Operand 2 |
| 70233 | /* 198765 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70234 | /* 198776 */ // (extract_subvector:{ *:[v4f32] } VR512:{ *:[v16f32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4f32] } VR512:{ *:[v16f32] }:$src, sub_xmm:{ *:[i32] }) |
| 70235 | /* 198776 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70236 | /* 198779 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70237 | /* 198781 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70238 | /* 198787 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70239 | /* 198792 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70240 | /* 198797 */ // GIR_Coverage, 23107, |
| 70241 | /* 198797 */ GIR_EraseRootFromParent_Done, |
| 70242 | /* 198798 */ // Label 4503: @198798 |
| 70243 | /* 198798 */ GIM_Reject, |
| 70244 | /* 198799 */ // Label 4463: @198799 |
| 70245 | /* 198799 */ GIM_Try, /*On fail goto*//*Label 4504*/ GIMT_Encode4(198881), |
| 70246 | /* 198804 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 70247 | /* 198807 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70248 | /* 198811 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70249 | /* 198815 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70250 | /* 198826 */ GIM_Try, /*On fail goto*//*Label 4505*/ GIMT_Encode4(198853), // Rule ID 23131 // |
| 70251 | /* 198831 */ // (extract_subvector:{ *:[v4i64] } VR512:{ *:[v8i64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4i64] } VR512:{ *:[v8i64] }:$src, sub_ymm:{ *:[i32] }) |
| 70252 | /* 198831 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70253 | /* 198834 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70254 | /* 198836 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70255 | /* 198842 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70256 | /* 198847 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70257 | /* 198852 */ // GIR_Coverage, 23131, |
| 70258 | /* 198852 */ GIR_EraseRootFromParent_Done, |
| 70259 | /* 198853 */ // Label 4505: @198853 |
| 70260 | /* 198853 */ GIM_Try, /*On fail goto*//*Label 4506*/ GIMT_Encode4(198880), // Rule ID 23134 // |
| 70261 | /* 198858 */ // (extract_subvector:{ *:[v4f64] } VR512:{ *:[v8f64] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v4f64] } VR512:{ *:[v8f64] }:$src, sub_ymm:{ *:[i32] }) |
| 70262 | /* 198858 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70263 | /* 198861 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70264 | /* 198863 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70265 | /* 198869 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70266 | /* 198874 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70267 | /* 198879 */ // GIR_Coverage, 23134, |
| 70268 | /* 198879 */ GIR_EraseRootFromParent_Done, |
| 70269 | /* 198880 */ // Label 4506: @198880 |
| 70270 | /* 198880 */ GIM_Reject, |
| 70271 | /* 198881 */ // Label 4504: @198881 |
| 70272 | /* 198881 */ GIM_Reject, |
| 70273 | /* 198882 */ // Label 4464: @198882 |
| 70274 | /* 198882 */ GIM_Try, /*On fail goto*//*Label 4507*/ GIMT_Encode4(198922), // Rule ID 19641 // |
| 70275 | /* 198887 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s1, |
| 70276 | /* 198890 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70277 | /* 198894 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70278 | /* 198898 */ // MIs[0] Operand 2 |
| 70279 | /* 198898 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70280 | /* 198909 */ // (extract_subvector:{ *:[v8i1] } VK16:{ *:[v16i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } VK16:{ *:[v16i1] }:$src, VK8:{ *:[i32] }) |
| 70281 | /* 198909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70282 | /* 198912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70283 | /* 198914 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70284 | /* 198916 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 70285 | /* 198921 */ // GIR_Coverage, 19641, |
| 70286 | /* 198921 */ GIR_EraseRootFromParent_Done, |
| 70287 | /* 198922 */ // Label 4507: @198922 |
| 70288 | /* 198922 */ GIM_Try, /*On fail goto*//*Label 4508*/ GIMT_Encode4(198962), // Rule ID 19643 // |
| 70289 | /* 198927 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 70290 | /* 198930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70291 | /* 198934 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70292 | /* 198938 */ // MIs[0] Operand 2 |
| 70293 | /* 198938 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70294 | /* 198949 */ // (extract_subvector:{ *:[v8i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } VK32:{ *:[v32i1] }:$src, VK8:{ *:[i32] }) |
| 70295 | /* 198949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70296 | /* 198952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70297 | /* 198954 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70298 | /* 198956 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 70299 | /* 198961 */ // GIR_Coverage, 19643, |
| 70300 | /* 198961 */ GIR_EraseRootFromParent_Done, |
| 70301 | /* 198962 */ // Label 4508: @198962 |
| 70302 | /* 198962 */ GIM_Try, /*On fail goto*//*Label 4509*/ GIMT_Encode4(199002), // Rule ID 19645 // |
| 70303 | /* 198967 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70304 | /* 198970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK8RegClassID), |
| 70305 | /* 198974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70306 | /* 198978 */ // MIs[0] Operand 2 |
| 70307 | /* 198978 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70308 | /* 198989 */ // (extract_subvector:{ *:[v8i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v8i1] } VK64:{ *:[v64i1] }:$src, VK8:{ *:[i32] }) |
| 70309 | /* 198989 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70310 | /* 198992 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70311 | /* 198994 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70312 | /* 198996 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK8RegClassID), |
| 70313 | /* 199001 */ // GIR_Coverage, 19645, |
| 70314 | /* 199001 */ GIR_EraseRootFromParent_Done, |
| 70315 | /* 199002 */ // Label 4509: @199002 |
| 70316 | /* 199002 */ GIM_Reject, |
| 70317 | /* 199003 */ // Label 4465: @199003 |
| 70318 | /* 199003 */ GIM_Try, /*On fail goto*//*Label 4510*/ GIMT_Encode4(199074), // Rule ID 19055 // |
| 70319 | /* 199008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoVLX), |
| 70320 | /* 199011 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70321 | /* 199014 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70322 | /* 199018 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70323 | /* 199022 */ // MIs[0] Operand 2 |
| 70324 | /* 199022 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 70325 | /* 199033 */ // (extract_subvector:{ *:[v8i16] } VR512:{ *:[v32i16] }:$src, 8:{ *:[iPTR] }) => (VEXTRACTI128rri:{ *:[v8i16] } (EXTRACT_SUBREG:{ *:[v16i16] } VR512:{ *:[v32i16] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70326 | /* 199033 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 70327 | /* 199036 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70328 | /* 199040 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70329 | /* 199045 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70330 | /* 199051 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70331 | /* 199056 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70332 | /* 199061 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI128rri), |
| 70333 | /* 199064 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70334 | /* 199066 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70335 | /* 199069 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70336 | /* 199072 */ GIR_RootConstrainSelectedInstOperands, |
| 70337 | /* 199073 */ // GIR_Coverage, 19055, |
| 70338 | /* 199073 */ GIR_EraseRootFromParent_Done, |
| 70339 | /* 199074 */ // Label 4510: @199074 |
| 70340 | /* 199074 */ GIM_Try, /*On fail goto*//*Label 4511*/ GIMT_Encode4(199145), // Rule ID 19056 // |
| 70341 | /* 199079 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoVLX), |
| 70342 | /* 199082 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70343 | /* 199085 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70344 | /* 199089 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70345 | /* 199093 */ // MIs[0] Operand 2 |
| 70346 | /* 199093 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 70347 | /* 199104 */ // (extract_subvector:{ *:[v8f16] } VR512:{ *:[v32f16] }:$src, 8:{ *:[iPTR] }) => (VEXTRACTF128rri:{ *:[v8f16] } (EXTRACT_SUBREG:{ *:[v16f16] } VR512:{ *:[v32f16] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70348 | /* 199104 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 70349 | /* 199107 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70350 | /* 199111 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70351 | /* 199116 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70352 | /* 199122 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70353 | /* 199127 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70354 | /* 199132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF128rri), |
| 70355 | /* 199135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70356 | /* 199137 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70357 | /* 199140 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70358 | /* 199143 */ GIR_RootConstrainSelectedInstOperands, |
| 70359 | /* 199144 */ // GIR_Coverage, 19056, |
| 70360 | /* 199144 */ GIR_EraseRootFromParent_Done, |
| 70361 | /* 199145 */ // Label 4511: @199145 |
| 70362 | /* 199145 */ GIM_Try, /*On fail goto*//*Label 4512*/ GIMT_Encode4(199216), // Rule ID 19062 // |
| 70363 | /* 199150 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70364 | /* 199153 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70365 | /* 199156 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70366 | /* 199160 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70367 | /* 199164 */ // MIs[0] Operand 2 |
| 70368 | /* 199164 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 70369 | /* 199175 */ // (extract_subvector:{ *:[v8i16] } VR512:{ *:[v32i16] }:$src, 8:{ *:[iPTR] }) => (VEXTRACTI32X4Z256rri:{ *:[v8i16] } (EXTRACT_SUBREG:{ *:[v16i16] } VR512:{ *:[v32i16] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70370 | /* 199175 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 70371 | /* 199178 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70372 | /* 199182 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70373 | /* 199187 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70374 | /* 199193 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70375 | /* 199198 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70376 | /* 199203 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI32X4Z256rri), |
| 70377 | /* 199206 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70378 | /* 199208 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70379 | /* 199211 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70380 | /* 199214 */ GIR_RootConstrainSelectedInstOperands, |
| 70381 | /* 199215 */ // GIR_Coverage, 19062, |
| 70382 | /* 199215 */ GIR_EraseRootFromParent_Done, |
| 70383 | /* 199216 */ // Label 4512: @199216 |
| 70384 | /* 199216 */ GIM_Try, /*On fail goto*//*Label 4513*/ GIMT_Encode4(199287), // Rule ID 19063 // |
| 70385 | /* 199221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70386 | /* 199224 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70387 | /* 199227 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70388 | /* 199231 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70389 | /* 199235 */ // MIs[0] Operand 2 |
| 70390 | /* 199235 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 70391 | /* 199246 */ // (extract_subvector:{ *:[v8f16] } VR512:{ *:[v32f16] }:$src, 8:{ *:[iPTR] }) => (VEXTRACTF32X4Z256rri:{ *:[v8f16] } (EXTRACT_SUBREG:{ *:[v16f16] } VR512:{ *:[v32f16] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70392 | /* 199246 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s16, |
| 70393 | /* 199249 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70394 | /* 199253 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70395 | /* 199258 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70396 | /* 199264 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70397 | /* 199269 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70398 | /* 199274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTF32X4Z256rri), |
| 70399 | /* 199277 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70400 | /* 199279 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70401 | /* 199282 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70402 | /* 199285 */ GIR_RootConstrainSelectedInstOperands, |
| 70403 | /* 199286 */ // GIR_Coverage, 19063, |
| 70404 | /* 199286 */ GIR_EraseRootFromParent_Done, |
| 70405 | /* 199287 */ // Label 4513: @199287 |
| 70406 | /* 199287 */ GIM_Try, /*On fail goto*//*Label 4514*/ GIMT_Encode4(199336), // Rule ID 23095 // |
| 70407 | /* 199292 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 70408 | /* 199295 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70409 | /* 199299 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70410 | /* 199303 */ // MIs[0] Operand 2 |
| 70411 | /* 199303 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70412 | /* 199314 */ // (extract_subvector:{ *:[v8i16] } VR256:{ *:[v16i16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8i16] } VR256:{ *:[v16i16] }:$src, sub_xmm:{ *:[i32] }) |
| 70413 | /* 199314 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70414 | /* 199317 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70415 | /* 199319 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70416 | /* 199325 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70417 | /* 199330 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70418 | /* 199335 */ // GIR_Coverage, 23095, |
| 70419 | /* 199335 */ GIR_EraseRootFromParent_Done, |
| 70420 | /* 199336 */ // Label 4514: @199336 |
| 70421 | /* 199336 */ GIM_Try, /*On fail goto*//*Label 4515*/ GIMT_Encode4(199385), // Rule ID 23101 // |
| 70422 | /* 199341 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 70423 | /* 199344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70424 | /* 199348 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70425 | /* 199352 */ // MIs[0] Operand 2 |
| 70426 | /* 199352 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70427 | /* 199363 */ // (extract_subvector:{ *:[v8f16] } VR256:{ *:[v16f16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8f16] } VR256:{ *:[v16f16] }:$src, sub_xmm:{ *:[i32] }) |
| 70428 | /* 199363 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70429 | /* 199366 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70430 | /* 199368 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70431 | /* 199374 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70432 | /* 199379 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70433 | /* 199384 */ // GIR_Coverage, 23101, |
| 70434 | /* 199384 */ GIR_EraseRootFromParent_Done, |
| 70435 | /* 199385 */ // Label 4515: @199385 |
| 70436 | /* 199385 */ GIM_Try, /*On fail goto*//*Label 4516*/ GIMT_Encode4(199434), // Rule ID 23116 // |
| 70437 | /* 199390 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70438 | /* 199393 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70439 | /* 199397 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70440 | /* 199401 */ // MIs[0] Operand 2 |
| 70441 | /* 199401 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70442 | /* 199412 */ // (extract_subvector:{ *:[v8i16] } VR512:{ *:[v32i16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8i16] } VR512:{ *:[v32i16] }:$src, sub_xmm:{ *:[i32] }) |
| 70443 | /* 199412 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70444 | /* 199415 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70445 | /* 199417 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70446 | /* 199423 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70447 | /* 199428 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70448 | /* 199433 */ // GIR_Coverage, 23116, |
| 70449 | /* 199433 */ GIR_EraseRootFromParent_Done, |
| 70450 | /* 199434 */ // Label 4516: @199434 |
| 70451 | /* 199434 */ GIM_Try, /*On fail goto*//*Label 4517*/ GIMT_Encode4(199483), // Rule ID 23122 // |
| 70452 | /* 199439 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70453 | /* 199442 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70454 | /* 199446 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70455 | /* 199450 */ // MIs[0] Operand 2 |
| 70456 | /* 199450 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70457 | /* 199461 */ // (extract_subvector:{ *:[v8f16] } VR512:{ *:[v32f16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8f16] } VR512:{ *:[v32f16] }:$src, sub_xmm:{ *:[i32] }) |
| 70458 | /* 199461 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70459 | /* 199464 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70460 | /* 199466 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70461 | /* 199472 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70462 | /* 199477 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70463 | /* 199482 */ // GIR_Coverage, 23122, |
| 70464 | /* 199482 */ GIR_EraseRootFromParent_Done, |
| 70465 | /* 199483 */ // Label 4517: @199483 |
| 70466 | /* 199483 */ GIM_Reject, |
| 70467 | /* 199484 */ // Label 4466: @199484 |
| 70468 | /* 199484 */ GIM_Try, /*On fail goto*//*Label 4518*/ GIMT_Encode4(199566), |
| 70469 | /* 199489 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 70470 | /* 199492 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70471 | /* 199496 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70472 | /* 199500 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70473 | /* 199511 */ GIM_Try, /*On fail goto*//*Label 4519*/ GIMT_Encode4(199538), // Rule ID 23125 // |
| 70474 | /* 199516 */ // (extract_subvector:{ *:[v8i32] } VR512:{ *:[v16i32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8i32] } VR512:{ *:[v16i32] }:$src, sub_ymm:{ *:[i32] }) |
| 70475 | /* 199516 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70476 | /* 199519 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70477 | /* 199521 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70478 | /* 199527 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70479 | /* 199532 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70480 | /* 199537 */ // GIR_Coverage, 23125, |
| 70481 | /* 199537 */ GIR_EraseRootFromParent_Done, |
| 70482 | /* 199538 */ // Label 4519: @199538 |
| 70483 | /* 199538 */ GIM_Try, /*On fail goto*//*Label 4520*/ GIMT_Encode4(199565), // Rule ID 23128 // |
| 70484 | /* 199543 */ // (extract_subvector:{ *:[v8f32] } VR512:{ *:[v16f32] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v8f32] } VR512:{ *:[v16f32] }:$src, sub_ymm:{ *:[i32] }) |
| 70485 | /* 199543 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70486 | /* 199546 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70487 | /* 199548 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70488 | /* 199554 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70489 | /* 199559 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70490 | /* 199564 */ // GIR_Coverage, 23128, |
| 70491 | /* 199564 */ GIR_EraseRootFromParent_Done, |
| 70492 | /* 199565 */ // Label 4520: @199565 |
| 70493 | /* 199565 */ GIM_Reject, |
| 70494 | /* 199566 */ // Label 4518: @199566 |
| 70495 | /* 199566 */ GIM_Reject, |
| 70496 | /* 199567 */ // Label 4467: @199567 |
| 70497 | /* 199567 */ GIM_Try, /*On fail goto*//*Label 4521*/ GIMT_Encode4(199607), // Rule ID 19647 // |
| 70498 | /* 199572 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s1, |
| 70499 | /* 199575 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70500 | /* 199579 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70501 | /* 199583 */ // MIs[0] Operand 2 |
| 70502 | /* 199583 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70503 | /* 199594 */ // (extract_subvector:{ *:[v16i1] } VK32:{ *:[v32i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v16i1] } VK32:{ *:[v32i1] }:$src, VK16:{ *:[i32] }) |
| 70504 | /* 199594 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70505 | /* 199597 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70506 | /* 199599 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70507 | /* 199601 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 70508 | /* 199606 */ // GIR_Coverage, 19647, |
| 70509 | /* 199606 */ GIR_EraseRootFromParent_Done, |
| 70510 | /* 199607 */ // Label 4521: @199607 |
| 70511 | /* 199607 */ GIM_Try, /*On fail goto*//*Label 4522*/ GIMT_Encode4(199647), // Rule ID 19649 // |
| 70512 | /* 199612 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70513 | /* 199615 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK16RegClassID), |
| 70514 | /* 199619 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70515 | /* 199623 */ // MIs[0] Operand 2 |
| 70516 | /* 199623 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70517 | /* 199634 */ // (extract_subvector:{ *:[v16i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v16i1] } VK64:{ *:[v64i1] }:$src, VK16:{ *:[i32] }) |
| 70518 | /* 199634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70519 | /* 199637 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70520 | /* 199639 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70521 | /* 199641 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK16RegClassID), |
| 70522 | /* 199646 */ // GIR_Coverage, 19649, |
| 70523 | /* 199646 */ GIR_EraseRootFromParent_Done, |
| 70524 | /* 199647 */ // Label 4522: @199647 |
| 70525 | /* 199647 */ GIM_Reject, |
| 70526 | /* 199648 */ // Label 4468: @199648 |
| 70527 | /* 199648 */ GIM_Try, /*On fail goto*//*Label 4523*/ GIMT_Encode4(199719), // Rule ID 19057 // |
| 70528 | /* 199653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoVLX), |
| 70529 | /* 199656 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 70530 | /* 199659 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 70531 | /* 199663 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70532 | /* 199667 */ // MIs[0] Operand 2 |
| 70533 | /* 199667 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 70534 | /* 199678 */ // (extract_subvector:{ *:[v16i8] } VR512:{ *:[v64i8] }:$src, 16:{ *:[iPTR] }) => (VEXTRACTI128rri:{ *:[v16i8] } (EXTRACT_SUBREG:{ *:[v32i8] } VR512:{ *:[v64i8] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70535 | /* 199678 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s8, |
| 70536 | /* 199681 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70537 | /* 199685 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70538 | /* 199690 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70539 | /* 199696 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70540 | /* 199701 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70541 | /* 199706 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI128rri), |
| 70542 | /* 199709 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70543 | /* 199711 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70544 | /* 199714 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70545 | /* 199717 */ GIR_RootConstrainSelectedInstOperands, |
| 70546 | /* 199718 */ // GIR_Coverage, 19057, |
| 70547 | /* 199718 */ GIR_EraseRootFromParent_Done, |
| 70548 | /* 199719 */ // Label 4523: @199719 |
| 70549 | /* 199719 */ GIM_Try, /*On fail goto*//*Label 4524*/ GIMT_Encode4(199790), // Rule ID 19064 // |
| 70550 | /* 199724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 70551 | /* 199727 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 70552 | /* 199730 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70553 | /* 199734 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70554 | /* 199738 */ // MIs[0] Operand 2 |
| 70555 | /* 199738 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 70556 | /* 199749 */ // (extract_subvector:{ *:[v16i8] } VR512:{ *:[v64i8] }:$src, 16:{ *:[iPTR] }) => (VEXTRACTI32X4Z256rri:{ *:[v16i8] } (EXTRACT_SUBREG:{ *:[v32i8] } VR512:{ *:[v64i8] }:$src, sub_ymm:{ *:[i32] }), 1:{ *:[i8] }) |
| 70557 | /* 199749 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v32s8, |
| 70558 | /* 199752 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70559 | /* 199756 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 70560 | /* 199761 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70561 | /* 199767 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70562 | /* 199772 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70563 | /* 199777 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VEXTRACTI32X4Z256rri), |
| 70564 | /* 199780 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70565 | /* 199782 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 70566 | /* 199785 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 70567 | /* 199788 */ GIR_RootConstrainSelectedInstOperands, |
| 70568 | /* 199789 */ // GIR_Coverage, 19064, |
| 70569 | /* 199789 */ GIR_EraseRootFromParent_Done, |
| 70570 | /* 199790 */ // Label 4524: @199790 |
| 70571 | /* 199790 */ GIM_Try, /*On fail goto*//*Label 4525*/ GIMT_Encode4(199839), // Rule ID 23098 // |
| 70572 | /* 199795 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 70573 | /* 199798 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16RegClassID), |
| 70574 | /* 199802 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 70575 | /* 199806 */ // MIs[0] Operand 2 |
| 70576 | /* 199806 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70577 | /* 199817 */ // (extract_subvector:{ *:[v16i8] } VR256:{ *:[v32i8] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v16i8] } VR256:{ *:[v32i8] }:$src, sub_xmm:{ *:[i32] }) |
| 70578 | /* 199817 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70579 | /* 199820 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70580 | /* 199822 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70581 | /* 199828 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16RegClassID), |
| 70582 | /* 199833 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR256RegClassID), |
| 70583 | /* 199838 */ // GIR_Coverage, 23098, |
| 70584 | /* 199838 */ GIR_EraseRootFromParent_Done, |
| 70585 | /* 199839 */ // Label 4525: @199839 |
| 70586 | /* 199839 */ GIM_Try, /*On fail goto*//*Label 4526*/ GIMT_Encode4(199888), // Rule ID 23119 // |
| 70587 | /* 199844 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 70588 | /* 199847 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 70589 | /* 199851 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70590 | /* 199855 */ // MIs[0] Operand 2 |
| 70591 | /* 199855 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70592 | /* 199866 */ // (extract_subvector:{ *:[v16i8] } VR512:{ *:[v64i8] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v16i8] } VR512:{ *:[v64i8] }:$src, sub_xmm:{ *:[i32] }) |
| 70593 | /* 199866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70594 | /* 199869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70595 | /* 199871 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(9), // src |
| 70596 | /* 199877 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 70597 | /* 199882 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70598 | /* 199887 */ // GIR_Coverage, 23119, |
| 70599 | /* 199887 */ GIR_EraseRootFromParent_Done, |
| 70600 | /* 199888 */ // Label 4526: @199888 |
| 70601 | /* 199888 */ GIM_Reject, |
| 70602 | /* 199889 */ // Label 4469: @199889 |
| 70603 | /* 199889 */ GIM_Try, /*On fail goto*//*Label 4527*/ GIMT_Encode4(199971), |
| 70604 | /* 199894 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 70605 | /* 199897 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70606 | /* 199901 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70607 | /* 199905 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70608 | /* 199916 */ GIM_Try, /*On fail goto*//*Label 4528*/ GIMT_Encode4(199943), // Rule ID 23137 // |
| 70609 | /* 199921 */ // (extract_subvector:{ *:[v16i16] } VR512:{ *:[v32i16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v16i16] } VR512:{ *:[v32i16] }:$src, sub_ymm:{ *:[i32] }) |
| 70610 | /* 199921 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70611 | /* 199924 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70612 | /* 199926 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70613 | /* 199932 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70614 | /* 199937 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70615 | /* 199942 */ // GIR_Coverage, 23137, |
| 70616 | /* 199942 */ GIR_EraseRootFromParent_Done, |
| 70617 | /* 199943 */ // Label 4528: @199943 |
| 70618 | /* 199943 */ GIM_Try, /*On fail goto*//*Label 4529*/ GIMT_Encode4(199970), // Rule ID 23143 // |
| 70619 | /* 199948 */ // (extract_subvector:{ *:[v16f16] } VR512:{ *:[v32f16] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v16f16] } VR512:{ *:[v32f16] }:$src, sub_ymm:{ *:[i32] }) |
| 70620 | /* 199948 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70621 | /* 199951 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70622 | /* 199953 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70623 | /* 199959 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70624 | /* 199964 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70625 | /* 199969 */ // GIR_Coverage, 23143, |
| 70626 | /* 199969 */ GIR_EraseRootFromParent_Done, |
| 70627 | /* 199970 */ // Label 4529: @199970 |
| 70628 | /* 199970 */ GIM_Reject, |
| 70629 | /* 199971 */ // Label 4527: @199971 |
| 70630 | /* 199971 */ GIM_Reject, |
| 70631 | /* 199972 */ // Label 4470: @199972 |
| 70632 | /* 199972 */ GIM_Try, /*On fail goto*//*Label 4530*/ GIMT_Encode4(200012), // Rule ID 19651 // |
| 70633 | /* 199977 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s1, |
| 70634 | /* 199980 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VK32RegClassID), |
| 70635 | /* 199984 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VK64RegClassID), |
| 70636 | /* 199988 */ // MIs[0] Operand 2 |
| 70637 | /* 199988 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70638 | /* 199999 */ // (extract_subvector:{ *:[v32i1] } VK64:{ *:[v64i1] }:$src, 0:{ *:[iPTR] }) => (COPY_TO_REGCLASS:{ *:[v32i1] } VK64:{ *:[v64i1] }:$src, VK32:{ *:[i32] }) |
| 70639 | /* 199999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70640 | /* 200002 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70641 | /* 200004 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70642 | /* 200006 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VK32RegClassID), |
| 70643 | /* 200011 */ // GIR_Coverage, 19651, |
| 70644 | /* 200011 */ GIR_EraseRootFromParent_Done, |
| 70645 | /* 200012 */ // Label 4530: @200012 |
| 70646 | /* 200012 */ GIM_Reject, |
| 70647 | /* 200013 */ // Label 4471: @200013 |
| 70648 | /* 200013 */ GIM_Try, /*On fail goto*//*Label 4531*/ GIMT_Encode4(200062), // Rule ID 23140 // |
| 70649 | /* 200018 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 70650 | /* 200021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70651 | /* 200025 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 70652 | /* 200029 */ // MIs[0] Operand 2 |
| 70653 | /* 200029 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(0), |
| 70654 | /* 200040 */ // (extract_subvector:{ *:[v32i8] } VR512:{ *:[v64i8] }:$src, 0:{ *:[iPTR] }) => (EXTRACT_SUBREG:{ *:[v32i8] } VR512:{ *:[v64i8] }:$src, sub_ymm:{ *:[i32] }) |
| 70655 | /* 200040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 70656 | /* 200043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70657 | /* 200045 */ GIR_CopySubReg, /*NewInsnID*/0, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(10), // src |
| 70658 | /* 200051 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 70659 | /* 200056 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 70660 | /* 200061 */ // GIR_Coverage, 23140, |
| 70661 | /* 200061 */ GIR_EraseRootFromParent_Done, |
| 70662 | /* 200062 */ // Label 4531: @200062 |
| 70663 | /* 200062 */ GIM_Reject, |
| 70664 | /* 200063 */ // Label 4472: @200063 |
| 70665 | /* 200063 */ GIM_Reject, |
| 70666 | /* 200064 */ // Label 62: @200064 |
| 70667 | /* 200064 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(8), GIMT_Encode2(25), /*)*//*default:*//*Label 4544*/ GIMT_Encode4(202045), |
| 70668 | /* 200075 */ /*GILLT_v2s64*//*Label 4532*/ GIMT_Encode4(200143), GIMT_Encode4(0), |
| 70669 | /* 200083 */ /*GILLT_v4s32*//*Label 4533*/ GIMT_Encode4(200345), |
| 70670 | /* 200087 */ /*GILLT_v4s64*//*Label 4534*/ GIMT_Encode4(200547), GIMT_Encode4(0), |
| 70671 | /* 200095 */ /*GILLT_v8s16*//*Label 4535*/ GIMT_Encode4(200749), |
| 70672 | /* 200099 */ /*GILLT_v8s32*//*Label 4536*/ GIMT_Encode4(200864), |
| 70673 | /* 200103 */ /*GILLT_v8s64*//*Label 4537*/ GIMT_Encode4(201066), GIMT_Encode4(0), |
| 70674 | /* 200111 */ /*GILLT_v16s8*//*Label 4538*/ GIMT_Encode4(201268), |
| 70675 | /* 200115 */ /*GILLT_v16s16*//*Label 4539*/ GIMT_Encode4(201383), |
| 70676 | /* 200119 */ /*GILLT_v16s32*//*Label 4540*/ GIMT_Encode4(201498), GIMT_Encode4(0), |
| 70677 | /* 200127 */ /*GILLT_v32s8*//*Label 4541*/ GIMT_Encode4(201700), |
| 70678 | /* 200131 */ /*GILLT_v32s16*//*Label 4542*/ GIMT_Encode4(201815), GIMT_Encode4(0), |
| 70679 | /* 200139 */ /*GILLT_v64s8*//*Label 4543*/ GIMT_Encode4(201930), |
| 70680 | /* 200143 */ // Label 4532: @200143 |
| 70681 | /* 200143 */ GIM_Try, /*On fail goto*//*Label 4545*/ GIMT_Encode4(200344), |
| 70682 | /* 200148 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 70683 | /* 200151 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s1, |
| 70684 | /* 200154 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 70685 | /* 200157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70686 | /* 200161 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70687 | /* 200165 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK2WMRegClassID), |
| 70688 | /* 200169 */ GIM_Try, /*On fail goto*//*Label 4546*/ GIMT_Encode4(200202), // Rule ID 21707 // |
| 70689 | /* 200174 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70690 | /* 200177 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70691 | /* 200181 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 70692 | /* 200187 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 70693 | /* 200189 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70694 | /* 200191 */ // (vector_compress:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, VK2WM:{ *:[v2i1] }:$mask, immAllZerosV:{ *:[v2i64] }) => (VPCOMPRESSQZ128rrkz:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src) |
| 70695 | /* 200191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ128rrkz), |
| 70696 | /* 200194 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70697 | /* 200196 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70698 | /* 200198 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70699 | /* 200200 */ GIR_RootConstrainSelectedInstOperands, |
| 70700 | /* 200201 */ // GIR_Coverage, 21707, |
| 70701 | /* 200201 */ GIR_EraseRootFromParent_Done, |
| 70702 | /* 200202 */ // Label 4546: @200202 |
| 70703 | /* 200202 */ GIM_Try, /*On fail goto*//*Label 4547*/ GIMT_Encode4(200235), // Rule ID 21743 // |
| 70704 | /* 200207 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70705 | /* 200210 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70706 | /* 200214 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 70707 | /* 200220 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 70708 | /* 200222 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70709 | /* 200224 */ // (vector_compress:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src, VK2WM:{ *:[v2i1] }:$mask, immAllZerosV:{ *:[v2f64] }) => (VCOMPRESSPDZ128rrkz:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src) |
| 70710 | /* 200224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ128rrkz), |
| 70711 | /* 200227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70712 | /* 200229 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70713 | /* 200231 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70714 | /* 200233 */ GIR_RootConstrainSelectedInstOperands, |
| 70715 | /* 200234 */ // GIR_Coverage, 21743, |
| 70716 | /* 200234 */ GIR_EraseRootFromParent_Done, |
| 70717 | /* 200235 */ // Label 4547: @200235 |
| 70718 | /* 200235 */ GIM_Try, /*On fail goto*//*Label 4548*/ GIMT_Encode4(200264), // Rule ID 21706 // |
| 70719 | /* 200240 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70720 | /* 200243 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70721 | /* 200247 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 70722 | /* 200251 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70723 | /* 200253 */ // (vector_compress:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, VK2WM:{ *:[v2i1] }:$mask, (undef:{ *:[v2i64] })) => (VPCOMPRESSQZ128rrkz:{ *:[v2i64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src) |
| 70724 | /* 200253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ128rrkz), |
| 70725 | /* 200256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70726 | /* 200258 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70727 | /* 200260 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70728 | /* 200262 */ GIR_RootConstrainSelectedInstOperands, |
| 70729 | /* 200263 */ // GIR_Coverage, 21706, |
| 70730 | /* 200263 */ GIR_EraseRootFromParent_Done, |
| 70731 | /* 200264 */ // Label 4548: @200264 |
| 70732 | /* 200264 */ GIM_Try, /*On fail goto*//*Label 4549*/ GIMT_Encode4(200293), // Rule ID 21742 // |
| 70733 | /* 200269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70734 | /* 200272 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70735 | /* 200276 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 70736 | /* 200280 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70737 | /* 200282 */ // (vector_compress:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src, VK2WM:{ *:[v2i1] }:$mask, (undef:{ *:[v2f64] })) => (VCOMPRESSPDZ128rrkz:{ *:[v2f64] } VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src) |
| 70738 | /* 200282 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ128rrkz), |
| 70739 | /* 200285 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70740 | /* 200287 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70741 | /* 200289 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70742 | /* 200291 */ GIR_RootConstrainSelectedInstOperands, |
| 70743 | /* 200292 */ // GIR_Coverage, 21742, |
| 70744 | /* 200292 */ GIR_EraseRootFromParent_Done, |
| 70745 | /* 200293 */ // Label 4549: @200293 |
| 70746 | /* 200293 */ GIM_Try, /*On fail goto*//*Label 4550*/ GIMT_Encode4(200318), // Rule ID 21708 // |
| 70747 | /* 200298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70748 | /* 200301 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70749 | /* 200305 */ // (vector_compress:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$passthru) => (VPCOMPRESSQZ128rrk:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$passthru, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2i64] }:$src) |
| 70750 | /* 200305 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ128rrk), |
| 70751 | /* 200308 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70752 | /* 200310 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 70753 | /* 200312 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70754 | /* 200314 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70755 | /* 200316 */ GIR_RootConstrainSelectedInstOperands, |
| 70756 | /* 200317 */ // GIR_Coverage, 21708, |
| 70757 | /* 200317 */ GIR_EraseRootFromParent_Done, |
| 70758 | /* 200318 */ // Label 4550: @200318 |
| 70759 | /* 200318 */ GIM_Try, /*On fail goto*//*Label 4551*/ GIMT_Encode4(200343), // Rule ID 21744 // |
| 70760 | /* 200323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70761 | /* 200326 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70762 | /* 200330 */ // (vector_compress:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$passthru) => (VCOMPRESSPDZ128rrk:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$passthru, VK2WM:{ *:[v2i1] }:$mask, VR128X:{ *:[v2f64] }:$src) |
| 70763 | /* 200330 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ128rrk), |
| 70764 | /* 200333 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70765 | /* 200335 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 70766 | /* 200337 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70767 | /* 200339 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70768 | /* 200341 */ GIR_RootConstrainSelectedInstOperands, |
| 70769 | /* 200342 */ // GIR_Coverage, 21744, |
| 70770 | /* 200342 */ GIR_EraseRootFromParent_Done, |
| 70771 | /* 200343 */ // Label 4551: @200343 |
| 70772 | /* 200343 */ GIM_Reject, |
| 70773 | /* 200344 */ // Label 4545: @200344 |
| 70774 | /* 200344 */ GIM_Reject, |
| 70775 | /* 200345 */ // Label 4533: @200345 |
| 70776 | /* 200345 */ GIM_Try, /*On fail goto*//*Label 4552*/ GIMT_Encode4(200546), |
| 70777 | /* 200350 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 70778 | /* 200353 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 70779 | /* 200356 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 70780 | /* 200359 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70781 | /* 200363 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70782 | /* 200367 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 70783 | /* 200371 */ GIM_Try, /*On fail goto*//*Label 4553*/ GIMT_Encode4(200404), // Rule ID 21689 // |
| 70784 | /* 200376 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70785 | /* 200379 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70786 | /* 200383 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 70787 | /* 200389 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 70788 | /* 200391 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70789 | /* 200393 */ // (vector_compress:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, VK4WM:{ *:[v4i1] }:$mask, immAllZerosV:{ *:[v4i32] }) => (VPCOMPRESSDZ128rrkz:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src) |
| 70790 | /* 200393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ128rrkz), |
| 70791 | /* 200396 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70792 | /* 200398 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70793 | /* 200400 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70794 | /* 200402 */ GIR_RootConstrainSelectedInstOperands, |
| 70795 | /* 200403 */ // GIR_Coverage, 21689, |
| 70796 | /* 200403 */ GIR_EraseRootFromParent_Done, |
| 70797 | /* 200404 */ // Label 4553: @200404 |
| 70798 | /* 200404 */ GIM_Try, /*On fail goto*//*Label 4554*/ GIMT_Encode4(200437), // Rule ID 21725 // |
| 70799 | /* 200409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70800 | /* 200412 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70801 | /* 200416 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 70802 | /* 200422 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 70803 | /* 200424 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70804 | /* 200426 */ // (vector_compress:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src, VK4WM:{ *:[v4i1] }:$mask, immAllZerosV:{ *:[v4f32] }) => (VCOMPRESSPSZ128rrkz:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src) |
| 70805 | /* 200426 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ128rrkz), |
| 70806 | /* 200429 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70807 | /* 200431 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70808 | /* 200433 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70809 | /* 200435 */ GIR_RootConstrainSelectedInstOperands, |
| 70810 | /* 200436 */ // GIR_Coverage, 21725, |
| 70811 | /* 200436 */ GIR_EraseRootFromParent_Done, |
| 70812 | /* 200437 */ // Label 4554: @200437 |
| 70813 | /* 200437 */ GIM_Try, /*On fail goto*//*Label 4555*/ GIMT_Encode4(200466), // Rule ID 21688 // |
| 70814 | /* 200442 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70815 | /* 200445 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70816 | /* 200449 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 70817 | /* 200453 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70818 | /* 200455 */ // (vector_compress:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, VK4WM:{ *:[v4i1] }:$mask, (undef:{ *:[v4i32] })) => (VPCOMPRESSDZ128rrkz:{ *:[v4i32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src) |
| 70819 | /* 200455 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ128rrkz), |
| 70820 | /* 200458 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70821 | /* 200460 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70822 | /* 200462 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70823 | /* 200464 */ GIR_RootConstrainSelectedInstOperands, |
| 70824 | /* 200465 */ // GIR_Coverage, 21688, |
| 70825 | /* 200465 */ GIR_EraseRootFromParent_Done, |
| 70826 | /* 200466 */ // Label 4555: @200466 |
| 70827 | /* 200466 */ GIM_Try, /*On fail goto*//*Label 4556*/ GIMT_Encode4(200495), // Rule ID 21724 // |
| 70828 | /* 200471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70829 | /* 200474 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70830 | /* 200478 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 70831 | /* 200482 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70832 | /* 200484 */ // (vector_compress:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src, VK4WM:{ *:[v4i1] }:$mask, (undef:{ *:[v4f32] })) => (VCOMPRESSPSZ128rrkz:{ *:[v4f32] } VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src) |
| 70833 | /* 200484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ128rrkz), |
| 70834 | /* 200487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70835 | /* 200489 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70836 | /* 200491 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70837 | /* 200493 */ GIR_RootConstrainSelectedInstOperands, |
| 70838 | /* 200494 */ // GIR_Coverage, 21724, |
| 70839 | /* 200494 */ GIR_EraseRootFromParent_Done, |
| 70840 | /* 200495 */ // Label 4556: @200495 |
| 70841 | /* 200495 */ GIM_Try, /*On fail goto*//*Label 4557*/ GIMT_Encode4(200520), // Rule ID 21690 // |
| 70842 | /* 200500 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70843 | /* 200503 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70844 | /* 200507 */ // (vector_compress:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$passthru) => (VPCOMPRESSDZ128rrk:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$passthru, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4i32] }:$src) |
| 70845 | /* 200507 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ128rrk), |
| 70846 | /* 200510 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70847 | /* 200512 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 70848 | /* 200514 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70849 | /* 200516 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70850 | /* 200518 */ GIR_RootConstrainSelectedInstOperands, |
| 70851 | /* 200519 */ // GIR_Coverage, 21690, |
| 70852 | /* 200519 */ GIR_EraseRootFromParent_Done, |
| 70853 | /* 200520 */ // Label 4557: @200520 |
| 70854 | /* 200520 */ GIM_Try, /*On fail goto*//*Label 4558*/ GIMT_Encode4(200545), // Rule ID 21726 // |
| 70855 | /* 200525 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70856 | /* 200528 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70857 | /* 200532 */ // (vector_compress:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$passthru) => (VCOMPRESSPSZ128rrk:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$passthru, VK4WM:{ *:[v4i1] }:$mask, VR128X:{ *:[v4f32] }:$src) |
| 70858 | /* 200532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ128rrk), |
| 70859 | /* 200535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70860 | /* 200537 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 70861 | /* 200539 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70862 | /* 200541 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70863 | /* 200543 */ GIR_RootConstrainSelectedInstOperands, |
| 70864 | /* 200544 */ // GIR_Coverage, 21726, |
| 70865 | /* 200544 */ GIR_EraseRootFromParent_Done, |
| 70866 | /* 200545 */ // Label 4558: @200545 |
| 70867 | /* 200545 */ GIM_Reject, |
| 70868 | /* 200546 */ // Label 4552: @200546 |
| 70869 | /* 200546 */ GIM_Reject, |
| 70870 | /* 200547 */ // Label 4534: @200547 |
| 70871 | /* 200547 */ GIM_Try, /*On fail goto*//*Label 4559*/ GIMT_Encode4(200748), |
| 70872 | /* 200552 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 70873 | /* 200555 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s1, |
| 70874 | /* 200558 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 70875 | /* 200561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70876 | /* 200565 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70877 | /* 200569 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK4WMRegClassID), |
| 70878 | /* 200573 */ GIM_Try, /*On fail goto*//*Label 4560*/ GIMT_Encode4(200606), // Rule ID 21701 // |
| 70879 | /* 200578 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70880 | /* 200581 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70881 | /* 200585 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 70882 | /* 200591 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 70883 | /* 200593 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70884 | /* 200595 */ // (vector_compress:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, VK4WM:{ *:[v4i1] }:$mask, immAllZerosV:{ *:[v4i64] }) => (VPCOMPRESSQZ256rrkz:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src) |
| 70885 | /* 200595 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ256rrkz), |
| 70886 | /* 200598 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70887 | /* 200600 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70888 | /* 200602 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70889 | /* 200604 */ GIR_RootConstrainSelectedInstOperands, |
| 70890 | /* 200605 */ // GIR_Coverage, 21701, |
| 70891 | /* 200605 */ GIR_EraseRootFromParent_Done, |
| 70892 | /* 200606 */ // Label 4560: @200606 |
| 70893 | /* 200606 */ GIM_Try, /*On fail goto*//*Label 4561*/ GIMT_Encode4(200639), // Rule ID 21737 // |
| 70894 | /* 200611 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70895 | /* 200614 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70896 | /* 200618 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 70897 | /* 200624 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 70898 | /* 200626 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70899 | /* 200628 */ // (vector_compress:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src, VK4WM:{ *:[v4i1] }:$mask, immAllZerosV:{ *:[v4f64] }) => (VCOMPRESSPDZ256rrkz:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src) |
| 70900 | /* 200628 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ256rrkz), |
| 70901 | /* 200631 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70902 | /* 200633 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70903 | /* 200635 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70904 | /* 200637 */ GIR_RootConstrainSelectedInstOperands, |
| 70905 | /* 200638 */ // GIR_Coverage, 21737, |
| 70906 | /* 200638 */ GIR_EraseRootFromParent_Done, |
| 70907 | /* 200639 */ // Label 4561: @200639 |
| 70908 | /* 200639 */ GIM_Try, /*On fail goto*//*Label 4562*/ GIMT_Encode4(200668), // Rule ID 21700 // |
| 70909 | /* 200644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70910 | /* 200647 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70911 | /* 200651 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 70912 | /* 200655 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70913 | /* 200657 */ // (vector_compress:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, VK4WM:{ *:[v4i1] }:$mask, (undef:{ *:[v4i64] })) => (VPCOMPRESSQZ256rrkz:{ *:[v4i64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src) |
| 70914 | /* 200657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ256rrkz), |
| 70915 | /* 200660 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70916 | /* 200662 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70917 | /* 200664 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70918 | /* 200666 */ GIR_RootConstrainSelectedInstOperands, |
| 70919 | /* 200667 */ // GIR_Coverage, 21700, |
| 70920 | /* 200667 */ GIR_EraseRootFromParent_Done, |
| 70921 | /* 200668 */ // Label 4562: @200668 |
| 70922 | /* 200668 */ GIM_Try, /*On fail goto*//*Label 4563*/ GIMT_Encode4(200697), // Rule ID 21736 // |
| 70923 | /* 200673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70924 | /* 200676 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70925 | /* 200680 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 70926 | /* 200684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70927 | /* 200686 */ // (vector_compress:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src, VK4WM:{ *:[v4i1] }:$mask, (undef:{ *:[v4f64] })) => (VCOMPRESSPDZ256rrkz:{ *:[v4f64] } VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src) |
| 70928 | /* 200686 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ256rrkz), |
| 70929 | /* 200689 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70930 | /* 200691 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70931 | /* 200693 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70932 | /* 200695 */ GIR_RootConstrainSelectedInstOperands, |
| 70933 | /* 200696 */ // GIR_Coverage, 21736, |
| 70934 | /* 200696 */ GIR_EraseRootFromParent_Done, |
| 70935 | /* 200697 */ // Label 4563: @200697 |
| 70936 | /* 200697 */ GIM_Try, /*On fail goto*//*Label 4564*/ GIMT_Encode4(200722), // Rule ID 21702 // |
| 70937 | /* 200702 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70938 | /* 200705 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70939 | /* 200709 */ // (vector_compress:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$passthru) => (VPCOMPRESSQZ256rrk:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$passthru, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4i64] }:$src) |
| 70940 | /* 200709 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZ256rrk), |
| 70941 | /* 200712 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70942 | /* 200714 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 70943 | /* 200716 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70944 | /* 200718 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70945 | /* 200720 */ GIR_RootConstrainSelectedInstOperands, |
| 70946 | /* 200721 */ // GIR_Coverage, 21702, |
| 70947 | /* 200721 */ GIR_EraseRootFromParent_Done, |
| 70948 | /* 200722 */ // Label 4564: @200722 |
| 70949 | /* 200722 */ GIM_Try, /*On fail goto*//*Label 4565*/ GIMT_Encode4(200747), // Rule ID 21738 // |
| 70950 | /* 200727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 70951 | /* 200730 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 70952 | /* 200734 */ // (vector_compress:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$passthru) => (VCOMPRESSPDZ256rrk:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$passthru, VK4WM:{ *:[v4i1] }:$mask, VR256X:{ *:[v4f64] }:$src) |
| 70953 | /* 200734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZ256rrk), |
| 70954 | /* 200737 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70955 | /* 200739 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 70956 | /* 200741 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70957 | /* 200743 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70958 | /* 200745 */ GIR_RootConstrainSelectedInstOperands, |
| 70959 | /* 200746 */ // GIR_Coverage, 21738, |
| 70960 | /* 200746 */ GIR_EraseRootFromParent_Done, |
| 70961 | /* 200747 */ // Label 4565: @200747 |
| 70962 | /* 200747 */ GIM_Reject, |
| 70963 | /* 200748 */ // Label 4559: @200748 |
| 70964 | /* 200748 */ GIM_Reject, |
| 70965 | /* 200749 */ // Label 4535: @200749 |
| 70966 | /* 200749 */ GIM_Try, /*On fail goto*//*Label 4566*/ GIMT_Encode4(200863), |
| 70967 | /* 200754 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 70968 | /* 200757 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 70969 | /* 200760 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 70970 | /* 200763 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70971 | /* 200767 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 70972 | /* 200771 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 70973 | /* 200775 */ GIM_Try, /*On fail goto*//*Label 4567*/ GIMT_Encode4(200808), // Rule ID 22115 // |
| 70974 | /* 200780 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 70975 | /* 200783 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70976 | /* 200787 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 70977 | /* 200793 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 70978 | /* 200795 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70979 | /* 200797 */ // (vector_compress:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8i16] }) => (VPCOMPRESSWZ128rrkz:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src) |
| 70980 | /* 200797 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ128rrkz), |
| 70981 | /* 200800 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70982 | /* 200802 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70983 | /* 200804 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70984 | /* 200806 */ GIR_RootConstrainSelectedInstOperands, |
| 70985 | /* 200807 */ // GIR_Coverage, 22115, |
| 70986 | /* 200807 */ GIR_EraseRootFromParent_Done, |
| 70987 | /* 200808 */ // Label 4567: @200808 |
| 70988 | /* 200808 */ GIM_Try, /*On fail goto*//*Label 4568*/ GIMT_Encode4(200837), // Rule ID 22114 // |
| 70989 | /* 200813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 70990 | /* 200816 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 70991 | /* 200820 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 70992 | /* 200824 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 70993 | /* 200826 */ // (vector_compress:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8i16] })) => (VPCOMPRESSWZ128rrkz:{ *:[v8i16] } VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src) |
| 70994 | /* 200826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ128rrkz), |
| 70995 | /* 200829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 70996 | /* 200831 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 70997 | /* 200833 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 70998 | /* 200835 */ GIR_RootConstrainSelectedInstOperands, |
| 70999 | /* 200836 */ // GIR_Coverage, 22114, |
| 71000 | /* 200836 */ GIR_EraseRootFromParent_Done, |
| 71001 | /* 200837 */ // Label 4568: @200837 |
| 71002 | /* 200837 */ GIM_Try, /*On fail goto*//*Label 4569*/ GIMT_Encode4(200862), // Rule ID 22116 // |
| 71003 | /* 200842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71004 | /* 200845 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71005 | /* 200849 */ // (vector_compress:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$passthru) => (VPCOMPRESSWZ128rrk:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR128X:{ *:[v8i16] }:$src) |
| 71006 | /* 200849 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ128rrk), |
| 71007 | /* 200852 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71008 | /* 200854 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71009 | /* 200856 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71010 | /* 200858 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71011 | /* 200860 */ GIR_RootConstrainSelectedInstOperands, |
| 71012 | /* 200861 */ // GIR_Coverage, 22116, |
| 71013 | /* 200861 */ GIR_EraseRootFromParent_Done, |
| 71014 | /* 200862 */ // Label 4569: @200862 |
| 71015 | /* 200862 */ GIM_Reject, |
| 71016 | /* 200863 */ // Label 4566: @200863 |
| 71017 | /* 200863 */ GIM_Reject, |
| 71018 | /* 200864 */ // Label 4536: @200864 |
| 71019 | /* 200864 */ GIM_Try, /*On fail goto*//*Label 4570*/ GIMT_Encode4(201065), |
| 71020 | /* 200869 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 71021 | /* 200872 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 71022 | /* 200875 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 71023 | /* 200878 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71024 | /* 200882 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71025 | /* 200886 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 71026 | /* 200890 */ GIM_Try, /*On fail goto*//*Label 4571*/ GIMT_Encode4(200923), // Rule ID 21683 // |
| 71027 | /* 200895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71028 | /* 200898 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71029 | /* 200902 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71030 | /* 200908 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71031 | /* 200910 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71032 | /* 200912 */ // (vector_compress:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8i32] }) => (VPCOMPRESSDZ256rrkz:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src) |
| 71033 | /* 200912 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ256rrkz), |
| 71034 | /* 200915 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71035 | /* 200917 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71036 | /* 200919 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71037 | /* 200921 */ GIR_RootConstrainSelectedInstOperands, |
| 71038 | /* 200922 */ // GIR_Coverage, 21683, |
| 71039 | /* 200922 */ GIR_EraseRootFromParent_Done, |
| 71040 | /* 200923 */ // Label 4571: @200923 |
| 71041 | /* 200923 */ GIM_Try, /*On fail goto*//*Label 4572*/ GIMT_Encode4(200956), // Rule ID 21719 // |
| 71042 | /* 200928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71043 | /* 200931 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71044 | /* 200935 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71045 | /* 200941 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71046 | /* 200943 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71047 | /* 200945 */ // (vector_compress:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8f32] }) => (VCOMPRESSPSZ256rrkz:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src) |
| 71048 | /* 200945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ256rrkz), |
| 71049 | /* 200948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71050 | /* 200950 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71051 | /* 200952 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71052 | /* 200954 */ GIR_RootConstrainSelectedInstOperands, |
| 71053 | /* 200955 */ // GIR_Coverage, 21719, |
| 71054 | /* 200955 */ GIR_EraseRootFromParent_Done, |
| 71055 | /* 200956 */ // Label 4572: @200956 |
| 71056 | /* 200956 */ GIM_Try, /*On fail goto*//*Label 4573*/ GIMT_Encode4(200985), // Rule ID 21682 // |
| 71057 | /* 200961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71058 | /* 200964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71059 | /* 200968 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71060 | /* 200972 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71061 | /* 200974 */ // (vector_compress:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8i32] })) => (VPCOMPRESSDZ256rrkz:{ *:[v8i32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src) |
| 71062 | /* 200974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ256rrkz), |
| 71063 | /* 200977 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71064 | /* 200979 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71065 | /* 200981 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71066 | /* 200983 */ GIR_RootConstrainSelectedInstOperands, |
| 71067 | /* 200984 */ // GIR_Coverage, 21682, |
| 71068 | /* 200984 */ GIR_EraseRootFromParent_Done, |
| 71069 | /* 200985 */ // Label 4573: @200985 |
| 71070 | /* 200985 */ GIM_Try, /*On fail goto*//*Label 4574*/ GIMT_Encode4(201014), // Rule ID 21718 // |
| 71071 | /* 200990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71072 | /* 200993 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71073 | /* 200997 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71074 | /* 201001 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71075 | /* 201003 */ // (vector_compress:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8f32] })) => (VCOMPRESSPSZ256rrkz:{ *:[v8f32] } VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src) |
| 71076 | /* 201003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ256rrkz), |
| 71077 | /* 201006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71078 | /* 201008 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71079 | /* 201010 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71080 | /* 201012 */ GIR_RootConstrainSelectedInstOperands, |
| 71081 | /* 201013 */ // GIR_Coverage, 21718, |
| 71082 | /* 201013 */ GIR_EraseRootFromParent_Done, |
| 71083 | /* 201014 */ // Label 4574: @201014 |
| 71084 | /* 201014 */ GIM_Try, /*On fail goto*//*Label 4575*/ GIMT_Encode4(201039), // Rule ID 21684 // |
| 71085 | /* 201019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71086 | /* 201022 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71087 | /* 201026 */ // (vector_compress:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$passthru) => (VPCOMPRESSDZ256rrk:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8i32] }:$src) |
| 71088 | /* 201026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZ256rrk), |
| 71089 | /* 201029 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71090 | /* 201031 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71091 | /* 201033 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71092 | /* 201035 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71093 | /* 201037 */ GIR_RootConstrainSelectedInstOperands, |
| 71094 | /* 201038 */ // GIR_Coverage, 21684, |
| 71095 | /* 201038 */ GIR_EraseRootFromParent_Done, |
| 71096 | /* 201039 */ // Label 4575: @201039 |
| 71097 | /* 201039 */ GIM_Try, /*On fail goto*//*Label 4576*/ GIMT_Encode4(201064), // Rule ID 21720 // |
| 71098 | /* 201044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 71099 | /* 201047 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71100 | /* 201051 */ // (vector_compress:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$passthru) => (VCOMPRESSPSZ256rrk:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR256X:{ *:[v8f32] }:$src) |
| 71101 | /* 201051 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZ256rrk), |
| 71102 | /* 201054 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71103 | /* 201056 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71104 | /* 201058 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71105 | /* 201060 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71106 | /* 201062 */ GIR_RootConstrainSelectedInstOperands, |
| 71107 | /* 201063 */ // GIR_Coverage, 21720, |
| 71108 | /* 201063 */ GIR_EraseRootFromParent_Done, |
| 71109 | /* 201064 */ // Label 4576: @201064 |
| 71110 | /* 201064 */ GIM_Reject, |
| 71111 | /* 201065 */ // Label 4570: @201065 |
| 71112 | /* 201065 */ GIM_Reject, |
| 71113 | /* 201066 */ // Label 4537: @201066 |
| 71114 | /* 201066 */ GIM_Try, /*On fail goto*//*Label 4577*/ GIMT_Encode4(201267), |
| 71115 | /* 201071 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 71116 | /* 201074 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s1, |
| 71117 | /* 201077 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 71118 | /* 201080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71119 | /* 201084 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71120 | /* 201088 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK8WMRegClassID), |
| 71121 | /* 201092 */ GIM_Try, /*On fail goto*//*Label 4578*/ GIMT_Encode4(201125), // Rule ID 21695 // |
| 71122 | /* 201097 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71123 | /* 201100 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71124 | /* 201104 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71125 | /* 201110 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71126 | /* 201112 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71127 | /* 201114 */ // (vector_compress:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8i64] }) => (VPCOMPRESSQZrrkz:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 71128 | /* 201114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZrrkz), |
| 71129 | /* 201117 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71130 | /* 201119 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71131 | /* 201121 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71132 | /* 201123 */ GIR_RootConstrainSelectedInstOperands, |
| 71133 | /* 201124 */ // GIR_Coverage, 21695, |
| 71134 | /* 201124 */ GIR_EraseRootFromParent_Done, |
| 71135 | /* 201125 */ // Label 4578: @201125 |
| 71136 | /* 201125 */ GIM_Try, /*On fail goto*//*Label 4579*/ GIMT_Encode4(201158), // Rule ID 21731 // |
| 71137 | /* 201130 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71138 | /* 201133 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71139 | /* 201137 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71140 | /* 201143 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71141 | /* 201145 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71142 | /* 201147 */ // (vector_compress:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src, VK8WM:{ *:[v8i1] }:$mask, immAllZerosV:{ *:[v8f64] }) => (VCOMPRESSPDZrrkz:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src) |
| 71143 | /* 201147 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZrrkz), |
| 71144 | /* 201150 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71145 | /* 201152 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71146 | /* 201154 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71147 | /* 201156 */ GIR_RootConstrainSelectedInstOperands, |
| 71148 | /* 201157 */ // GIR_Coverage, 21731, |
| 71149 | /* 201157 */ GIR_EraseRootFromParent_Done, |
| 71150 | /* 201158 */ // Label 4579: @201158 |
| 71151 | /* 201158 */ GIM_Try, /*On fail goto*//*Label 4580*/ GIMT_Encode4(201187), // Rule ID 21694 // |
| 71152 | /* 201163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71153 | /* 201166 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71154 | /* 201170 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71155 | /* 201174 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71156 | /* 201176 */ // (vector_compress:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8i64] })) => (VPCOMPRESSQZrrkz:{ *:[v8i64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 71157 | /* 201176 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZrrkz), |
| 71158 | /* 201179 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71159 | /* 201181 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71160 | /* 201183 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71161 | /* 201185 */ GIR_RootConstrainSelectedInstOperands, |
| 71162 | /* 201186 */ // GIR_Coverage, 21694, |
| 71163 | /* 201186 */ GIR_EraseRootFromParent_Done, |
| 71164 | /* 201187 */ // Label 4580: @201187 |
| 71165 | /* 201187 */ GIM_Try, /*On fail goto*//*Label 4581*/ GIMT_Encode4(201216), // Rule ID 21730 // |
| 71166 | /* 201192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71167 | /* 201195 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71168 | /* 201199 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71169 | /* 201203 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71170 | /* 201205 */ // (vector_compress:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src, VK8WM:{ *:[v8i1] }:$mask, (undef:{ *:[v8f64] })) => (VCOMPRESSPDZrrkz:{ *:[v8f64] } VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src) |
| 71171 | /* 201205 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZrrkz), |
| 71172 | /* 201208 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71173 | /* 201210 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71174 | /* 201212 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71175 | /* 201214 */ GIR_RootConstrainSelectedInstOperands, |
| 71176 | /* 201215 */ // GIR_Coverage, 21730, |
| 71177 | /* 201215 */ GIR_EraseRootFromParent_Done, |
| 71178 | /* 201216 */ // Label 4581: @201216 |
| 71179 | /* 201216 */ GIM_Try, /*On fail goto*//*Label 4582*/ GIMT_Encode4(201241), // Rule ID 21696 // |
| 71180 | /* 201221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71181 | /* 201224 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71182 | /* 201228 */ // (vector_compress:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$passthru) => (VPCOMPRESSQZrrk:{ *:[v8i64] } VR512:{ *:[v8i64] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8i64] }:$src) |
| 71183 | /* 201228 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSQZrrk), |
| 71184 | /* 201231 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71185 | /* 201233 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71186 | /* 201235 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71187 | /* 201237 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71188 | /* 201239 */ GIR_RootConstrainSelectedInstOperands, |
| 71189 | /* 201240 */ // GIR_Coverage, 21696, |
| 71190 | /* 201240 */ GIR_EraseRootFromParent_Done, |
| 71191 | /* 201241 */ // Label 4582: @201241 |
| 71192 | /* 201241 */ GIM_Try, /*On fail goto*//*Label 4583*/ GIMT_Encode4(201266), // Rule ID 21732 // |
| 71193 | /* 201246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71194 | /* 201249 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71195 | /* 201253 */ // (vector_compress:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$passthru) => (VCOMPRESSPDZrrk:{ *:[v8f64] } VR512:{ *:[v8f64] }:$passthru, VK8WM:{ *:[v8i1] }:$mask, VR512:{ *:[v8f64] }:$src) |
| 71196 | /* 201253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPDZrrk), |
| 71197 | /* 201256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71198 | /* 201258 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71199 | /* 201260 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71200 | /* 201262 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71201 | /* 201264 */ GIR_RootConstrainSelectedInstOperands, |
| 71202 | /* 201265 */ // GIR_Coverage, 21732, |
| 71203 | /* 201265 */ GIR_EraseRootFromParent_Done, |
| 71204 | /* 201266 */ // Label 4583: @201266 |
| 71205 | /* 201266 */ GIM_Reject, |
| 71206 | /* 201267 */ // Label 4577: @201267 |
| 71207 | /* 201267 */ GIM_Reject, |
| 71208 | /* 201268 */ // Label 4538: @201268 |
| 71209 | /* 201268 */ GIM_Try, /*On fail goto*//*Label 4584*/ GIMT_Encode4(201382), |
| 71210 | /* 201273 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 71211 | /* 201276 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 71212 | /* 201279 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 71213 | /* 201282 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71214 | /* 201286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71215 | /* 201290 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 71216 | /* 201294 */ GIM_Try, /*On fail goto*//*Label 4585*/ GIMT_Encode4(201327), // Rule ID 22097 // |
| 71217 | /* 201299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71218 | /* 201302 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71219 | /* 201306 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71220 | /* 201312 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71221 | /* 201314 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71222 | /* 201316 */ // (vector_compress:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16i8] }) => (VPCOMPRESSBZ128rrkz:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src) |
| 71223 | /* 201316 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ128rrkz), |
| 71224 | /* 201319 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71225 | /* 201321 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71226 | /* 201323 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71227 | /* 201325 */ GIR_RootConstrainSelectedInstOperands, |
| 71228 | /* 201326 */ // GIR_Coverage, 22097, |
| 71229 | /* 201326 */ GIR_EraseRootFromParent_Done, |
| 71230 | /* 201327 */ // Label 4585: @201327 |
| 71231 | /* 201327 */ GIM_Try, /*On fail goto*//*Label 4586*/ GIMT_Encode4(201356), // Rule ID 22096 // |
| 71232 | /* 201332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71233 | /* 201335 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71234 | /* 201339 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71235 | /* 201343 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71236 | /* 201345 */ // (vector_compress:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, VK16WM:{ *:[v16i1] }:$mask, (undef:{ *:[v16i8] })) => (VPCOMPRESSBZ128rrkz:{ *:[v16i8] } VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src) |
| 71237 | /* 201345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ128rrkz), |
| 71238 | /* 201348 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71239 | /* 201350 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71240 | /* 201352 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71241 | /* 201354 */ GIR_RootConstrainSelectedInstOperands, |
| 71242 | /* 201355 */ // GIR_Coverage, 22096, |
| 71243 | /* 201355 */ GIR_EraseRootFromParent_Done, |
| 71244 | /* 201356 */ // Label 4586: @201356 |
| 71245 | /* 201356 */ GIM_Try, /*On fail goto*//*Label 4587*/ GIMT_Encode4(201381), // Rule ID 22098 // |
| 71246 | /* 201361 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71247 | /* 201364 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71248 | /* 201368 */ // (vector_compress:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src, VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$passthru) => (VPCOMPRESSBZ128rrk:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$passthru, VK16WM:{ *:[v16i1] }:$mask, VR128X:{ *:[v16i8] }:$src) |
| 71249 | /* 201368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ128rrk), |
| 71250 | /* 201371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71251 | /* 201373 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71252 | /* 201375 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71253 | /* 201377 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71254 | /* 201379 */ GIR_RootConstrainSelectedInstOperands, |
| 71255 | /* 201380 */ // GIR_Coverage, 22098, |
| 71256 | /* 201380 */ GIR_EraseRootFromParent_Done, |
| 71257 | /* 201381 */ // Label 4587: @201381 |
| 71258 | /* 201381 */ GIM_Reject, |
| 71259 | /* 201382 */ // Label 4584: @201382 |
| 71260 | /* 201382 */ GIM_Reject, |
| 71261 | /* 201383 */ // Label 4539: @201383 |
| 71262 | /* 201383 */ GIM_Try, /*On fail goto*//*Label 4588*/ GIMT_Encode4(201497), |
| 71263 | /* 201388 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 71264 | /* 201391 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 71265 | /* 201394 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 71266 | /* 201397 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71267 | /* 201401 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71268 | /* 201405 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 71269 | /* 201409 */ GIM_Try, /*On fail goto*//*Label 4589*/ GIMT_Encode4(201442), // Rule ID 22109 // |
| 71270 | /* 201414 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71271 | /* 201417 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71272 | /* 201421 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71273 | /* 201427 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71274 | /* 201429 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71275 | /* 201431 */ // (vector_compress:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16i16] }) => (VPCOMPRESSWZ256rrkz:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src) |
| 71276 | /* 201431 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ256rrkz), |
| 71277 | /* 201434 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71278 | /* 201436 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71279 | /* 201438 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71280 | /* 201440 */ GIR_RootConstrainSelectedInstOperands, |
| 71281 | /* 201441 */ // GIR_Coverage, 22109, |
| 71282 | /* 201441 */ GIR_EraseRootFromParent_Done, |
| 71283 | /* 201442 */ // Label 4589: @201442 |
| 71284 | /* 201442 */ GIM_Try, /*On fail goto*//*Label 4590*/ GIMT_Encode4(201471), // Rule ID 22108 // |
| 71285 | /* 201447 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71286 | /* 201450 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71287 | /* 201454 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71288 | /* 201458 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71289 | /* 201460 */ // (vector_compress:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, VK16WM:{ *:[v16i1] }:$mask, (undef:{ *:[v16i16] })) => (VPCOMPRESSWZ256rrkz:{ *:[v16i16] } VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src) |
| 71290 | /* 201460 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ256rrkz), |
| 71291 | /* 201463 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71292 | /* 201465 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71293 | /* 201467 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71294 | /* 201469 */ GIR_RootConstrainSelectedInstOperands, |
| 71295 | /* 201470 */ // GIR_Coverage, 22108, |
| 71296 | /* 201470 */ GIR_EraseRootFromParent_Done, |
| 71297 | /* 201471 */ // Label 4590: @201471 |
| 71298 | /* 201471 */ GIM_Try, /*On fail goto*//*Label 4591*/ GIMT_Encode4(201496), // Rule ID 22110 // |
| 71299 | /* 201476 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71300 | /* 201479 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71301 | /* 201483 */ // (vector_compress:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src, VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$passthru) => (VPCOMPRESSWZ256rrk:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$passthru, VK16WM:{ *:[v16i1] }:$mask, VR256X:{ *:[v16i16] }:$src) |
| 71302 | /* 201483 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZ256rrk), |
| 71303 | /* 201486 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71304 | /* 201488 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71305 | /* 201490 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71306 | /* 201492 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71307 | /* 201494 */ GIR_RootConstrainSelectedInstOperands, |
| 71308 | /* 201495 */ // GIR_Coverage, 22110, |
| 71309 | /* 201495 */ GIR_EraseRootFromParent_Done, |
| 71310 | /* 201496 */ // Label 4591: @201496 |
| 71311 | /* 201496 */ GIM_Reject, |
| 71312 | /* 201497 */ // Label 4588: @201497 |
| 71313 | /* 201497 */ GIM_Reject, |
| 71314 | /* 201498 */ // Label 4540: @201498 |
| 71315 | /* 201498 */ GIM_Try, /*On fail goto*//*Label 4592*/ GIMT_Encode4(201699), |
| 71316 | /* 201503 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 71317 | /* 201506 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s1, |
| 71318 | /* 201509 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 71319 | /* 201512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71320 | /* 201516 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71321 | /* 201520 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK16WMRegClassID), |
| 71322 | /* 201524 */ GIM_Try, /*On fail goto*//*Label 4593*/ GIMT_Encode4(201557), // Rule ID 21677 // |
| 71323 | /* 201529 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71324 | /* 201532 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71325 | /* 201536 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71326 | /* 201542 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71327 | /* 201544 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71328 | /* 201546 */ // (vector_compress:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16i32] }) => (VPCOMPRESSDZrrkz:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 71329 | /* 201546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZrrkz), |
| 71330 | /* 201549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71331 | /* 201551 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71332 | /* 201553 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71333 | /* 201555 */ GIR_RootConstrainSelectedInstOperands, |
| 71334 | /* 201556 */ // GIR_Coverage, 21677, |
| 71335 | /* 201556 */ GIR_EraseRootFromParent_Done, |
| 71336 | /* 201557 */ // Label 4593: @201557 |
| 71337 | /* 201557 */ GIM_Try, /*On fail goto*//*Label 4594*/ GIMT_Encode4(201590), // Rule ID 21713 // |
| 71338 | /* 201562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71339 | /* 201565 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71340 | /* 201569 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71341 | /* 201575 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71342 | /* 201577 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71343 | /* 201579 */ // (vector_compress:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src, VK16WM:{ *:[v16i1] }:$mask, immAllZerosV:{ *:[v16f32] }) => (VCOMPRESSPSZrrkz:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src) |
| 71344 | /* 201579 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZrrkz), |
| 71345 | /* 201582 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71346 | /* 201584 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71347 | /* 201586 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71348 | /* 201588 */ GIR_RootConstrainSelectedInstOperands, |
| 71349 | /* 201589 */ // GIR_Coverage, 21713, |
| 71350 | /* 201589 */ GIR_EraseRootFromParent_Done, |
| 71351 | /* 201590 */ // Label 4594: @201590 |
| 71352 | /* 201590 */ GIM_Try, /*On fail goto*//*Label 4595*/ GIMT_Encode4(201619), // Rule ID 21676 // |
| 71353 | /* 201595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71354 | /* 201598 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71355 | /* 201602 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71356 | /* 201606 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71357 | /* 201608 */ // (vector_compress:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, VK16WM:{ *:[v16i1] }:$mask, (undef:{ *:[v16i32] })) => (VPCOMPRESSDZrrkz:{ *:[v16i32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 71358 | /* 201608 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZrrkz), |
| 71359 | /* 201611 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71360 | /* 201613 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71361 | /* 201615 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71362 | /* 201617 */ GIR_RootConstrainSelectedInstOperands, |
| 71363 | /* 201618 */ // GIR_Coverage, 21676, |
| 71364 | /* 201618 */ GIR_EraseRootFromParent_Done, |
| 71365 | /* 201619 */ // Label 4595: @201619 |
| 71366 | /* 201619 */ GIM_Try, /*On fail goto*//*Label 4596*/ GIMT_Encode4(201648), // Rule ID 21712 // |
| 71367 | /* 201624 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71368 | /* 201627 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71369 | /* 201631 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71370 | /* 201635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71371 | /* 201637 */ // (vector_compress:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src, VK16WM:{ *:[v16i1] }:$mask, (undef:{ *:[v16f32] })) => (VCOMPRESSPSZrrkz:{ *:[v16f32] } VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src) |
| 71372 | /* 201637 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZrrkz), |
| 71373 | /* 201640 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71374 | /* 201642 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71375 | /* 201644 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71376 | /* 201646 */ GIR_RootConstrainSelectedInstOperands, |
| 71377 | /* 201647 */ // GIR_Coverage, 21712, |
| 71378 | /* 201647 */ GIR_EraseRootFromParent_Done, |
| 71379 | /* 201648 */ // Label 4596: @201648 |
| 71380 | /* 201648 */ GIM_Try, /*On fail goto*//*Label 4597*/ GIMT_Encode4(201673), // Rule ID 21678 // |
| 71381 | /* 201653 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71382 | /* 201656 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71383 | /* 201660 */ // (vector_compress:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$passthru) => (VPCOMPRESSDZrrk:{ *:[v16i32] } VR512:{ *:[v16i32] }:$passthru, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16i32] }:$src) |
| 71384 | /* 201660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSDZrrk), |
| 71385 | /* 201663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71386 | /* 201665 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71387 | /* 201667 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71388 | /* 201669 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71389 | /* 201671 */ GIR_RootConstrainSelectedInstOperands, |
| 71390 | /* 201672 */ // GIR_Coverage, 21678, |
| 71391 | /* 201672 */ GIR_EraseRootFromParent_Done, |
| 71392 | /* 201673 */ // Label 4597: @201673 |
| 71393 | /* 201673 */ GIM_Try, /*On fail goto*//*Label 4598*/ GIMT_Encode4(201698), // Rule ID 21714 // |
| 71394 | /* 201678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 71395 | /* 201681 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71396 | /* 201685 */ // (vector_compress:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$passthru) => (VCOMPRESSPSZrrk:{ *:[v16f32] } VR512:{ *:[v16f32] }:$passthru, VK16WM:{ *:[v16i1] }:$mask, VR512:{ *:[v16f32] }:$src) |
| 71397 | /* 201685 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VCOMPRESSPSZrrk), |
| 71398 | /* 201688 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71399 | /* 201690 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71400 | /* 201692 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71401 | /* 201694 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71402 | /* 201696 */ GIR_RootConstrainSelectedInstOperands, |
| 71403 | /* 201697 */ // GIR_Coverage, 21714, |
| 71404 | /* 201697 */ GIR_EraseRootFromParent_Done, |
| 71405 | /* 201698 */ // Label 4598: @201698 |
| 71406 | /* 201698 */ GIM_Reject, |
| 71407 | /* 201699 */ // Label 4592: @201699 |
| 71408 | /* 201699 */ GIM_Reject, |
| 71409 | /* 201700 */ // Label 4541: @201700 |
| 71410 | /* 201700 */ GIM_Try, /*On fail goto*//*Label 4599*/ GIMT_Encode4(201814), |
| 71411 | /* 201705 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 71412 | /* 201708 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 71413 | /* 201711 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s8, |
| 71414 | /* 201714 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71415 | /* 201718 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71416 | /* 201722 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32WMRegClassID), |
| 71417 | /* 201726 */ GIM_Try, /*On fail goto*//*Label 4600*/ GIMT_Encode4(201759), // Rule ID 22091 // |
| 71418 | /* 201731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71419 | /* 201734 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71420 | /* 201738 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71421 | /* 201744 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71422 | /* 201746 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71423 | /* 201748 */ // (vector_compress:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, VK32WM:{ *:[v32i1] }:$mask, immAllZerosV:{ *:[v32i8] }) => (VPCOMPRESSBZ256rrkz:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src) |
| 71424 | /* 201748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ256rrkz), |
| 71425 | /* 201751 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71426 | /* 201753 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71427 | /* 201755 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71428 | /* 201757 */ GIR_RootConstrainSelectedInstOperands, |
| 71429 | /* 201758 */ // GIR_Coverage, 22091, |
| 71430 | /* 201758 */ GIR_EraseRootFromParent_Done, |
| 71431 | /* 201759 */ // Label 4600: @201759 |
| 71432 | /* 201759 */ GIM_Try, /*On fail goto*//*Label 4601*/ GIMT_Encode4(201788), // Rule ID 22090 // |
| 71433 | /* 201764 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71434 | /* 201767 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71435 | /* 201771 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71436 | /* 201775 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71437 | /* 201777 */ // (vector_compress:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, VK32WM:{ *:[v32i1] }:$mask, (undef:{ *:[v32i8] })) => (VPCOMPRESSBZ256rrkz:{ *:[v32i8] } VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src) |
| 71438 | /* 201777 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ256rrkz), |
| 71439 | /* 201780 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71440 | /* 201782 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71441 | /* 201784 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71442 | /* 201786 */ GIR_RootConstrainSelectedInstOperands, |
| 71443 | /* 201787 */ // GIR_Coverage, 22090, |
| 71444 | /* 201787 */ GIR_EraseRootFromParent_Done, |
| 71445 | /* 201788 */ // Label 4601: @201788 |
| 71446 | /* 201788 */ GIM_Try, /*On fail goto*//*Label 4602*/ GIMT_Encode4(201813), // Rule ID 22092 // |
| 71447 | /* 201793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2_HasVLX), |
| 71448 | /* 201796 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 71449 | /* 201800 */ // (vector_compress:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src, VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$passthru) => (VPCOMPRESSBZ256rrk:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$passthru, VK32WM:{ *:[v32i1] }:$mask, VR256X:{ *:[v32i8] }:$src) |
| 71450 | /* 201800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZ256rrk), |
| 71451 | /* 201803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71452 | /* 201805 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71453 | /* 201807 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71454 | /* 201809 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71455 | /* 201811 */ GIR_RootConstrainSelectedInstOperands, |
| 71456 | /* 201812 */ // GIR_Coverage, 22092, |
| 71457 | /* 201812 */ GIR_EraseRootFromParent_Done, |
| 71458 | /* 201813 */ // Label 4602: @201813 |
| 71459 | /* 201813 */ GIM_Reject, |
| 71460 | /* 201814 */ // Label 4599: @201814 |
| 71461 | /* 201814 */ GIM_Reject, |
| 71462 | /* 201815 */ // Label 4542: @201815 |
| 71463 | /* 201815 */ GIM_Try, /*On fail goto*//*Label 4603*/ GIMT_Encode4(201929), |
| 71464 | /* 201820 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 71465 | /* 201823 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s1, |
| 71466 | /* 201826 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 71467 | /* 201829 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71468 | /* 201833 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71469 | /* 201837 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK32WMRegClassID), |
| 71470 | /* 201841 */ GIM_Try, /*On fail goto*//*Label 4604*/ GIMT_Encode4(201874), // Rule ID 22103 // |
| 71471 | /* 201846 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71472 | /* 201849 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71473 | /* 201853 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71474 | /* 201859 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71475 | /* 201861 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71476 | /* 201863 */ // (vector_compress:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, VK32WM:{ *:[v32i1] }:$mask, immAllZerosV:{ *:[v32i16] }) => (VPCOMPRESSWZrrkz:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src) |
| 71477 | /* 201863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZrrkz), |
| 71478 | /* 201866 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71479 | /* 201868 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71480 | /* 201870 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71481 | /* 201872 */ GIR_RootConstrainSelectedInstOperands, |
| 71482 | /* 201873 */ // GIR_Coverage, 22103, |
| 71483 | /* 201873 */ GIR_EraseRootFromParent_Done, |
| 71484 | /* 201874 */ // Label 4604: @201874 |
| 71485 | /* 201874 */ GIM_Try, /*On fail goto*//*Label 4605*/ GIMT_Encode4(201903), // Rule ID 22102 // |
| 71486 | /* 201879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71487 | /* 201882 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71488 | /* 201886 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71489 | /* 201890 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71490 | /* 201892 */ // (vector_compress:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, VK32WM:{ *:[v32i1] }:$mask, (undef:{ *:[v32i16] })) => (VPCOMPRESSWZrrkz:{ *:[v32i16] } VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src) |
| 71491 | /* 201892 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZrrkz), |
| 71492 | /* 201895 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71493 | /* 201897 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71494 | /* 201899 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71495 | /* 201901 */ GIR_RootConstrainSelectedInstOperands, |
| 71496 | /* 201902 */ // GIR_Coverage, 22102, |
| 71497 | /* 201902 */ GIR_EraseRootFromParent_Done, |
| 71498 | /* 201903 */ // Label 4605: @201903 |
| 71499 | /* 201903 */ GIM_Try, /*On fail goto*//*Label 4606*/ GIMT_Encode4(201928), // Rule ID 22104 // |
| 71500 | /* 201908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71501 | /* 201911 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71502 | /* 201915 */ // (vector_compress:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src, VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$passthru) => (VPCOMPRESSWZrrk:{ *:[v32i16] } VR512:{ *:[v32i16] }:$passthru, VK32WM:{ *:[v32i1] }:$mask, VR512:{ *:[v32i16] }:$src) |
| 71503 | /* 201915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSWZrrk), |
| 71504 | /* 201918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71505 | /* 201920 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71506 | /* 201922 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71507 | /* 201924 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71508 | /* 201926 */ GIR_RootConstrainSelectedInstOperands, |
| 71509 | /* 201927 */ // GIR_Coverage, 22104, |
| 71510 | /* 201927 */ GIR_EraseRootFromParent_Done, |
| 71511 | /* 201928 */ // Label 4606: @201928 |
| 71512 | /* 201928 */ GIM_Reject, |
| 71513 | /* 201929 */ // Label 4603: @201929 |
| 71514 | /* 201929 */ GIM_Reject, |
| 71515 | /* 201930 */ // Label 4543: @201930 |
| 71516 | /* 201930 */ GIM_Try, /*On fail goto*//*Label 4607*/ GIMT_Encode4(202044), |
| 71517 | /* 201935 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 71518 | /* 201938 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v64s1, |
| 71519 | /* 201941 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v64s8, |
| 71520 | /* 201944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71521 | /* 201948 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71522 | /* 201952 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VK64WMRegClassID), |
| 71523 | /* 201956 */ GIM_Try, /*On fail goto*//*Label 4608*/ GIMT_Encode4(201989), // Rule ID 22085 // |
| 71524 | /* 201961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71525 | /* 201964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71526 | /* 201968 */ GIM_CheckOpcodeIsEither, /*MI*/1, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR_TRUNC), |
| 71527 | /* 201974 */ GIM_CheckIsBuildVectorAllZeros, /*MI*/1, |
| 71528 | /* 201976 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71529 | /* 201978 */ // (vector_compress:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, VK64WM:{ *:[v64i1] }:$mask, immAllZerosV:{ *:[v64i8] }) => (VPCOMPRESSBZrrkz:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src) |
| 71530 | /* 201978 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZrrkz), |
| 71531 | /* 201981 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71532 | /* 201983 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71533 | /* 201985 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71534 | /* 201987 */ GIR_RootConstrainSelectedInstOperands, |
| 71535 | /* 201988 */ // GIR_Coverage, 22085, |
| 71536 | /* 201988 */ GIR_EraseRootFromParent_Done, |
| 71537 | /* 201989 */ // Label 4608: @201989 |
| 71538 | /* 201989 */ GIM_Try, /*On fail goto*//*Label 4609*/ GIMT_Encode4(202018), // Rule ID 22084 // |
| 71539 | /* 201994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71540 | /* 201997 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 71541 | /* 202001 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_IMPLICIT_DEF), |
| 71542 | /* 202005 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71543 | /* 202007 */ // (vector_compress:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, VK64WM:{ *:[v64i1] }:$mask, (undef:{ *:[v64i8] })) => (VPCOMPRESSBZrrkz:{ *:[v64i8] } VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src) |
| 71544 | /* 202007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZrrkz), |
| 71545 | /* 202010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71546 | /* 202012 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71547 | /* 202014 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71548 | /* 202016 */ GIR_RootConstrainSelectedInstOperands, |
| 71549 | /* 202017 */ // GIR_Coverage, 22084, |
| 71550 | /* 202017 */ GIR_EraseRootFromParent_Done, |
| 71551 | /* 202018 */ // Label 4609: @202018 |
| 71552 | /* 202018 */ GIM_Try, /*On fail goto*//*Label 4610*/ GIMT_Encode4(202043), // Rule ID 22086 // |
| 71553 | /* 202023 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVBMI2), |
| 71554 | /* 202026 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 71555 | /* 202030 */ // (vector_compress:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src, VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$passthru) => (VPCOMPRESSBZrrk:{ *:[v64i8] } VR512:{ *:[v64i8] }:$passthru, VK64WM:{ *:[v64i1] }:$mask, VR512:{ *:[v64i8] }:$src) |
| 71556 | /* 202030 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPCOMPRESSBZrrk), |
| 71557 | /* 202033 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71558 | /* 202035 */ GIR_RootToRootCopy, /*OpIdx*/3, // passthru |
| 71559 | /* 202037 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 71560 | /* 202039 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71561 | /* 202041 */ GIR_RootConstrainSelectedInstOperands, |
| 71562 | /* 202042 */ // GIR_Coverage, 22086, |
| 71563 | /* 202042 */ GIR_EraseRootFromParent_Done, |
| 71564 | /* 202043 */ // Label 4610: @202043 |
| 71565 | /* 202043 */ GIM_Reject, |
| 71566 | /* 202044 */ // Label 4607: @202044 |
| 71567 | /* 202044 */ GIM_Reject, |
| 71568 | /* 202045 */ // Label 4544: @202045 |
| 71569 | /* 202045 */ GIM_Reject, |
| 71570 | /* 202046 */ // Label 63: @202046 |
| 71571 | /* 202046 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 4614*/ GIMT_Encode4(202351), |
| 71572 | /* 202057 */ /*GILLT_s16*//*Label 4611*/ GIMT_Encode4(202069), |
| 71573 | /* 202061 */ /*GILLT_s32*//*Label 4612*/ GIMT_Encode4(202163), |
| 71574 | /* 202065 */ /*GILLT_s64*//*Label 4613*/ GIMT_Encode4(202257), |
| 71575 | /* 202069 */ // Label 4611: @202069 |
| 71576 | /* 202069 */ GIM_Try, /*On fail goto*//*Label 4615*/ GIMT_Encode4(202162), |
| 71577 | /* 202074 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 71578 | /* 202077 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 71579 | /* 202081 */ GIM_Try, /*On fail goto*//*Label 4616*/ GIMT_Encode4(202136), // Rule ID 77 // |
| 71580 | /* 202086 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 71581 | /* 202089 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71582 | /* 202093 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71583 | /* 202097 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71584 | /* 202100 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71585 | /* 202104 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 71586 | /* 202108 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71587 | /* 202110 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71588 | /* 202117 */ // (cttz:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (TZCNT16rm:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 71589 | /* 202117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZCNT16rm), |
| 71590 | /* 202120 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71591 | /* 202122 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 71592 | /* 202126 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71593 | /* 202129 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71594 | /* 202134 */ GIR_RootConstrainSelectedInstOperands, |
| 71595 | /* 202135 */ // GIR_Coverage, 77, |
| 71596 | /* 202135 */ GIR_EraseRootFromParent_Done, |
| 71597 | /* 202136 */ // Label 4616: @202136 |
| 71598 | /* 202136 */ GIM_Try, /*On fail goto*//*Label 4617*/ GIMT_Encode4(202161), // Rule ID 76 // |
| 71599 | /* 202141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 71600 | /* 202144 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 71601 | /* 202148 */ // (cttz:{ *:[i16] } GR16:{ *:[i16] }:$src1) => (TZCNT16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 71602 | /* 202148 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::TZCNT16rr), |
| 71603 | /* 202153 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 71604 | /* 202159 */ GIR_RootConstrainSelectedInstOperands, |
| 71605 | /* 202160 */ // GIR_Coverage, 76, |
| 71606 | /* 202160 */ GIR_Done, |
| 71607 | /* 202161 */ // Label 4617: @202161 |
| 71608 | /* 202161 */ GIM_Reject, |
| 71609 | /* 202162 */ // Label 4615: @202162 |
| 71610 | /* 202162 */ GIM_Reject, |
| 71611 | /* 202163 */ // Label 4612: @202163 |
| 71612 | /* 202163 */ GIM_Try, /*On fail goto*//*Label 4618*/ GIMT_Encode4(202256), |
| 71613 | /* 202168 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 71614 | /* 202171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 71615 | /* 202175 */ GIM_Try, /*On fail goto*//*Label 4619*/ GIMT_Encode4(202230), // Rule ID 79 // |
| 71616 | /* 202180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 71617 | /* 202183 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71618 | /* 202187 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71619 | /* 202191 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71620 | /* 202194 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71621 | /* 202198 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 71622 | /* 202202 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71623 | /* 202204 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71624 | /* 202211 */ // (cttz:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (TZCNT32rm:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 71625 | /* 202211 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZCNT32rm), |
| 71626 | /* 202214 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71627 | /* 202216 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 71628 | /* 202220 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71629 | /* 202223 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71630 | /* 202228 */ GIR_RootConstrainSelectedInstOperands, |
| 71631 | /* 202229 */ // GIR_Coverage, 79, |
| 71632 | /* 202229 */ GIR_EraseRootFromParent_Done, |
| 71633 | /* 202230 */ // Label 4619: @202230 |
| 71634 | /* 202230 */ GIM_Try, /*On fail goto*//*Label 4620*/ GIMT_Encode4(202255), // Rule ID 78 // |
| 71635 | /* 202235 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 71636 | /* 202238 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 71637 | /* 202242 */ // (cttz:{ *:[i32] } GR32:{ *:[i32] }:$src1) => (TZCNT32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 71638 | /* 202242 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::TZCNT32rr), |
| 71639 | /* 202247 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 71640 | /* 202253 */ GIR_RootConstrainSelectedInstOperands, |
| 71641 | /* 202254 */ // GIR_Coverage, 78, |
| 71642 | /* 202254 */ GIR_Done, |
| 71643 | /* 202255 */ // Label 4620: @202255 |
| 71644 | /* 202255 */ GIM_Reject, |
| 71645 | /* 202256 */ // Label 4618: @202256 |
| 71646 | /* 202256 */ GIM_Reject, |
| 71647 | /* 202257 */ // Label 4613: @202257 |
| 71648 | /* 202257 */ GIM_Try, /*On fail goto*//*Label 4621*/ GIMT_Encode4(202350), |
| 71649 | /* 202262 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 71650 | /* 202265 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 71651 | /* 202269 */ GIM_Try, /*On fail goto*//*Label 4622*/ GIMT_Encode4(202324), // Rule ID 81 // |
| 71652 | /* 202274 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 71653 | /* 202277 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71654 | /* 202281 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71655 | /* 202285 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71656 | /* 202288 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 71657 | /* 202292 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71658 | /* 202296 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71659 | /* 202298 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71660 | /* 202305 */ // (cttz:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (TZCNT64rm:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 71661 | /* 202305 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::TZCNT64rm), |
| 71662 | /* 202308 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71663 | /* 202310 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 71664 | /* 202314 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71665 | /* 202317 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71666 | /* 202322 */ GIR_RootConstrainSelectedInstOperands, |
| 71667 | /* 202323 */ // GIR_Coverage, 81, |
| 71668 | /* 202323 */ GIR_EraseRootFromParent_Done, |
| 71669 | /* 202324 */ // Label 4622: @202324 |
| 71670 | /* 202324 */ GIM_Try, /*On fail goto*//*Label 4623*/ GIMT_Encode4(202349), // Rule ID 80 // |
| 71671 | /* 202329 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBMI), |
| 71672 | /* 202332 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 71673 | /* 202336 */ // (cttz:{ *:[i64] } GR64:{ *:[i64] }:$src1) => (TZCNT64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 71674 | /* 202336 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::TZCNT64rr), |
| 71675 | /* 202341 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 71676 | /* 202347 */ GIR_RootConstrainSelectedInstOperands, |
| 71677 | /* 202348 */ // GIR_Coverage, 80, |
| 71678 | /* 202348 */ GIR_Done, |
| 71679 | /* 202349 */ // Label 4623: @202349 |
| 71680 | /* 202349 */ GIM_Reject, |
| 71681 | /* 202350 */ // Label 4621: @202350 |
| 71682 | /* 202350 */ GIM_Reject, |
| 71683 | /* 202351 */ // Label 4614: @202351 |
| 71684 | /* 202351 */ GIM_Reject, |
| 71685 | /* 202352 */ // Label 64: @202352 |
| 71686 | /* 202352 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 4627*/ GIMT_Encode4(202738), |
| 71687 | /* 202363 */ /*GILLT_s16*//*Label 4624*/ GIMT_Encode4(202375), |
| 71688 | /* 202367 */ /*GILLT_s32*//*Label 4625*/ GIMT_Encode4(202496), |
| 71689 | /* 202371 */ /*GILLT_s64*//*Label 4626*/ GIMT_Encode4(202617), |
| 71690 | /* 202375 */ // Label 4624: @202375 |
| 71691 | /* 202375 */ GIM_Try, /*On fail goto*//*Label 4628*/ GIMT_Encode4(202495), |
| 71692 | /* 202380 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 71693 | /* 202383 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 71694 | /* 202387 */ GIM_Try, /*On fail goto*//*Label 4629*/ GIMT_Encode4(202456), // Rule ID 23067 // |
| 71695 | /* 202392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71696 | /* 202396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71697 | /* 202400 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71698 | /* 202403 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71699 | /* 202407 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 71700 | /* 202411 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71701 | /* 202413 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71702 | /* 202420 */ // (cttz_zero_undef:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (BSF16rm:{ *:[i16] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i16] }), addr:{ *:[iPTR] }:$src) |
| 71703 | /* 202420 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 71704 | /* 202423 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 71705 | /* 202427 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 71706 | /* 202432 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 71707 | /* 202434 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF16rm), |
| 71708 | /* 202437 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71709 | /* 202439 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 71710 | /* 202442 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 71711 | /* 202446 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71712 | /* 202449 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71713 | /* 202454 */ GIR_RootConstrainSelectedInstOperands, |
| 71714 | /* 202455 */ // GIR_Coverage, 23067, |
| 71715 | /* 202455 */ GIR_EraseRootFromParent_Done, |
| 71716 | /* 202456 */ // Label 4629: @202456 |
| 71717 | /* 202456 */ GIM_Try, /*On fail goto*//*Label 4630*/ GIMT_Encode4(202494), // Rule ID 23064 // |
| 71718 | /* 202461 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 71719 | /* 202465 */ // (cttz_zero_undef:{ *:[i16] } GR16:{ *:[i16] }:$src) => (BSF16rr:{ *:[i16] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i16] }), GR16:{ *:[i16] }:$src) |
| 71720 | /* 202465 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 71721 | /* 202468 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 71722 | /* 202472 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 71723 | /* 202477 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 71724 | /* 202479 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF16rr), |
| 71725 | /* 202482 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71726 | /* 202484 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 71727 | /* 202487 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71728 | /* 202489 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71729 | /* 202492 */ GIR_RootConstrainSelectedInstOperands, |
| 71730 | /* 202493 */ // GIR_Coverage, 23064, |
| 71731 | /* 202493 */ GIR_EraseRootFromParent_Done, |
| 71732 | /* 202494 */ // Label 4630: @202494 |
| 71733 | /* 202494 */ GIM_Reject, |
| 71734 | /* 202495 */ // Label 4628: @202495 |
| 71735 | /* 202495 */ GIM_Reject, |
| 71736 | /* 202496 */ // Label 4625: @202496 |
| 71737 | /* 202496 */ GIM_Try, /*On fail goto*//*Label 4631*/ GIMT_Encode4(202616), |
| 71738 | /* 202501 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 71739 | /* 202504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 71740 | /* 202508 */ GIM_Try, /*On fail goto*//*Label 4632*/ GIMT_Encode4(202577), // Rule ID 23068 // |
| 71741 | /* 202513 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71742 | /* 202517 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71743 | /* 202521 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71744 | /* 202524 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71745 | /* 202528 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 71746 | /* 202532 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71747 | /* 202534 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71748 | /* 202541 */ // (cttz_zero_undef:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (BSF32rm:{ *:[i32] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), addr:{ *:[iPTR] }:$src) |
| 71749 | /* 202541 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 71750 | /* 202544 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 71751 | /* 202548 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 71752 | /* 202553 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 71753 | /* 202555 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF32rm), |
| 71754 | /* 202558 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71755 | /* 202560 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 71756 | /* 202563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 71757 | /* 202567 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71758 | /* 202570 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71759 | /* 202575 */ GIR_RootConstrainSelectedInstOperands, |
| 71760 | /* 202576 */ // GIR_Coverage, 23068, |
| 71761 | /* 202576 */ GIR_EraseRootFromParent_Done, |
| 71762 | /* 202577 */ // Label 4632: @202577 |
| 71763 | /* 202577 */ GIM_Try, /*On fail goto*//*Label 4633*/ GIMT_Encode4(202615), // Rule ID 23065 // |
| 71764 | /* 202582 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 71765 | /* 202586 */ // (cttz_zero_undef:{ *:[i32] } GR32:{ *:[i32] }:$src) => (BSF32rr:{ *:[i32] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i32] }), GR32:{ *:[i32] }:$src) |
| 71766 | /* 202586 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 71767 | /* 202589 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 71768 | /* 202593 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 71769 | /* 202598 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 71770 | /* 202600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF32rr), |
| 71771 | /* 202603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71772 | /* 202605 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 71773 | /* 202608 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71774 | /* 202610 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71775 | /* 202613 */ GIR_RootConstrainSelectedInstOperands, |
| 71776 | /* 202614 */ // GIR_Coverage, 23065, |
| 71777 | /* 202614 */ GIR_EraseRootFromParent_Done, |
| 71778 | /* 202615 */ // Label 4633: @202615 |
| 71779 | /* 202615 */ GIM_Reject, |
| 71780 | /* 202616 */ // Label 4631: @202616 |
| 71781 | /* 202616 */ GIM_Reject, |
| 71782 | /* 202617 */ // Label 4626: @202617 |
| 71783 | /* 202617 */ GIM_Try, /*On fail goto*//*Label 4634*/ GIMT_Encode4(202737), |
| 71784 | /* 202622 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 71785 | /* 202625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 71786 | /* 202629 */ GIM_Try, /*On fail goto*//*Label 4635*/ GIMT_Encode4(202698), // Rule ID 23069 // |
| 71787 | /* 202634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71788 | /* 202638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71789 | /* 202642 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71790 | /* 202645 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 71791 | /* 202649 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71792 | /* 202653 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71793 | /* 202655 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71794 | /* 202662 */ // (cttz_zero_undef:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (BSF64rm:{ *:[i64] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i64] }), addr:{ *:[iPTR] }:$src) |
| 71795 | /* 202662 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 71796 | /* 202665 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 71797 | /* 202669 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 71798 | /* 202674 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 71799 | /* 202676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF64rm), |
| 71800 | /* 202679 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71801 | /* 202681 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 71802 | /* 202684 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 71803 | /* 202688 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71804 | /* 202691 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71805 | /* 202696 */ GIR_RootConstrainSelectedInstOperands, |
| 71806 | /* 202697 */ // GIR_Coverage, 23069, |
| 71807 | /* 202697 */ GIR_EraseRootFromParent_Done, |
| 71808 | /* 202698 */ // Label 4635: @202698 |
| 71809 | /* 202698 */ GIM_Try, /*On fail goto*//*Label 4636*/ GIMT_Encode4(202736), // Rule ID 23066 // |
| 71810 | /* 202703 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 71811 | /* 202707 */ // (cttz_zero_undef:{ *:[i64] } GR64:{ *:[i64] }:$src) => (BSF64rr:{ *:[i64] }:{ *:[i32] } (IMPLICIT_DEF:{ *:[i64] }), GR64:{ *:[i64] }:$src) |
| 71812 | /* 202707 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 71813 | /* 202710 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 71814 | /* 202714 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 71815 | /* 202719 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 71816 | /* 202721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::BSF64rr), |
| 71817 | /* 202724 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71818 | /* 202726 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 71819 | /* 202729 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 71820 | /* 202731 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71821 | /* 202734 */ GIR_RootConstrainSelectedInstOperands, |
| 71822 | /* 202735 */ // GIR_Coverage, 23066, |
| 71823 | /* 202735 */ GIR_EraseRootFromParent_Done, |
| 71824 | /* 202736 */ // Label 4636: @202736 |
| 71825 | /* 202736 */ GIM_Reject, |
| 71826 | /* 202737 */ // Label 4634: @202737 |
| 71827 | /* 202737 */ GIM_Reject, |
| 71828 | /* 202738 */ // Label 4627: @202738 |
| 71829 | /* 202738 */ GIM_Reject, |
| 71830 | /* 202739 */ // Label 65: @202739 |
| 71831 | /* 202739 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(20), /*)*//*default:*//*Label 4646*/ GIMT_Encode4(204042), |
| 71832 | /* 202750 */ /*GILLT_s16*//*Label 4637*/ GIMT_Encode4(202822), |
| 71833 | /* 202754 */ /*GILLT_s32*//*Label 4638*/ GIMT_Encode4(202916), |
| 71834 | /* 202758 */ /*GILLT_s64*//*Label 4639*/ GIMT_Encode4(203010), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 71835 | /* 202774 */ /*GILLT_v2s64*//*Label 4640*/ GIMT_Encode4(203104), GIMT_Encode4(0), |
| 71836 | /* 202782 */ /*GILLT_v4s32*//*Label 4641*/ GIMT_Encode4(203300), |
| 71837 | /* 202786 */ /*GILLT_v4s64*//*Label 4642*/ GIMT_Encode4(203496), GIMT_Encode4(0), GIMT_Encode4(0), |
| 71838 | /* 202798 */ /*GILLT_v8s32*//*Label 4643*/ GIMT_Encode4(203684), |
| 71839 | /* 202802 */ /*GILLT_v8s64*//*Label 4644*/ GIMT_Encode4(203872), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 71840 | /* 202818 */ /*GILLT_v16s32*//*Label 4645*/ GIMT_Encode4(203957), |
| 71841 | /* 202822 */ // Label 4637: @202822 |
| 71842 | /* 202822 */ GIM_Try, /*On fail goto*//*Label 4647*/ GIMT_Encode4(202915), |
| 71843 | /* 202827 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 71844 | /* 202830 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 71845 | /* 202834 */ GIM_Try, /*On fail goto*//*Label 4648*/ GIMT_Encode4(202889), // Rule ID 71 // |
| 71846 | /* 202839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 71847 | /* 202842 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71848 | /* 202846 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71849 | /* 202850 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71850 | /* 202853 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71851 | /* 202857 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 71852 | /* 202861 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71853 | /* 202863 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71854 | /* 202870 */ // (ctlz:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (LZCNT16rm:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 71855 | /* 202870 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LZCNT16rm), |
| 71856 | /* 202873 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71857 | /* 202875 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 71858 | /* 202879 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71859 | /* 202882 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71860 | /* 202887 */ GIR_RootConstrainSelectedInstOperands, |
| 71861 | /* 202888 */ // GIR_Coverage, 71, |
| 71862 | /* 202888 */ GIR_EraseRootFromParent_Done, |
| 71863 | /* 202889 */ // Label 4648: @202889 |
| 71864 | /* 202889 */ GIM_Try, /*On fail goto*//*Label 4649*/ GIMT_Encode4(202914), // Rule ID 70 // |
| 71865 | /* 202894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 71866 | /* 202897 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 71867 | /* 202901 */ // (ctlz:{ *:[i16] } GR16:{ *:[i16] }:$src1) => (LZCNT16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 71868 | /* 202901 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::LZCNT16rr), |
| 71869 | /* 202906 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 71870 | /* 202912 */ GIR_RootConstrainSelectedInstOperands, |
| 71871 | /* 202913 */ // GIR_Coverage, 70, |
| 71872 | /* 202913 */ GIR_Done, |
| 71873 | /* 202914 */ // Label 4649: @202914 |
| 71874 | /* 202914 */ GIM_Reject, |
| 71875 | /* 202915 */ // Label 4647: @202915 |
| 71876 | /* 202915 */ GIM_Reject, |
| 71877 | /* 202916 */ // Label 4638: @202916 |
| 71878 | /* 202916 */ GIM_Try, /*On fail goto*//*Label 4650*/ GIMT_Encode4(203009), |
| 71879 | /* 202921 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 71880 | /* 202924 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 71881 | /* 202928 */ GIM_Try, /*On fail goto*//*Label 4651*/ GIMT_Encode4(202983), // Rule ID 73 // |
| 71882 | /* 202933 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 71883 | /* 202936 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71884 | /* 202940 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71885 | /* 202944 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71886 | /* 202947 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71887 | /* 202951 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 71888 | /* 202955 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71889 | /* 202957 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71890 | /* 202964 */ // (ctlz:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (LZCNT32rm:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 71891 | /* 202964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LZCNT32rm), |
| 71892 | /* 202967 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71893 | /* 202969 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 71894 | /* 202973 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71895 | /* 202976 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71896 | /* 202981 */ GIR_RootConstrainSelectedInstOperands, |
| 71897 | /* 202982 */ // GIR_Coverage, 73, |
| 71898 | /* 202982 */ GIR_EraseRootFromParent_Done, |
| 71899 | /* 202983 */ // Label 4651: @202983 |
| 71900 | /* 202983 */ GIM_Try, /*On fail goto*//*Label 4652*/ GIMT_Encode4(203008), // Rule ID 72 // |
| 71901 | /* 202988 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 71902 | /* 202991 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 71903 | /* 202995 */ // (ctlz:{ *:[i32] } GR32:{ *:[i32] }:$src1) => (LZCNT32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 71904 | /* 202995 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::LZCNT32rr), |
| 71905 | /* 203000 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 71906 | /* 203006 */ GIR_RootConstrainSelectedInstOperands, |
| 71907 | /* 203007 */ // GIR_Coverage, 72, |
| 71908 | /* 203007 */ GIR_Done, |
| 71909 | /* 203008 */ // Label 4652: @203008 |
| 71910 | /* 203008 */ GIM_Reject, |
| 71911 | /* 203009 */ // Label 4650: @203009 |
| 71912 | /* 203009 */ GIM_Reject, |
| 71913 | /* 203010 */ // Label 4639: @203010 |
| 71914 | /* 203010 */ GIM_Try, /*On fail goto*//*Label 4653*/ GIMT_Encode4(203103), |
| 71915 | /* 203015 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 71916 | /* 203018 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 71917 | /* 203022 */ GIM_Try, /*On fail goto*//*Label 4654*/ GIMT_Encode4(203077), // Rule ID 75 // |
| 71918 | /* 203027 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 71919 | /* 203030 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71920 | /* 203034 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71921 | /* 203038 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71922 | /* 203041 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 71923 | /* 203045 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71924 | /* 203049 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71925 | /* 203051 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71926 | /* 203058 */ // (ctlz:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (LZCNT64rm:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 71927 | /* 203058 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::LZCNT64rm), |
| 71928 | /* 203061 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71929 | /* 203063 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 71930 | /* 203067 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 71931 | /* 203070 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71932 | /* 203075 */ GIR_RootConstrainSelectedInstOperands, |
| 71933 | /* 203076 */ // GIR_Coverage, 75, |
| 71934 | /* 203076 */ GIR_EraseRootFromParent_Done, |
| 71935 | /* 203077 */ // Label 4654: @203077 |
| 71936 | /* 203077 */ GIM_Try, /*On fail goto*//*Label 4655*/ GIMT_Encode4(203102), // Rule ID 74 // |
| 71937 | /* 203082 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasLZCNT), |
| 71938 | /* 203085 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 71939 | /* 203089 */ // (ctlz:{ *:[i64] } GR64:{ *:[i64] }:$src1) => (LZCNT64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 71940 | /* 203089 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::LZCNT64rr), |
| 71941 | /* 203094 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 71942 | /* 203100 */ GIR_RootConstrainSelectedInstOperands, |
| 71943 | /* 203101 */ // GIR_Coverage, 74, |
| 71944 | /* 203101 */ GIR_Done, |
| 71945 | /* 203102 */ // Label 4655: @203102 |
| 71946 | /* 203102 */ GIM_Reject, |
| 71947 | /* 203103 */ // Label 4653: @203103 |
| 71948 | /* 203103 */ GIM_Reject, |
| 71949 | /* 203104 */ // Label 4640: @203104 |
| 71950 | /* 203104 */ GIM_Try, /*On fail goto*//*Label 4656*/ GIMT_Encode4(203299), |
| 71951 | /* 203109 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 71952 | /* 203112 */ GIM_Try, /*On fail goto*//*Label 4657*/ GIMT_Encode4(203168), // Rule ID 13361 // |
| 71953 | /* 203117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 71954 | /* 203120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71955 | /* 203124 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 71956 | /* 203128 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 71957 | /* 203132 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 71958 | /* 203135 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 71959 | /* 203139 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 71960 | /* 203143 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 71961 | /* 203145 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 71962 | /* 203152 */ // (ctlz:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1) |
| 71963 | /* 203152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZ128rm), |
| 71964 | /* 203155 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 71965 | /* 203157 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 71966 | /* 203161 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 71967 | /* 203166 */ GIR_RootConstrainSelectedInstOperands, |
| 71968 | /* 203167 */ // GIR_Coverage, 13361, |
| 71969 | /* 203167 */ GIR_EraseRootFromParent_Done, |
| 71970 | /* 203168 */ // Label 4657: @203168 |
| 71971 | /* 203168 */ GIM_Try, /*On fail goto*//*Label 4658*/ GIMT_Encode4(203191), // Rule ID 13358 // |
| 71972 | /* 203173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 71973 | /* 203176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71974 | /* 203180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71975 | /* 203184 */ // (ctlz:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) => (VPLZCNTQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) |
| 71976 | /* 203184 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZ128rr), |
| 71977 | /* 203189 */ GIR_RootConstrainSelectedInstOperands, |
| 71978 | /* 203190 */ // GIR_Coverage, 13358, |
| 71979 | /* 203190 */ GIR_Done, |
| 71980 | /* 203191 */ // Label 4658: @203191 |
| 71981 | /* 203191 */ GIM_Try, /*On fail goto*//*Label 4659*/ GIMT_Encode4(203298), // Rule ID 21837 // |
| 71982 | /* 203196 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_NoVLX), |
| 71983 | /* 203199 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 71984 | /* 203203 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 71985 | /* 203207 */ // (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] }) |
| 71986 | /* 203207 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 71987 | /* 203210 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 71988 | /* 203214 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 71989 | /* 203219 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 71990 | /* 203221 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 71991 | /* 203224 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 71992 | /* 203228 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 71993 | /* 203233 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 71994 | /* 203236 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 71995 | /* 203240 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 71996 | /* 203243 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 71997 | /* 203248 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 71998 | /* 203253 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 71999 | /* 203258 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72000 | /* 203261 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZrr), |
| 72001 | /* 203265 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72002 | /* 203270 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72003 | /* 203273 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72004 | /* 203275 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72005 | /* 203278 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72006 | /* 203280 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72007 | /* 203287 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72008 | /* 203292 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72009 | /* 203297 */ // GIR_Coverage, 21837, |
| 72010 | /* 203297 */ GIR_EraseRootFromParent_Done, |
| 72011 | /* 203298 */ // Label 4659: @203298 |
| 72012 | /* 203298 */ GIM_Reject, |
| 72013 | /* 203299 */ // Label 4656: @203299 |
| 72014 | /* 203299 */ GIM_Reject, |
| 72015 | /* 203300 */ // Label 4641: @203300 |
| 72016 | /* 203300 */ GIM_Try, /*On fail goto*//*Label 4660*/ GIMT_Encode4(203495), |
| 72017 | /* 203305 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 72018 | /* 203308 */ GIM_Try, /*On fail goto*//*Label 4661*/ GIMT_Encode4(203364), // Rule ID 13388 // |
| 72019 | /* 203313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72020 | /* 203316 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72021 | /* 203320 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72022 | /* 203324 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72023 | /* 203328 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72024 | /* 203331 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72025 | /* 203335 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72026 | /* 203339 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72027 | /* 203341 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72028 | /* 203348 */ // (ctlz:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTDZ128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1) |
| 72029 | /* 203348 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZ128rm), |
| 72030 | /* 203351 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72031 | /* 203353 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72032 | /* 203357 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72033 | /* 203362 */ GIR_RootConstrainSelectedInstOperands, |
| 72034 | /* 203363 */ // GIR_Coverage, 13388, |
| 72035 | /* 203363 */ GIR_EraseRootFromParent_Done, |
| 72036 | /* 203364 */ // Label 4661: @203364 |
| 72037 | /* 203364 */ GIM_Try, /*On fail goto*//*Label 4662*/ GIMT_Encode4(203387), // Rule ID 13385 // |
| 72038 | /* 203369 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72039 | /* 203372 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72040 | /* 203376 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72041 | /* 203380 */ // (ctlz:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) => (VPLZCNTDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) |
| 72042 | /* 203380 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZ128rr), |
| 72043 | /* 203385 */ GIR_RootConstrainSelectedInstOperands, |
| 72044 | /* 203386 */ // GIR_Coverage, 13385, |
| 72045 | /* 203386 */ GIR_Done, |
| 72046 | /* 203387 */ // Label 4662: @203387 |
| 72047 | /* 203387 */ GIM_Try, /*On fail goto*//*Label 4663*/ GIMT_Encode4(203494), // Rule ID 21839 // |
| 72048 | /* 203392 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_NoVLX), |
| 72049 | /* 203395 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72050 | /* 203399 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72051 | /* 203403 */ // (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] }) |
| 72052 | /* 203403 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 72053 | /* 203406 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72054 | /* 203410 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72055 | /* 203415 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72056 | /* 203417 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 72057 | /* 203420 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72058 | /* 203424 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72059 | /* 203429 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72060 | /* 203432 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72061 | /* 203436 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 72062 | /* 203439 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72063 | /* 203444 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72064 | /* 203449 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72065 | /* 203454 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72066 | /* 203457 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZrr), |
| 72067 | /* 203461 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72068 | /* 203466 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72069 | /* 203469 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72070 | /* 203471 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72071 | /* 203474 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72072 | /* 203476 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72073 | /* 203483 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72074 | /* 203488 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72075 | /* 203493 */ // GIR_Coverage, 21839, |
| 72076 | /* 203493 */ GIR_EraseRootFromParent_Done, |
| 72077 | /* 203494 */ // Label 4663: @203494 |
| 72078 | /* 203494 */ GIM_Reject, |
| 72079 | /* 203495 */ // Label 4660: @203495 |
| 72080 | /* 203495 */ GIM_Reject, |
| 72081 | /* 203496 */ // Label 4642: @203496 |
| 72082 | /* 203496 */ GIM_Try, /*On fail goto*//*Label 4664*/ GIMT_Encode4(203683), |
| 72083 | /* 203501 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 72084 | /* 203504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72085 | /* 203508 */ GIM_Try, /*On fail goto*//*Label 4665*/ GIMT_Encode4(203560), // Rule ID 13352 // |
| 72086 | /* 203513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72087 | /* 203516 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72088 | /* 203520 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72089 | /* 203524 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72090 | /* 203527 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72091 | /* 203531 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72092 | /* 203535 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72093 | /* 203537 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72094 | /* 203544 */ // (ctlz:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1) |
| 72095 | /* 203544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZ256rm), |
| 72096 | /* 203547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72097 | /* 203549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72098 | /* 203553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72099 | /* 203558 */ GIR_RootConstrainSelectedInstOperands, |
| 72100 | /* 203559 */ // GIR_Coverage, 13352, |
| 72101 | /* 203559 */ GIR_EraseRootFromParent_Done, |
| 72102 | /* 203560 */ // Label 4665: @203560 |
| 72103 | /* 203560 */ GIM_Try, /*On fail goto*//*Label 4666*/ GIMT_Encode4(203579), // Rule ID 13349 // |
| 72104 | /* 203565 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72105 | /* 203568 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72106 | /* 203572 */ // (ctlz:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) => (VPLZCNTQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) |
| 72107 | /* 203572 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZ256rr), |
| 72108 | /* 203577 */ GIR_RootConstrainSelectedInstOperands, |
| 72109 | /* 203578 */ // GIR_Coverage, 13349, |
| 72110 | /* 203578 */ GIR_Done, |
| 72111 | /* 203579 */ // Label 4666: @203579 |
| 72112 | /* 203579 */ GIM_Try, /*On fail goto*//*Label 4667*/ GIMT_Encode4(203682), // Rule ID 21836 // |
| 72113 | /* 203584 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_NoVLX), |
| 72114 | /* 203587 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72115 | /* 203591 */ // (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] }) |
| 72116 | /* 203591 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 72117 | /* 203594 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72118 | /* 203598 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72119 | /* 203603 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72120 | /* 203605 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 72121 | /* 203608 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72122 | /* 203612 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72123 | /* 203617 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72124 | /* 203620 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72125 | /* 203624 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 72126 | /* 203627 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72127 | /* 203632 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72128 | /* 203637 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 72129 | /* 203642 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72130 | /* 203645 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZrr), |
| 72131 | /* 203649 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72132 | /* 203654 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72133 | /* 203657 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72134 | /* 203659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72135 | /* 203662 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72136 | /* 203664 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 72137 | /* 203671 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 72138 | /* 203676 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72139 | /* 203681 */ // GIR_Coverage, 21836, |
| 72140 | /* 203681 */ GIR_EraseRootFromParent_Done, |
| 72141 | /* 203682 */ // Label 4667: @203682 |
| 72142 | /* 203682 */ GIM_Reject, |
| 72143 | /* 203683 */ // Label 4664: @203683 |
| 72144 | /* 203683 */ GIM_Reject, |
| 72145 | /* 203684 */ // Label 4643: @203684 |
| 72146 | /* 203684 */ GIM_Try, /*On fail goto*//*Label 4668*/ GIMT_Encode4(203871), |
| 72147 | /* 203689 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 72148 | /* 203692 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72149 | /* 203696 */ GIM_Try, /*On fail goto*//*Label 4669*/ GIMT_Encode4(203748), // Rule ID 13379 // |
| 72150 | /* 203701 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72151 | /* 203704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72152 | /* 203708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72153 | /* 203712 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72154 | /* 203715 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72155 | /* 203719 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72156 | /* 203723 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72157 | /* 203725 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72158 | /* 203732 */ // (ctlz:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1) |
| 72159 | /* 203732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZ256rm), |
| 72160 | /* 203735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72161 | /* 203737 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72162 | /* 203741 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72163 | /* 203746 */ GIR_RootConstrainSelectedInstOperands, |
| 72164 | /* 203747 */ // GIR_Coverage, 13379, |
| 72165 | /* 203747 */ GIR_EraseRootFromParent_Done, |
| 72166 | /* 203748 */ // Label 4669: @203748 |
| 72167 | /* 203748 */ GIM_Try, /*On fail goto*//*Label 4670*/ GIMT_Encode4(203767), // Rule ID 13376 // |
| 72168 | /* 203753 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_HasVLX), |
| 72169 | /* 203756 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72170 | /* 203760 */ // (ctlz:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) => (VPLZCNTDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) |
| 72171 | /* 203760 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZ256rr), |
| 72172 | /* 203765 */ GIR_RootConstrainSelectedInstOperands, |
| 72173 | /* 203766 */ // GIR_Coverage, 13376, |
| 72174 | /* 203766 */ GIR_Done, |
| 72175 | /* 203767 */ // Label 4670: @203767 |
| 72176 | /* 203767 */ GIM_Try, /*On fail goto*//*Label 4671*/ GIMT_Encode4(203870), // Rule ID 21838 // |
| 72177 | /* 203772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI_NoVLX), |
| 72178 | /* 203775 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72179 | /* 203779 */ // (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] }) |
| 72180 | /* 203779 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 72181 | /* 203782 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72182 | /* 203786 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72183 | /* 203791 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72184 | /* 203793 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 72185 | /* 203796 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72186 | /* 203800 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72187 | /* 203805 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72188 | /* 203808 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72189 | /* 203812 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 72190 | /* 203815 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72191 | /* 203820 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72192 | /* 203825 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 72193 | /* 203830 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72194 | /* 203833 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZrr), |
| 72195 | /* 203837 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72196 | /* 203842 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72197 | /* 203845 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72198 | /* 203847 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72199 | /* 203850 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72200 | /* 203852 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 72201 | /* 203859 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 72202 | /* 203864 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72203 | /* 203869 */ // GIR_Coverage, 21838, |
| 72204 | /* 203869 */ GIR_EraseRootFromParent_Done, |
| 72205 | /* 203870 */ // Label 4671: @203870 |
| 72206 | /* 203870 */ GIM_Reject, |
| 72207 | /* 203871 */ // Label 4668: @203871 |
| 72208 | /* 203871 */ GIM_Reject, |
| 72209 | /* 203872 */ // Label 4644: @203872 |
| 72210 | /* 203872 */ GIM_Try, /*On fail goto*//*Label 4672*/ GIMT_Encode4(203956), |
| 72211 | /* 203877 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 72212 | /* 203880 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72213 | /* 203884 */ GIM_Try, /*On fail goto*//*Label 4673*/ GIMT_Encode4(203936), // Rule ID 13343 // |
| 72214 | /* 203889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI), |
| 72215 | /* 203892 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72216 | /* 203896 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72217 | /* 203900 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72218 | /* 203903 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72219 | /* 203907 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72220 | /* 203911 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72221 | /* 203913 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72222 | /* 203920 */ // (ctlz:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1) |
| 72223 | /* 203920 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZrm), |
| 72224 | /* 203923 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72225 | /* 203925 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72226 | /* 203929 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72227 | /* 203934 */ GIR_RootConstrainSelectedInstOperands, |
| 72228 | /* 203935 */ // GIR_Coverage, 13343, |
| 72229 | /* 203935 */ GIR_EraseRootFromParent_Done, |
| 72230 | /* 203936 */ // Label 4673: @203936 |
| 72231 | /* 203936 */ GIM_Try, /*On fail goto*//*Label 4674*/ GIMT_Encode4(203955), // Rule ID 13340 // |
| 72232 | /* 203941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI), |
| 72233 | /* 203944 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72234 | /* 203948 */ // (ctlz:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) => (VPLZCNTQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) |
| 72235 | /* 203948 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTQZrr), |
| 72236 | /* 203953 */ GIR_RootConstrainSelectedInstOperands, |
| 72237 | /* 203954 */ // GIR_Coverage, 13340, |
| 72238 | /* 203954 */ GIR_Done, |
| 72239 | /* 203955 */ // Label 4674: @203955 |
| 72240 | /* 203955 */ GIM_Reject, |
| 72241 | /* 203956 */ // Label 4672: @203956 |
| 72242 | /* 203956 */ GIM_Reject, |
| 72243 | /* 203957 */ // Label 4645: @203957 |
| 72244 | /* 203957 */ GIM_Try, /*On fail goto*//*Label 4675*/ GIMT_Encode4(204041), |
| 72245 | /* 203962 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 72246 | /* 203965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72247 | /* 203969 */ GIM_Try, /*On fail goto*//*Label 4676*/ GIMT_Encode4(204021), // Rule ID 13370 // |
| 72248 | /* 203974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI), |
| 72249 | /* 203977 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72250 | /* 203981 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72251 | /* 203985 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72252 | /* 203988 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72253 | /* 203992 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72254 | /* 203996 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72255 | /* 203998 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72256 | /* 204005 */ // (ctlz:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPLZCNTDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1) |
| 72257 | /* 204005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZrm), |
| 72258 | /* 204008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72259 | /* 204010 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72260 | /* 204014 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72261 | /* 204019 */ GIR_RootConstrainSelectedInstOperands, |
| 72262 | /* 204020 */ // GIR_Coverage, 13370, |
| 72263 | /* 204020 */ GIR_EraseRootFromParent_Done, |
| 72264 | /* 204021 */ // Label 4676: @204021 |
| 72265 | /* 204021 */ GIM_Try, /*On fail goto*//*Label 4677*/ GIMT_Encode4(204040), // Rule ID 13367 // |
| 72266 | /* 204026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCDI), |
| 72267 | /* 204029 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72268 | /* 204033 */ // (ctlz:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) => (VPLZCNTDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) |
| 72269 | /* 204033 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPLZCNTDZrr), |
| 72270 | /* 204038 */ GIR_RootConstrainSelectedInstOperands, |
| 72271 | /* 204039 */ // GIR_Coverage, 13367, |
| 72272 | /* 204039 */ GIR_Done, |
| 72273 | /* 204040 */ // Label 4677: @204040 |
| 72274 | /* 204040 */ GIM_Reject, |
| 72275 | /* 204041 */ // Label 4675: @204041 |
| 72276 | /* 204041 */ GIM_Reject, |
| 72277 | /* 204042 */ // Label 4646: @204042 |
| 72278 | /* 204042 */ GIM_Reject, |
| 72279 | /* 204043 */ // Label 66: @204043 |
| 72280 | /* 204043 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(25), /*)*//*default:*//*Label 4693*/ GIMT_Encode4(206304), |
| 72281 | /* 204054 */ /*GILLT_s16*//*Label 4678*/ GIMT_Encode4(204146), |
| 72282 | /* 204058 */ /*GILLT_s32*//*Label 4679*/ GIMT_Encode4(204240), |
| 72283 | /* 204062 */ /*GILLT_s64*//*Label 4680*/ GIMT_Encode4(204334), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 72284 | /* 204078 */ /*GILLT_v2s64*//*Label 4681*/ GIMT_Encode4(204428), GIMT_Encode4(0), |
| 72285 | /* 204086 */ /*GILLT_v4s32*//*Label 4682*/ GIMT_Encode4(204624), |
| 72286 | /* 204090 */ /*GILLT_v4s64*//*Label 4683*/ GIMT_Encode4(204820), GIMT_Encode4(0), |
| 72287 | /* 204098 */ /*GILLT_v8s16*//*Label 4684*/ GIMT_Encode4(205008), |
| 72288 | /* 204102 */ /*GILLT_v8s32*//*Label 4685*/ GIMT_Encode4(205204), |
| 72289 | /* 204106 */ /*GILLT_v8s64*//*Label 4686*/ GIMT_Encode4(205392), GIMT_Encode4(0), |
| 72290 | /* 204114 */ /*GILLT_v16s8*//*Label 4687*/ GIMT_Encode4(205477), |
| 72291 | /* 204118 */ /*GILLT_v16s16*//*Label 4688*/ GIMT_Encode4(205673), |
| 72292 | /* 204122 */ /*GILLT_v16s32*//*Label 4689*/ GIMT_Encode4(205861), GIMT_Encode4(0), |
| 72293 | /* 204130 */ /*GILLT_v32s8*//*Label 4690*/ GIMT_Encode4(205946), |
| 72294 | /* 204134 */ /*GILLT_v32s16*//*Label 4691*/ GIMT_Encode4(206134), GIMT_Encode4(0), |
| 72295 | /* 204142 */ /*GILLT_v64s8*//*Label 4692*/ GIMT_Encode4(206219), |
| 72296 | /* 204146 */ // Label 4678: @204146 |
| 72297 | /* 204146 */ GIM_Try, /*On fail goto*//*Label 4694*/ GIMT_Encode4(204239), |
| 72298 | /* 204151 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 72299 | /* 204154 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72300 | /* 204158 */ GIM_Try, /*On fail goto*//*Label 4695*/ GIMT_Encode4(204213), // Rule ID 3176 // |
| 72301 | /* 204163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72302 | /* 204166 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72303 | /* 204170 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72304 | /* 204174 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72305 | /* 204177 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72306 | /* 204181 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 72307 | /* 204185 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72308 | /* 204187 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72309 | /* 204194 */ // (ctpop:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (POPCNT16rm:{ *:[i16] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72310 | /* 204194 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::POPCNT16rm), |
| 72311 | /* 204197 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72312 | /* 204199 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72313 | /* 204203 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72314 | /* 204206 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72315 | /* 204211 */ GIR_RootConstrainSelectedInstOperands, |
| 72316 | /* 204212 */ // GIR_Coverage, 3176, |
| 72317 | /* 204212 */ GIR_EraseRootFromParent_Done, |
| 72318 | /* 204213 */ // Label 4695: @204213 |
| 72319 | /* 204213 */ GIM_Try, /*On fail goto*//*Label 4696*/ GIMT_Encode4(204238), // Rule ID 3175 // |
| 72320 | /* 204218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72321 | /* 204221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 72322 | /* 204225 */ // (ctpop:{ *:[i16] } GR16:{ *:[i16] }:$src1) => (POPCNT16rr:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src1) |
| 72323 | /* 204225 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::POPCNT16rr), |
| 72324 | /* 204230 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 72325 | /* 204236 */ GIR_RootConstrainSelectedInstOperands, |
| 72326 | /* 204237 */ // GIR_Coverage, 3175, |
| 72327 | /* 204237 */ GIR_Done, |
| 72328 | /* 204238 */ // Label 4696: @204238 |
| 72329 | /* 204238 */ GIM_Reject, |
| 72330 | /* 204239 */ // Label 4694: @204239 |
| 72331 | /* 204239 */ GIM_Reject, |
| 72332 | /* 204240 */ // Label 4679: @204240 |
| 72333 | /* 204240 */ GIM_Try, /*On fail goto*//*Label 4697*/ GIMT_Encode4(204333), |
| 72334 | /* 204245 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 72335 | /* 204248 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72336 | /* 204252 */ GIM_Try, /*On fail goto*//*Label 4698*/ GIMT_Encode4(204307), // Rule ID 3178 // |
| 72337 | /* 204257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72338 | /* 204260 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72339 | /* 204264 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72340 | /* 204268 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72341 | /* 204271 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72342 | /* 204275 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 72343 | /* 204279 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72344 | /* 204281 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72345 | /* 204288 */ // (ctpop:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (POPCNT32rm:{ *:[i32] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72346 | /* 204288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::POPCNT32rm), |
| 72347 | /* 204291 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72348 | /* 204293 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72349 | /* 204297 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72350 | /* 204300 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72351 | /* 204305 */ GIR_RootConstrainSelectedInstOperands, |
| 72352 | /* 204306 */ // GIR_Coverage, 3178, |
| 72353 | /* 204306 */ GIR_EraseRootFromParent_Done, |
| 72354 | /* 204307 */ // Label 4698: @204307 |
| 72355 | /* 204307 */ GIM_Try, /*On fail goto*//*Label 4699*/ GIMT_Encode4(204332), // Rule ID 3177 // |
| 72356 | /* 204312 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72357 | /* 204315 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 72358 | /* 204319 */ // (ctpop:{ *:[i32] } GR32:{ *:[i32] }:$src1) => (POPCNT32rr:{ *:[i32] }:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 72359 | /* 204319 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::POPCNT32rr), |
| 72360 | /* 204324 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 72361 | /* 204330 */ GIR_RootConstrainSelectedInstOperands, |
| 72362 | /* 204331 */ // GIR_Coverage, 3177, |
| 72363 | /* 204331 */ GIR_Done, |
| 72364 | /* 204332 */ // Label 4699: @204332 |
| 72365 | /* 204332 */ GIM_Reject, |
| 72366 | /* 204333 */ // Label 4697: @204333 |
| 72367 | /* 204333 */ GIM_Reject, |
| 72368 | /* 204334 */ // Label 4680: @204334 |
| 72369 | /* 204334 */ GIM_Try, /*On fail goto*//*Label 4700*/ GIMT_Encode4(204427), |
| 72370 | /* 204339 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 72371 | /* 204342 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72372 | /* 204346 */ GIM_Try, /*On fail goto*//*Label 4701*/ GIMT_Encode4(204401), // Rule ID 3180 // |
| 72373 | /* 204351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72374 | /* 204354 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72375 | /* 204358 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72376 | /* 204362 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72377 | /* 204365 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72378 | /* 204369 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72379 | /* 204373 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72380 | /* 204375 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72381 | /* 204382 */ // (ctpop:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (POPCNT64rm:{ *:[i64] }:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 72382 | /* 204382 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::POPCNT64rm), |
| 72383 | /* 204385 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72384 | /* 204387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72385 | /* 204391 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 72386 | /* 204394 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72387 | /* 204399 */ GIR_RootConstrainSelectedInstOperands, |
| 72388 | /* 204400 */ // GIR_Coverage, 3180, |
| 72389 | /* 204400 */ GIR_EraseRootFromParent_Done, |
| 72390 | /* 204401 */ // Label 4701: @204401 |
| 72391 | /* 204401 */ GIM_Try, /*On fail goto*//*Label 4702*/ GIMT_Encode4(204426), // Rule ID 3179 // |
| 72392 | /* 204406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasPOPCNT), |
| 72393 | /* 204409 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 72394 | /* 204413 */ // (ctpop:{ *:[i64] } GR64:{ *:[i64] }:$src1) => (POPCNT64rr:{ *:[i64] }:{ *:[i32] } GR64:{ *:[i64] }:$src1) |
| 72395 | /* 204413 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::POPCNT64rr), |
| 72396 | /* 204418 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::EFLAGS), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 72397 | /* 204424 */ GIR_RootConstrainSelectedInstOperands, |
| 72398 | /* 204425 */ // GIR_Coverage, 3179, |
| 72399 | /* 204425 */ GIR_Done, |
| 72400 | /* 204426 */ // Label 4702: @204426 |
| 72401 | /* 204426 */ GIM_Reject, |
| 72402 | /* 204427 */ // Label 4700: @204427 |
| 72403 | /* 204427 */ GIM_Reject, |
| 72404 | /* 204428 */ // Label 4681: @204428 |
| 72405 | /* 204428 */ GIM_Try, /*On fail goto*//*Label 4703*/ GIMT_Encode4(204623), |
| 72406 | /* 204433 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 72407 | /* 204436 */ GIM_Try, /*On fail goto*//*Label 4704*/ GIMT_Encode4(204492), // Rule ID 13469 // |
| 72408 | /* 204441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72409 | /* 204444 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72410 | /* 204448 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72411 | /* 204452 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72412 | /* 204456 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72413 | /* 204459 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72414 | /* 204463 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72415 | /* 204467 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72416 | /* 204469 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72417 | /* 204476 */ // (ctpop:{ *:[v2i64] } (ld:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTQZ128rm:{ *:[v2i64] } addr:{ *:[iPTR] }:$src1) |
| 72418 | /* 204476 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZ128rm), |
| 72419 | /* 204479 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72420 | /* 204481 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72421 | /* 204485 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72422 | /* 204490 */ GIR_RootConstrainSelectedInstOperands, |
| 72423 | /* 204491 */ // GIR_Coverage, 13469, |
| 72424 | /* 204491 */ GIR_EraseRootFromParent_Done, |
| 72425 | /* 204492 */ // Label 4704: @204492 |
| 72426 | /* 204492 */ GIM_Try, /*On fail goto*//*Label 4705*/ GIMT_Encode4(204515), // Rule ID 13466 // |
| 72427 | /* 204497 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72428 | /* 204500 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72429 | /* 204504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72430 | /* 204508 */ // (ctpop:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) => (VPOPCNTQZ128rr:{ *:[v2i64] } VR128X:{ *:[v2i64] }:$src1) |
| 72431 | /* 204508 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZ128rr), |
| 72432 | /* 204513 */ GIR_RootConstrainSelectedInstOperands, |
| 72433 | /* 204514 */ // GIR_Coverage, 13466, |
| 72434 | /* 204514 */ GIR_Done, |
| 72435 | /* 204515 */ // Label 4705: @204515 |
| 72436 | /* 204515 */ GIM_Try, /*On fail goto*//*Label 4706*/ GIMT_Encode4(204622), // Rule ID 21841 // |
| 72437 | /* 204520 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ_NoVLX), |
| 72438 | /* 204523 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72439 | /* 204527 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72440 | /* 204531 */ // (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] }) |
| 72441 | /* 204531 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 72442 | /* 204534 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72443 | /* 204538 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72444 | /* 204543 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72445 | /* 204545 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 72446 | /* 204548 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72447 | /* 204552 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72448 | /* 204557 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72449 | /* 204560 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72450 | /* 204564 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 72451 | /* 204567 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72452 | /* 204572 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72453 | /* 204577 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72454 | /* 204582 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72455 | /* 204585 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZrr), |
| 72456 | /* 204589 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72457 | /* 204594 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72458 | /* 204597 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72459 | /* 204599 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72460 | /* 204602 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72461 | /* 204604 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72462 | /* 204611 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72463 | /* 204616 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72464 | /* 204621 */ // GIR_Coverage, 21841, |
| 72465 | /* 204621 */ GIR_EraseRootFromParent_Done, |
| 72466 | /* 204622 */ // Label 4706: @204622 |
| 72467 | /* 204622 */ GIM_Reject, |
| 72468 | /* 204623 */ // Label 4703: @204623 |
| 72469 | /* 204623 */ GIM_Reject, |
| 72470 | /* 204624 */ // Label 4682: @204624 |
| 72471 | /* 204624 */ GIM_Try, /*On fail goto*//*Label 4707*/ GIMT_Encode4(204819), |
| 72472 | /* 204629 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 72473 | /* 204632 */ GIM_Try, /*On fail goto*//*Label 4708*/ GIMT_Encode4(204688), // Rule ID 13496 // |
| 72474 | /* 204637 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72475 | /* 204640 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72476 | /* 204644 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72477 | /* 204648 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72478 | /* 204652 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72479 | /* 204655 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72480 | /* 204659 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72481 | /* 204663 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72482 | /* 204665 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72483 | /* 204672 */ // (ctpop:{ *:[v4i32] } (ld:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTDZ128rm:{ *:[v4i32] } addr:{ *:[iPTR] }:$src1) |
| 72484 | /* 204672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZ128rm), |
| 72485 | /* 204675 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72486 | /* 204677 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72487 | /* 204681 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72488 | /* 204686 */ GIR_RootConstrainSelectedInstOperands, |
| 72489 | /* 204687 */ // GIR_Coverage, 13496, |
| 72490 | /* 204687 */ GIR_EraseRootFromParent_Done, |
| 72491 | /* 204688 */ // Label 4708: @204688 |
| 72492 | /* 204688 */ GIM_Try, /*On fail goto*//*Label 4709*/ GIMT_Encode4(204711), // Rule ID 13493 // |
| 72493 | /* 204693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72494 | /* 204696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72495 | /* 204700 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72496 | /* 204704 */ // (ctpop:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) => (VPOPCNTDZ128rr:{ *:[v4i32] } VR128X:{ *:[v4i32] }:$src1) |
| 72497 | /* 204704 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZ128rr), |
| 72498 | /* 204709 */ GIR_RootConstrainSelectedInstOperands, |
| 72499 | /* 204710 */ // GIR_Coverage, 13493, |
| 72500 | /* 204710 */ GIR_Done, |
| 72501 | /* 204711 */ // Label 4709: @204711 |
| 72502 | /* 204711 */ GIM_Try, /*On fail goto*//*Label 4710*/ GIMT_Encode4(204818), // Rule ID 21843 // |
| 72503 | /* 204716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ_NoVLX), |
| 72504 | /* 204719 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72505 | /* 204723 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72506 | /* 204727 */ // (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] }) |
| 72507 | /* 204727 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 72508 | /* 204730 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72509 | /* 204734 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72510 | /* 204739 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72511 | /* 204741 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 72512 | /* 204744 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72513 | /* 204748 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72514 | /* 204753 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72515 | /* 204756 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72516 | /* 204760 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 72517 | /* 204763 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72518 | /* 204768 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72519 | /* 204773 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72520 | /* 204778 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72521 | /* 204781 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZrr), |
| 72522 | /* 204785 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72523 | /* 204790 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72524 | /* 204793 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72525 | /* 204795 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72526 | /* 204798 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72527 | /* 204800 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72528 | /* 204807 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72529 | /* 204812 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72530 | /* 204817 */ // GIR_Coverage, 21843, |
| 72531 | /* 204817 */ GIR_EraseRootFromParent_Done, |
| 72532 | /* 204818 */ // Label 4710: @204818 |
| 72533 | /* 204818 */ GIM_Reject, |
| 72534 | /* 204819 */ // Label 4707: @204819 |
| 72535 | /* 204819 */ GIM_Reject, |
| 72536 | /* 204820 */ // Label 4683: @204820 |
| 72537 | /* 204820 */ GIM_Try, /*On fail goto*//*Label 4711*/ GIMT_Encode4(205007), |
| 72538 | /* 204825 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 72539 | /* 204828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72540 | /* 204832 */ GIM_Try, /*On fail goto*//*Label 4712*/ GIMT_Encode4(204884), // Rule ID 13460 // |
| 72541 | /* 204837 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72542 | /* 204840 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72543 | /* 204844 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72544 | /* 204848 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72545 | /* 204851 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72546 | /* 204855 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72547 | /* 204859 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72548 | /* 204861 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72549 | /* 204868 */ // (ctpop:{ *:[v4i64] } (ld:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTQZ256rm:{ *:[v4i64] } addr:{ *:[iPTR] }:$src1) |
| 72550 | /* 204868 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZ256rm), |
| 72551 | /* 204871 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72552 | /* 204873 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72553 | /* 204877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72554 | /* 204882 */ GIR_RootConstrainSelectedInstOperands, |
| 72555 | /* 204883 */ // GIR_Coverage, 13460, |
| 72556 | /* 204883 */ GIR_EraseRootFromParent_Done, |
| 72557 | /* 204884 */ // Label 4712: @204884 |
| 72558 | /* 204884 */ GIM_Try, /*On fail goto*//*Label 4713*/ GIMT_Encode4(204903), // Rule ID 13457 // |
| 72559 | /* 204889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72560 | /* 204892 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72561 | /* 204896 */ // (ctpop:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) => (VPOPCNTQZ256rr:{ *:[v4i64] } VR256X:{ *:[v4i64] }:$src1) |
| 72562 | /* 204896 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZ256rr), |
| 72563 | /* 204901 */ GIR_RootConstrainSelectedInstOperands, |
| 72564 | /* 204902 */ // GIR_Coverage, 13457, |
| 72565 | /* 204902 */ GIR_Done, |
| 72566 | /* 204903 */ // Label 4713: @204903 |
| 72567 | /* 204903 */ GIM_Try, /*On fail goto*//*Label 4714*/ GIMT_Encode4(205006), // Rule ID 21840 // |
| 72568 | /* 204908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ_NoVLX), |
| 72569 | /* 204911 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72570 | /* 204915 */ // (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] }) |
| 72571 | /* 204915 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v8s64, |
| 72572 | /* 204918 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72573 | /* 204922 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72574 | /* 204927 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72575 | /* 204929 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s64, |
| 72576 | /* 204932 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72577 | /* 204936 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72578 | /* 204941 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72579 | /* 204944 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72580 | /* 204948 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 72581 | /* 204951 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72582 | /* 204956 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72583 | /* 204961 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 72584 | /* 204966 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72585 | /* 204969 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZrr), |
| 72586 | /* 204973 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72587 | /* 204978 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72588 | /* 204981 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72589 | /* 204983 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72590 | /* 204986 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72591 | /* 204988 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 72592 | /* 204995 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 72593 | /* 205000 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72594 | /* 205005 */ // GIR_Coverage, 21840, |
| 72595 | /* 205005 */ GIR_EraseRootFromParent_Done, |
| 72596 | /* 205006 */ // Label 4714: @205006 |
| 72597 | /* 205006 */ GIM_Reject, |
| 72598 | /* 205007 */ // Label 4711: @205007 |
| 72599 | /* 205007 */ GIM_Reject, |
| 72600 | /* 205008 */ // Label 4684: @205008 |
| 72601 | /* 205008 */ GIM_Try, /*On fail goto*//*Label 4715*/ GIMT_Encode4(205203), |
| 72602 | /* 205013 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 72603 | /* 205016 */ GIM_Try, /*On fail goto*//*Label 4716*/ GIMT_Encode4(205072), // Rule ID 14523 // |
| 72604 | /* 205021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 72605 | /* 205024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72606 | /* 205028 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72607 | /* 205032 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72608 | /* 205036 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72609 | /* 205039 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72610 | /* 205043 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72611 | /* 205047 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72612 | /* 205049 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72613 | /* 205056 */ // (ctpop:{ *:[v8i16] } (ld:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTWZ128rm:{ *:[v8i16] } addr:{ *:[iPTR] }:$src1) |
| 72614 | /* 205056 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZ128rm), |
| 72615 | /* 205059 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72616 | /* 205061 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72617 | /* 205065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72618 | /* 205070 */ GIR_RootConstrainSelectedInstOperands, |
| 72619 | /* 205071 */ // GIR_Coverage, 14523, |
| 72620 | /* 205071 */ GIR_EraseRootFromParent_Done, |
| 72621 | /* 205072 */ // Label 4716: @205072 |
| 72622 | /* 205072 */ GIM_Try, /*On fail goto*//*Label 4717*/ GIMT_Encode4(205095), // Rule ID 14520 // |
| 72623 | /* 205077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 72624 | /* 205080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72625 | /* 205084 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72626 | /* 205088 */ // (ctpop:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) => (VPOPCNTWZ128rr:{ *:[v8i16] } VR128X:{ *:[v8i16] }:$src1) |
| 72627 | /* 205088 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZ128rr), |
| 72628 | /* 205093 */ GIR_RootConstrainSelectedInstOperands, |
| 72629 | /* 205094 */ // GIR_Coverage, 14520, |
| 72630 | /* 205094 */ GIR_Done, |
| 72631 | /* 205095 */ // Label 4717: @205095 |
| 72632 | /* 205095 */ GIM_Try, /*On fail goto*//*Label 4718*/ GIMT_Encode4(205202), // Rule ID 22200 // |
| 72633 | /* 205100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_NoVLX), |
| 72634 | /* 205103 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72635 | /* 205107 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72636 | /* 205111 */ // (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] }) |
| 72637 | /* 205111 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 72638 | /* 205114 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72639 | /* 205118 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72640 | /* 205123 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72641 | /* 205125 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 72642 | /* 205128 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72643 | /* 205132 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72644 | /* 205137 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72645 | /* 205140 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72646 | /* 205144 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 72647 | /* 205147 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72648 | /* 205152 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72649 | /* 205157 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72650 | /* 205162 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72651 | /* 205165 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZrr), |
| 72652 | /* 205169 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72653 | /* 205174 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72654 | /* 205177 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72655 | /* 205179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72656 | /* 205182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72657 | /* 205184 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72658 | /* 205191 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72659 | /* 205196 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72660 | /* 205201 */ // GIR_Coverage, 22200, |
| 72661 | /* 205201 */ GIR_EraseRootFromParent_Done, |
| 72662 | /* 205202 */ // Label 4718: @205202 |
| 72663 | /* 205202 */ GIM_Reject, |
| 72664 | /* 205203 */ // Label 4715: @205203 |
| 72665 | /* 205203 */ GIM_Reject, |
| 72666 | /* 205204 */ // Label 4685: @205204 |
| 72667 | /* 205204 */ GIM_Try, /*On fail goto*//*Label 4719*/ GIMT_Encode4(205391), |
| 72668 | /* 205209 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 72669 | /* 205212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72670 | /* 205216 */ GIM_Try, /*On fail goto*//*Label 4720*/ GIMT_Encode4(205268), // Rule ID 13487 // |
| 72671 | /* 205221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72672 | /* 205224 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72673 | /* 205228 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72674 | /* 205232 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72675 | /* 205235 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72676 | /* 205239 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72677 | /* 205243 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72678 | /* 205245 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72679 | /* 205252 */ // (ctpop:{ *:[v8i32] } (ld:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTDZ256rm:{ *:[v8i32] } addr:{ *:[iPTR] }:$src1) |
| 72680 | /* 205252 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZ256rm), |
| 72681 | /* 205255 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72682 | /* 205257 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72683 | /* 205261 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72684 | /* 205266 */ GIR_RootConstrainSelectedInstOperands, |
| 72685 | /* 205267 */ // GIR_Coverage, 13487, |
| 72686 | /* 205267 */ GIR_EraseRootFromParent_Done, |
| 72687 | /* 205268 */ // Label 4720: @205268 |
| 72688 | /* 205268 */ GIM_Try, /*On fail goto*//*Label 4721*/ GIMT_Encode4(205287), // Rule ID 13484 // |
| 72689 | /* 205273 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX_HasVPOPCNTDQ), |
| 72690 | /* 205276 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72691 | /* 205280 */ // (ctpop:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) => (VPOPCNTDZ256rr:{ *:[v8i32] } VR256X:{ *:[v8i32] }:$src1) |
| 72692 | /* 205280 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZ256rr), |
| 72693 | /* 205285 */ GIR_RootConstrainSelectedInstOperands, |
| 72694 | /* 205286 */ // GIR_Coverage, 13484, |
| 72695 | /* 205286 */ GIR_Done, |
| 72696 | /* 205287 */ // Label 4721: @205287 |
| 72697 | /* 205287 */ GIM_Try, /*On fail goto*//*Label 4722*/ GIMT_Encode4(205390), // Rule ID 21842 // |
| 72698 | /* 205292 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ_NoVLX), |
| 72699 | /* 205295 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72700 | /* 205299 */ // (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] }) |
| 72701 | /* 205299 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s32, |
| 72702 | /* 205302 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72703 | /* 205306 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72704 | /* 205311 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72705 | /* 205313 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s32, |
| 72706 | /* 205316 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72707 | /* 205320 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72708 | /* 205325 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72709 | /* 205328 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72710 | /* 205332 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 72711 | /* 205335 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72712 | /* 205340 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72713 | /* 205345 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 72714 | /* 205350 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72715 | /* 205353 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZrr), |
| 72716 | /* 205357 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72717 | /* 205362 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72718 | /* 205365 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72719 | /* 205367 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72720 | /* 205370 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72721 | /* 205372 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 72722 | /* 205379 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 72723 | /* 205384 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72724 | /* 205389 */ // GIR_Coverage, 21842, |
| 72725 | /* 205389 */ GIR_EraseRootFromParent_Done, |
| 72726 | /* 205390 */ // Label 4722: @205390 |
| 72727 | /* 205390 */ GIM_Reject, |
| 72728 | /* 205391 */ // Label 4719: @205391 |
| 72729 | /* 205391 */ GIM_Reject, |
| 72730 | /* 205392 */ // Label 4686: @205392 |
| 72731 | /* 205392 */ GIM_Try, /*On fail goto*//*Label 4723*/ GIMT_Encode4(205476), |
| 72732 | /* 205397 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 72733 | /* 205400 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72734 | /* 205404 */ GIM_Try, /*On fail goto*//*Label 4724*/ GIMT_Encode4(205456), // Rule ID 13451 // |
| 72735 | /* 205409 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ), |
| 72736 | /* 205412 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72737 | /* 205416 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72738 | /* 205420 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72739 | /* 205423 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72740 | /* 205427 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72741 | /* 205431 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72742 | /* 205433 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72743 | /* 205440 */ // (ctpop:{ *:[v8i64] } (ld:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTQZrm:{ *:[v8i64] } addr:{ *:[iPTR] }:$src1) |
| 72744 | /* 205440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZrm), |
| 72745 | /* 205443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72746 | /* 205445 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72747 | /* 205449 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72748 | /* 205454 */ GIR_RootConstrainSelectedInstOperands, |
| 72749 | /* 205455 */ // GIR_Coverage, 13451, |
| 72750 | /* 205455 */ GIR_EraseRootFromParent_Done, |
| 72751 | /* 205456 */ // Label 4724: @205456 |
| 72752 | /* 205456 */ GIM_Try, /*On fail goto*//*Label 4725*/ GIMT_Encode4(205475), // Rule ID 13448 // |
| 72753 | /* 205461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ), |
| 72754 | /* 205464 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72755 | /* 205468 */ // (ctpop:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) => (VPOPCNTQZrr:{ *:[v8i64] } VR512:{ *:[v8i64] }:$src1) |
| 72756 | /* 205468 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTQZrr), |
| 72757 | /* 205473 */ GIR_RootConstrainSelectedInstOperands, |
| 72758 | /* 205474 */ // GIR_Coverage, 13448, |
| 72759 | /* 205474 */ GIR_Done, |
| 72760 | /* 205475 */ // Label 4725: @205475 |
| 72761 | /* 205475 */ GIM_Reject, |
| 72762 | /* 205476 */ // Label 4723: @205476 |
| 72763 | /* 205476 */ GIM_Reject, |
| 72764 | /* 205477 */ // Label 4687: @205477 |
| 72765 | /* 205477 */ GIM_Try, /*On fail goto*//*Label 4726*/ GIMT_Encode4(205672), |
| 72766 | /* 205482 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 72767 | /* 205485 */ GIM_Try, /*On fail goto*//*Label 4727*/ GIMT_Encode4(205541), // Rule ID 14505 // |
| 72768 | /* 205490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 72769 | /* 205493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72770 | /* 205497 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72771 | /* 205501 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72772 | /* 205505 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72773 | /* 205508 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72774 | /* 205512 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72775 | /* 205516 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72776 | /* 205518 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72777 | /* 205525 */ // (ctpop:{ *:[v16i8] } (ld:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTBZ128rm:{ *:[v16i8] } addr:{ *:[iPTR] }:$src1) |
| 72778 | /* 205525 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZ128rm), |
| 72779 | /* 205528 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72780 | /* 205530 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72781 | /* 205534 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72782 | /* 205539 */ GIR_RootConstrainSelectedInstOperands, |
| 72783 | /* 205540 */ // GIR_Coverage, 14505, |
| 72784 | /* 205540 */ GIR_EraseRootFromParent_Done, |
| 72785 | /* 205541 */ // Label 4727: @205541 |
| 72786 | /* 205541 */ GIM_Try, /*On fail goto*//*Label 4728*/ GIMT_Encode4(205564), // Rule ID 14502 // |
| 72787 | /* 205546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 72788 | /* 205549 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72789 | /* 205553 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72790 | /* 205557 */ // (ctpop:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) => (VPOPCNTBZ128rr:{ *:[v16i8] } VR128X:{ *:[v16i8] }:$src1) |
| 72791 | /* 205557 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZ128rr), |
| 72792 | /* 205562 */ GIR_RootConstrainSelectedInstOperands, |
| 72793 | /* 205563 */ // GIR_Coverage, 14502, |
| 72794 | /* 205563 */ GIR_Done, |
| 72795 | /* 205564 */ // Label 4728: @205564 |
| 72796 | /* 205564 */ GIM_Try, /*On fail goto*//*Label 4729*/ GIMT_Encode4(205671), // Rule ID 22198 // |
| 72797 | /* 205569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_NoVLX), |
| 72798 | /* 205572 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 72799 | /* 205576 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 72800 | /* 205580 */ // (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] }) |
| 72801 | /* 205580 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 72802 | /* 205583 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72803 | /* 205587 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72804 | /* 205592 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72805 | /* 205594 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 72806 | /* 205597 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72807 | /* 205601 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72808 | /* 205606 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72809 | /* 205609 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72810 | /* 205613 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/9, |
| 72811 | /* 205616 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72812 | /* 205621 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72813 | /* 205626 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR128XRegClassID), |
| 72814 | /* 205631 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72815 | /* 205634 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZrr), |
| 72816 | /* 205638 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72817 | /* 205643 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72818 | /* 205646 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72819 | /* 205648 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72820 | /* 205651 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72821 | /* 205653 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_xmm), |
| 72822 | /* 205660 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::FR16XRegClassID), |
| 72823 | /* 205665 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72824 | /* 205670 */ // GIR_Coverage, 22198, |
| 72825 | /* 205670 */ GIR_EraseRootFromParent_Done, |
| 72826 | /* 205671 */ // Label 4729: @205671 |
| 72827 | /* 205671 */ GIM_Reject, |
| 72828 | /* 205672 */ // Label 4726: @205672 |
| 72829 | /* 205672 */ GIM_Reject, |
| 72830 | /* 205673 */ // Label 4688: @205673 |
| 72831 | /* 205673 */ GIM_Try, /*On fail goto*//*Label 4730*/ GIMT_Encode4(205860), |
| 72832 | /* 205678 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 72833 | /* 205681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72834 | /* 205685 */ GIM_Try, /*On fail goto*//*Label 4731*/ GIMT_Encode4(205737), // Rule ID 14517 // |
| 72835 | /* 205690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 72836 | /* 205693 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72837 | /* 205697 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72838 | /* 205701 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72839 | /* 205704 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72840 | /* 205708 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72841 | /* 205712 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72842 | /* 205714 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72843 | /* 205721 */ // (ctpop:{ *:[v16i16] } (ld:{ *:[v16i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTWZ256rm:{ *:[v16i16] } addr:{ *:[iPTR] }:$src1) |
| 72844 | /* 205721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZ256rm), |
| 72845 | /* 205724 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72846 | /* 205726 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72847 | /* 205730 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72848 | /* 205735 */ GIR_RootConstrainSelectedInstOperands, |
| 72849 | /* 205736 */ // GIR_Coverage, 14517, |
| 72850 | /* 205736 */ GIR_EraseRootFromParent_Done, |
| 72851 | /* 205737 */ // Label 4731: @205737 |
| 72852 | /* 205737 */ GIM_Try, /*On fail goto*//*Label 4732*/ GIMT_Encode4(205756), // Rule ID 14514 // |
| 72853 | /* 205742 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 72854 | /* 205745 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72855 | /* 205749 */ // (ctpop:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) => (VPOPCNTWZ256rr:{ *:[v16i16] } VR256X:{ *:[v16i16] }:$src1) |
| 72856 | /* 205749 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZ256rr), |
| 72857 | /* 205754 */ GIR_RootConstrainSelectedInstOperands, |
| 72858 | /* 205755 */ // GIR_Coverage, 14514, |
| 72859 | /* 205755 */ GIR_Done, |
| 72860 | /* 205756 */ // Label 4732: @205756 |
| 72861 | /* 205756 */ GIM_Try, /*On fail goto*//*Label 4733*/ GIMT_Encode4(205859), // Rule ID 22199 // |
| 72862 | /* 205761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_NoVLX), |
| 72863 | /* 205764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72864 | /* 205768 */ // (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] }) |
| 72865 | /* 205768 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v32s16, |
| 72866 | /* 205771 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72867 | /* 205775 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72868 | /* 205780 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72869 | /* 205782 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v32s16, |
| 72870 | /* 205785 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72871 | /* 205789 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72872 | /* 205794 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72873 | /* 205797 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72874 | /* 205801 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 72875 | /* 205804 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72876 | /* 205809 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72877 | /* 205814 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 72878 | /* 205819 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72879 | /* 205822 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZrr), |
| 72880 | /* 205826 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72881 | /* 205831 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72882 | /* 205834 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72883 | /* 205836 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72884 | /* 205839 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72885 | /* 205841 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 72886 | /* 205848 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 72887 | /* 205853 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72888 | /* 205858 */ // GIR_Coverage, 22199, |
| 72889 | /* 205858 */ GIR_EraseRootFromParent_Done, |
| 72890 | /* 205859 */ // Label 4733: @205859 |
| 72891 | /* 205859 */ GIM_Reject, |
| 72892 | /* 205860 */ // Label 4730: @205860 |
| 72893 | /* 205860 */ GIM_Reject, |
| 72894 | /* 205861 */ // Label 4689: @205861 |
| 72895 | /* 205861 */ GIM_Try, /*On fail goto*//*Label 4734*/ GIMT_Encode4(205945), |
| 72896 | /* 205866 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 72897 | /* 205869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72898 | /* 205873 */ GIM_Try, /*On fail goto*//*Label 4735*/ GIMT_Encode4(205925), // Rule ID 13478 // |
| 72899 | /* 205878 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ), |
| 72900 | /* 205881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72901 | /* 205885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72902 | /* 205889 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72903 | /* 205892 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72904 | /* 205896 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72905 | /* 205900 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72906 | /* 205902 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72907 | /* 205909 */ // (ctpop:{ *:[v16i32] } (ld:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTDZrm:{ *:[v16i32] } addr:{ *:[iPTR] }:$src1) |
| 72908 | /* 205909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZrm), |
| 72909 | /* 205912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72910 | /* 205914 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72911 | /* 205918 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72912 | /* 205923 */ GIR_RootConstrainSelectedInstOperands, |
| 72913 | /* 205924 */ // GIR_Coverage, 13478, |
| 72914 | /* 205924 */ GIR_EraseRootFromParent_Done, |
| 72915 | /* 205925 */ // Label 4735: @205925 |
| 72916 | /* 205925 */ GIM_Try, /*On fail goto*//*Label 4736*/ GIMT_Encode4(205944), // Rule ID 13475 // |
| 72917 | /* 205930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVPOPCNTDQ), |
| 72918 | /* 205933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72919 | /* 205937 */ // (ctpop:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) => (VPOPCNTDZrr:{ *:[v16i32] } VR512:{ *:[v16i32] }:$src1) |
| 72920 | /* 205937 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTDZrr), |
| 72921 | /* 205942 */ GIR_RootConstrainSelectedInstOperands, |
| 72922 | /* 205943 */ // GIR_Coverage, 13475, |
| 72923 | /* 205943 */ GIR_Done, |
| 72924 | /* 205944 */ // Label 4736: @205944 |
| 72925 | /* 205944 */ GIM_Reject, |
| 72926 | /* 205945 */ // Label 4734: @205945 |
| 72927 | /* 205945 */ GIM_Reject, |
| 72928 | /* 205946 */ // Label 4690: @205946 |
| 72929 | /* 205946 */ GIM_Try, /*On fail goto*//*Label 4737*/ GIMT_Encode4(206133), |
| 72930 | /* 205951 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s8, |
| 72931 | /* 205954 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72932 | /* 205958 */ GIM_Try, /*On fail goto*//*Label 4738*/ GIMT_Encode4(206010), // Rule ID 14499 // |
| 72933 | /* 205963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 72934 | /* 205966 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72935 | /* 205970 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 72936 | /* 205974 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 72937 | /* 205977 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 72938 | /* 205981 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 72939 | /* 205985 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 72940 | /* 205987 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 72941 | /* 205994 */ // (ctpop:{ *:[v32i8] } (ld:{ *:[v32i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTBZ256rm:{ *:[v32i8] } addr:{ *:[iPTR] }:$src1) |
| 72942 | /* 205994 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZ256rm), |
| 72943 | /* 205997 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72944 | /* 205999 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 72945 | /* 206003 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 72946 | /* 206008 */ GIR_RootConstrainSelectedInstOperands, |
| 72947 | /* 206009 */ // GIR_Coverage, 14499, |
| 72948 | /* 206009 */ GIR_EraseRootFromParent_Done, |
| 72949 | /* 206010 */ // Label 4738: @206010 |
| 72950 | /* 206010 */ GIM_Try, /*On fail goto*//*Label 4739*/ GIMT_Encode4(206029), // Rule ID 14496 // |
| 72951 | /* 206015 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_HasVLX), |
| 72952 | /* 206018 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72953 | /* 206022 */ // (ctpop:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) => (VPOPCNTBZ256rr:{ *:[v32i8] } VR256X:{ *:[v32i8] }:$src1) |
| 72954 | /* 206022 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZ256rr), |
| 72955 | /* 206027 */ GIR_RootConstrainSelectedInstOperands, |
| 72956 | /* 206028 */ // GIR_Coverage, 14496, |
| 72957 | /* 206028 */ GIR_Done, |
| 72958 | /* 206029 */ // Label 4739: @206029 |
| 72959 | /* 206029 */ GIM_Try, /*On fail goto*//*Label 4740*/ GIMT_Encode4(206132), // Rule ID 22197 // |
| 72960 | /* 206034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG_NoVLX), |
| 72961 | /* 206037 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 72962 | /* 206041 */ // (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] }) |
| 72963 | /* 206041 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v64s8, |
| 72964 | /* 206044 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 72965 | /* 206048 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72966 | /* 206053 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 72967 | /* 206055 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v64s8, |
| 72968 | /* 206058 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 72969 | /* 206062 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72970 | /* 206067 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 72971 | /* 206070 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src1 |
| 72972 | /* 206074 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/10, |
| 72973 | /* 206077 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(X86::VR512RegClassID), |
| 72974 | /* 206082 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72975 | /* 206087 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/2, GIMT_Encode2(X86::VR256XRegClassID), |
| 72976 | /* 206092 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v64s8, |
| 72977 | /* 206095 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZrr), |
| 72978 | /* 206099 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 72979 | /* 206104 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 72980 | /* 206107 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 72981 | /* 206109 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 72982 | /* 206112 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 72983 | /* 206114 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(X86::sub_ymm), |
| 72984 | /* 206121 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(X86::VR256XRegClassID), |
| 72985 | /* 206126 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(X86::VR512RegClassID), |
| 72986 | /* 206131 */ // GIR_Coverage, 22197, |
| 72987 | /* 206131 */ GIR_EraseRootFromParent_Done, |
| 72988 | /* 206132 */ // Label 4740: @206132 |
| 72989 | /* 206132 */ GIM_Reject, |
| 72990 | /* 206133 */ // Label 4737: @206133 |
| 72991 | /* 206133 */ GIM_Reject, |
| 72992 | /* 206134 */ // Label 4691: @206134 |
| 72993 | /* 206134 */ GIM_Try, /*On fail goto*//*Label 4741*/ GIMT_Encode4(206218), |
| 72994 | /* 206139 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 72995 | /* 206142 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 72996 | /* 206146 */ GIM_Try, /*On fail goto*//*Label 4742*/ GIMT_Encode4(206198), // Rule ID 14511 // |
| 72997 | /* 206151 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG), |
| 72998 | /* 206154 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 72999 | /* 206158 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73000 | /* 206162 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73001 | /* 206165 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73002 | /* 206169 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73003 | /* 206173 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73004 | /* 206175 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73005 | /* 206182 */ // (ctpop:{ *:[v32i16] } (ld:{ *:[v32i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTWZrm:{ *:[v32i16] } addr:{ *:[iPTR] }:$src1) |
| 73006 | /* 206182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZrm), |
| 73007 | /* 206185 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73008 | /* 206187 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73009 | /* 206191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73010 | /* 206196 */ GIR_RootConstrainSelectedInstOperands, |
| 73011 | /* 206197 */ // GIR_Coverage, 14511, |
| 73012 | /* 206197 */ GIR_EraseRootFromParent_Done, |
| 73013 | /* 206198 */ // Label 4742: @206198 |
| 73014 | /* 206198 */ GIM_Try, /*On fail goto*//*Label 4743*/ GIMT_Encode4(206217), // Rule ID 14508 // |
| 73015 | /* 206203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG), |
| 73016 | /* 206206 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73017 | /* 206210 */ // (ctpop:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1) => (VPOPCNTWZrr:{ *:[v32i16] } VR512:{ *:[v32i16] }:$src1) |
| 73018 | /* 206210 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTWZrr), |
| 73019 | /* 206215 */ GIR_RootConstrainSelectedInstOperands, |
| 73020 | /* 206216 */ // GIR_Coverage, 14508, |
| 73021 | /* 206216 */ GIR_Done, |
| 73022 | /* 206217 */ // Label 4743: @206217 |
| 73023 | /* 206217 */ GIM_Reject, |
| 73024 | /* 206218 */ // Label 4741: @206218 |
| 73025 | /* 206218 */ GIM_Reject, |
| 73026 | /* 206219 */ // Label 4692: @206219 |
| 73027 | /* 206219 */ GIM_Try, /*On fail goto*//*Label 4744*/ GIMT_Encode4(206303), |
| 73028 | /* 206224 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v64s8, |
| 73029 | /* 206227 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73030 | /* 206231 */ GIM_Try, /*On fail goto*//*Label 4745*/ GIMT_Encode4(206283), // Rule ID 14493 // |
| 73031 | /* 206236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG), |
| 73032 | /* 206239 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73033 | /* 206243 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73034 | /* 206247 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73035 | /* 206250 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73036 | /* 206254 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73037 | /* 206258 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73038 | /* 206260 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73039 | /* 206267 */ // (ctpop:{ *:[v64i8] } (ld:{ *:[v64i8] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VPOPCNTBZrm:{ *:[v64i8] } addr:{ *:[iPTR] }:$src1) |
| 73040 | /* 206267 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZrm), |
| 73041 | /* 206270 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73042 | /* 206272 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73043 | /* 206276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73044 | /* 206281 */ GIR_RootConstrainSelectedInstOperands, |
| 73045 | /* 206282 */ // GIR_Coverage, 14493, |
| 73046 | /* 206282 */ GIR_EraseRootFromParent_Done, |
| 73047 | /* 206283 */ // Label 4745: @206283 |
| 73048 | /* 206283 */ GIM_Try, /*On fail goto*//*Label 4746*/ GIMT_Encode4(206302), // Rule ID 14490 // |
| 73049 | /* 206288 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasBITALG), |
| 73050 | /* 206291 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73051 | /* 206295 */ // (ctpop:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1) => (VPOPCNTBZrr:{ *:[v64i8] } VR512:{ *:[v64i8] }:$src1) |
| 73052 | /* 206295 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VPOPCNTBZrr), |
| 73053 | /* 206300 */ GIR_RootConstrainSelectedInstOperands, |
| 73054 | /* 206301 */ // GIR_Coverage, 14490, |
| 73055 | /* 206301 */ GIR_Done, |
| 73056 | /* 206302 */ // Label 4746: @206302 |
| 73057 | /* 206302 */ GIM_Reject, |
| 73058 | /* 206303 */ // Label 4744: @206303 |
| 73059 | /* 206303 */ GIM_Reject, |
| 73060 | /* 206304 */ // Label 4693: @206304 |
| 73061 | /* 206304 */ GIM_Reject, |
| 73062 | /* 206305 */ // Label 67: @206305 |
| 73063 | /* 206305 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(5), /*)*//*default:*//*Label 4750*/ GIMT_Encode4(206804), |
| 73064 | /* 206316 */ /*GILLT_s16*//*Label 4747*/ GIMT_Encode4(206328), |
| 73065 | /* 206320 */ /*GILLT_s32*//*Label 4748*/ GIMT_Encode4(206492), |
| 73066 | /* 206324 */ /*GILLT_s64*//*Label 4749*/ GIMT_Encode4(206648), |
| 73067 | /* 206328 */ // Label 4747: @206328 |
| 73068 | /* 206328 */ GIM_Try, /*On fail goto*//*Label 4751*/ GIMT_Encode4(206491), |
| 73069 | /* 206333 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 73070 | /* 206336 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 73071 | /* 206340 */ GIM_Try, /*On fail goto*//*Label 4752*/ GIMT_Encode4(206392), // Rule ID 49 // |
| 73072 | /* 206345 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 73073 | /* 206348 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73074 | /* 206352 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73075 | /* 206356 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73076 | /* 206359 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73077 | /* 206363 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 73078 | /* 206367 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73079 | /* 206369 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73080 | /* 206376 */ // (bswap:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (MOVBE16rm:{ *:[i16] } addr:{ *:[iPTR] }:$src1) |
| 73081 | /* 206376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE16rm), |
| 73082 | /* 206379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73083 | /* 206381 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73084 | /* 206385 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73085 | /* 206390 */ GIR_RootConstrainSelectedInstOperands, |
| 73086 | /* 206391 */ // GIR_Coverage, 49, |
| 73087 | /* 206391 */ GIR_EraseRootFromParent_Done, |
| 73088 | /* 206392 */ // Label 4752: @206392 |
| 73089 | /* 206392 */ GIM_Try, /*On fail goto*//*Label 4753*/ GIMT_Encode4(206444), // Rule ID 55 // |
| 73090 | /* 206397 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 73091 | /* 206400 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73092 | /* 206404 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73093 | /* 206408 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73094 | /* 206411 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73095 | /* 206415 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi16), |
| 73096 | /* 206419 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73097 | /* 206421 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73098 | /* 206428 */ // (bswap:{ *:[i16] } (ld:{ *:[i16] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi16>>) => (MOVBE16rm_EVEX:{ *:[i16] } addr:{ *:[iPTR] }:$src1) |
| 73099 | /* 206428 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE16rm_EVEX), |
| 73100 | /* 206431 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73101 | /* 206433 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73102 | /* 206437 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73103 | /* 206442 */ GIR_RootConstrainSelectedInstOperands, |
| 73104 | /* 206443 */ // GIR_Coverage, 55, |
| 73105 | /* 206443 */ GIR_EraseRootFromParent_Done, |
| 73106 | /* 206444 */ // Label 4753: @206444 |
| 73107 | /* 206444 */ GIM_Try, /*On fail goto*//*Label 4754*/ GIMT_Encode4(206463), // Rule ID 61 // |
| 73108 | /* 206449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_HasNDD_In64BitMode), |
| 73109 | /* 206452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 73110 | /* 206456 */ // (bswap:{ *:[i16] } GR16:{ *:[i16] }:$src1) => (MOVBE16rr:{ *:[i16] } GR16:{ *:[i16] }:$src1) |
| 73111 | /* 206456 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVBE16rr), |
| 73112 | /* 206461 */ GIR_RootConstrainSelectedInstOperands, |
| 73113 | /* 206462 */ // GIR_Coverage, 61, |
| 73114 | /* 206462 */ GIR_Done, |
| 73115 | /* 206463 */ // Label 4754: @206463 |
| 73116 | /* 206463 */ GIM_Try, /*On fail goto*//*Label 4755*/ GIMT_Encode4(206490), // Rule ID 23070 // |
| 73117 | /* 206468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE), |
| 73118 | /* 206471 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR16RegClassID), |
| 73119 | /* 206475 */ // (bswap:{ *:[i16] } GR16:{ *:[i16] }:$src) => (ROL16ri:{ *:[i16] }:{ *:[i32] } GR16:{ *:[i16] }:$src, 8:{ *:[i8] }) |
| 73120 | /* 206475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ROL16ri), |
| 73121 | /* 206478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73122 | /* 206480 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73123 | /* 206482 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/8, |
| 73124 | /* 206485 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 73125 | /* 206488 */ GIR_RootConstrainSelectedInstOperands, |
| 73126 | /* 206489 */ // GIR_Coverage, 23070, |
| 73127 | /* 206489 */ GIR_EraseRootFromParent_Done, |
| 73128 | /* 206490 */ // Label 4755: @206490 |
| 73129 | /* 206490 */ GIM_Reject, |
| 73130 | /* 206491 */ // Label 4751: @206491 |
| 73131 | /* 206491 */ GIM_Reject, |
| 73132 | /* 206492 */ // Label 4748: @206492 |
| 73133 | /* 206492 */ GIM_Try, /*On fail goto*//*Label 4756*/ GIMT_Encode4(206647), |
| 73134 | /* 206497 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 73135 | /* 206500 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 73136 | /* 206504 */ GIM_Try, /*On fail goto*//*Label 4757*/ GIMT_Encode4(206556), // Rule ID 51 // |
| 73137 | /* 206509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 73138 | /* 206512 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73139 | /* 206516 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73140 | /* 206520 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73141 | /* 206523 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73142 | /* 206527 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 73143 | /* 206531 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73144 | /* 206533 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73145 | /* 206540 */ // (bswap:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (MOVBE32rm:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 73146 | /* 206540 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE32rm), |
| 73147 | /* 206543 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73148 | /* 206545 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73149 | /* 206549 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73150 | /* 206554 */ GIR_RootConstrainSelectedInstOperands, |
| 73151 | /* 206555 */ // GIR_Coverage, 51, |
| 73152 | /* 206555 */ GIR_EraseRootFromParent_Done, |
| 73153 | /* 206556 */ // Label 4757: @206556 |
| 73154 | /* 206556 */ GIM_Try, /*On fail goto*//*Label 4758*/ GIMT_Encode4(206608), // Rule ID 57 // |
| 73155 | /* 206561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 73156 | /* 206564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73157 | /* 206568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73158 | /* 206572 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73159 | /* 206575 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73160 | /* 206579 */ GIM_CheckCxxInsnPredicate, /*MI*/1, /*FnId*/GIMT_Encode2(GICXXPred_MI_Predicate_loadi32), |
| 73161 | /* 206583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73162 | /* 206585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73163 | /* 206592 */ // (bswap:{ *:[i32] } (ld:{ *:[i32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_loadi32>>) => (MOVBE32rm_EVEX:{ *:[i32] } addr:{ *:[iPTR] }:$src1) |
| 73164 | /* 206592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE32rm_EVEX), |
| 73165 | /* 206595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73166 | /* 206597 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73167 | /* 206601 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73168 | /* 206606 */ GIR_RootConstrainSelectedInstOperands, |
| 73169 | /* 206607 */ // GIR_Coverage, 57, |
| 73170 | /* 206607 */ GIR_EraseRootFromParent_Done, |
| 73171 | /* 206608 */ // Label 4758: @206608 |
| 73172 | /* 206608 */ GIM_Try, /*On fail goto*//*Label 4759*/ GIMT_Encode4(206627), // Rule ID 5 // |
| 73173 | /* 206613 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_Or_NoMOVBE), |
| 73174 | /* 206616 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 73175 | /* 206620 */ // (bswap:{ *:[i32] } GR32:{ *:[i32] }:$src) => (BSWAP32r:{ *:[i32] } GR32:{ *:[i32] }:$src) |
| 73176 | /* 206620 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::BSWAP32r), |
| 73177 | /* 206625 */ GIR_RootConstrainSelectedInstOperands, |
| 73178 | /* 206626 */ // GIR_Coverage, 5, |
| 73179 | /* 206626 */ GIR_Done, |
| 73180 | /* 206627 */ // Label 4759: @206627 |
| 73181 | /* 206627 */ GIM_Try, /*On fail goto*//*Label 4760*/ GIMT_Encode4(206646), // Rule ID 62 // |
| 73182 | /* 206632 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_HasNDD_In64BitMode), |
| 73183 | /* 206635 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR32RegClassID), |
| 73184 | /* 206639 */ // (bswap:{ *:[i32] } GR32:{ *:[i32] }:$src1) => (MOVBE32rr:{ *:[i32] } GR32:{ *:[i32] }:$src1) |
| 73185 | /* 206639 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVBE32rr), |
| 73186 | /* 206644 */ GIR_RootConstrainSelectedInstOperands, |
| 73187 | /* 206645 */ // GIR_Coverage, 62, |
| 73188 | /* 206645 */ GIR_Done, |
| 73189 | /* 206646 */ // Label 4760: @206646 |
| 73190 | /* 206646 */ GIM_Reject, |
| 73191 | /* 206647 */ // Label 4756: @206647 |
| 73192 | /* 206647 */ GIM_Reject, |
| 73193 | /* 206648 */ // Label 4749: @206648 |
| 73194 | /* 206648 */ GIM_Try, /*On fail goto*//*Label 4761*/ GIMT_Encode4(206803), |
| 73195 | /* 206653 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 73196 | /* 206656 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 73197 | /* 206660 */ GIM_Try, /*On fail goto*//*Label 4762*/ GIMT_Encode4(206712), // Rule ID 53 // |
| 73198 | /* 206665 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_NoEGPR), |
| 73199 | /* 206668 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73200 | /* 206672 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73201 | /* 206676 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73202 | /* 206679 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73203 | /* 206683 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73204 | /* 206687 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73205 | /* 206689 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73206 | /* 206696 */ // (bswap:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MOVBE64rm:{ *:[i64] } addr:{ *:[iPTR] }:$src1) |
| 73207 | /* 206696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE64rm), |
| 73208 | /* 206699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73209 | /* 206701 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73210 | /* 206705 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73211 | /* 206710 */ GIR_RootConstrainSelectedInstOperands, |
| 73212 | /* 206711 */ // GIR_Coverage, 53, |
| 73213 | /* 206711 */ GIR_EraseRootFromParent_Done, |
| 73214 | /* 206712 */ // Label 4762: @206712 |
| 73215 | /* 206712 */ GIM_Try, /*On fail goto*//*Label 4763*/ GIMT_Encode4(206764), // Rule ID 59 // |
| 73216 | /* 206717 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasEGPR_HasMOVBE_In64BitMode), |
| 73217 | /* 206720 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73218 | /* 206724 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73219 | /* 206728 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73220 | /* 206731 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73221 | /* 206735 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73222 | /* 206739 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73223 | /* 206741 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73224 | /* 206748 */ // (bswap:{ *:[i64] } (ld:{ *:[i64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (MOVBE64rm_EVEX:{ *:[i64] } addr:{ *:[iPTR] }:$src1) |
| 73225 | /* 206748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MOVBE64rm_EVEX), |
| 73226 | /* 206751 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73227 | /* 206753 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73228 | /* 206757 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73229 | /* 206762 */ GIR_RootConstrainSelectedInstOperands, |
| 73230 | /* 206763 */ // GIR_Coverage, 59, |
| 73231 | /* 206763 */ GIR_EraseRootFromParent_Done, |
| 73232 | /* 206764 */ // Label 4763: @206764 |
| 73233 | /* 206764 */ GIM_Try, /*On fail goto*//*Label 4764*/ GIMT_Encode4(206783), // Rule ID 6 // |
| 73234 | /* 206769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NoNDD_Or_NoMOVBE), |
| 73235 | /* 206772 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 73236 | /* 206776 */ // (bswap:{ *:[i64] } GR64:{ *:[i64] }:$src) => (BSWAP64r:{ *:[i64] } GR64:{ *:[i64] }:$src) |
| 73237 | /* 206776 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::BSWAP64r), |
| 73238 | /* 206781 */ GIR_RootConstrainSelectedInstOperands, |
| 73239 | /* 206782 */ // GIR_Coverage, 6, |
| 73240 | /* 206782 */ GIR_Done, |
| 73241 | /* 206783 */ // Label 4764: @206783 |
| 73242 | /* 206783 */ GIM_Try, /*On fail goto*//*Label 4765*/ GIMT_Encode4(206802), // Rule ID 63 // |
| 73243 | /* 206788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMOVBE_HasNDD_In64BitMode), |
| 73244 | /* 206791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::GR64RegClassID), |
| 73245 | /* 206795 */ // (bswap:{ *:[i64] } GR64:{ *:[i64] }:$src1) => (MOVBE64rr:{ *:[i64] } GR64:{ *:[i64] }:$src1) |
| 73246 | /* 206795 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MOVBE64rr), |
| 73247 | /* 206800 */ GIR_RootConstrainSelectedInstOperands, |
| 73248 | /* 206801 */ // GIR_Coverage, 63, |
| 73249 | /* 206801 */ GIR_Done, |
| 73250 | /* 206802 */ // Label 4765: @206802 |
| 73251 | /* 206802 */ GIM_Reject, |
| 73252 | /* 206803 */ // Label 4761: @206803 |
| 73253 | /* 206803 */ GIM_Reject, |
| 73254 | /* 206804 */ // Label 4750: @206804 |
| 73255 | /* 206804 */ GIM_Reject, |
| 73256 | /* 206805 */ // Label 68: @206805 |
| 73257 | /* 206805 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 4779*/ GIMT_Encode4(208973), |
| 73258 | /* 206816 */ /*GILLT_s16*//*Label 4766*/ GIMT_Encode4(206900), |
| 73259 | /* 206820 */ /*GILLT_s32*//*Label 4767*/ GIMT_Encode4(207021), |
| 73260 | /* 206824 */ /*GILLT_s64*//*Label 4768*/ GIMT_Encode4(207377), |
| 73261 | /* 206828 */ /*GILLT_s80*//*Label 4769*/ GIMT_Encode4(207733), GIMT_Encode4(0), GIMT_Encode4(0), |
| 73262 | /* 206840 */ /*GILLT_v2s64*//*Label 4770*/ GIMT_Encode4(207770), GIMT_Encode4(0), |
| 73263 | /* 206848 */ /*GILLT_v4s32*//*Label 4771*/ GIMT_Encode4(207973), |
| 73264 | /* 206852 */ /*GILLT_v4s64*//*Label 4772*/ GIMT_Encode4(208176), GIMT_Encode4(0), |
| 73265 | /* 206860 */ /*GILLT_v8s16*//*Label 4773*/ GIMT_Encode4(208352), |
| 73266 | /* 206864 */ /*GILLT_v8s32*//*Label 4774*/ GIMT_Encode4(208441), |
| 73267 | /* 206868 */ /*GILLT_v8s64*//*Label 4775*/ GIMT_Encode4(208617), GIMT_Encode4(0), GIMT_Encode4(0), |
| 73268 | /* 206880 */ /*GILLT_v16s16*//*Label 4776*/ GIMT_Encode4(208706), |
| 73269 | /* 206884 */ /*GILLT_v16s32*//*Label 4777*/ GIMT_Encode4(208795), GIMT_Encode4(0), GIMT_Encode4(0), |
| 73270 | /* 206896 */ /*GILLT_v32s16*//*Label 4778*/ GIMT_Encode4(208884), |
| 73271 | /* 206900 */ // Label 4766: @206900 |
| 73272 | /* 206900 */ GIM_Try, /*On fail goto*//*Label 4780*/ GIMT_Encode4(207020), |
| 73273 | /* 206905 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 73274 | /* 206908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 73275 | /* 206912 */ GIM_Try, /*On fail goto*//*Label 4781*/ GIMT_Encode4(206981), // Rule ID 21432 // |
| 73276 | /* 206917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_OptForSize), |
| 73277 | /* 206920 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73278 | /* 206924 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73279 | /* 206928 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73280 | /* 206931 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73281 | /* 206935 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73282 | /* 206939 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73283 | /* 206941 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73284 | /* 206948 */ // (fsqrt:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSHZm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 73285 | /* 206948 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 73286 | /* 206951 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73287 | /* 206955 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73288 | /* 206960 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73289 | /* 206962 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSHZm), |
| 73290 | /* 206965 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73291 | /* 206967 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73292 | /* 206970 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73293 | /* 206974 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73294 | /* 206979 */ GIR_RootConstrainSelectedInstOperands, |
| 73295 | /* 206980 */ // GIR_Coverage, 21432, |
| 73296 | /* 206980 */ GIR_EraseRootFromParent_Done, |
| 73297 | /* 206981 */ // Label 4781: @206981 |
| 73298 | /* 206981 */ GIM_Try, /*On fail goto*//*Label 4782*/ GIMT_Encode4(207019), // Rule ID 21430 // |
| 73299 | /* 206986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 73300 | /* 206989 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 73301 | /* 206993 */ // (fsqrt:{ *:[f16] } FR16X:{ *:[f16] }:$src) => (VSQRTSHZr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), FR16X:{ *:[f16] }:$src) |
| 73302 | /* 206993 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 73303 | /* 206996 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73304 | /* 207000 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73305 | /* 207005 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73306 | /* 207007 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSHZr), |
| 73307 | /* 207010 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73308 | /* 207012 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73309 | /* 207015 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73310 | /* 207017 */ GIR_RootConstrainSelectedInstOperands, |
| 73311 | /* 207018 */ // GIR_Coverage, 21430, |
| 73312 | /* 207018 */ GIR_EraseRootFromParent_Done, |
| 73313 | /* 207019 */ // Label 4782: @207019 |
| 73314 | /* 207019 */ GIM_Reject, |
| 73315 | /* 207020 */ // Label 4780: @207020 |
| 73316 | /* 207020 */ GIM_Reject, |
| 73317 | /* 207021 */ // Label 4767: @207021 |
| 73318 | /* 207021 */ GIM_Try, /*On fail goto*//*Label 4783*/ GIMT_Encode4(207376), |
| 73319 | /* 207026 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 73320 | /* 207029 */ GIM_Try, /*On fail goto*//*Label 4784*/ GIMT_Encode4(207085), // Rule ID 2449 // |
| 73321 | /* 207034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE1), |
| 73322 | /* 207037 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73323 | /* 207041 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73324 | /* 207045 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73325 | /* 207049 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73326 | /* 207052 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73327 | /* 207056 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73328 | /* 207060 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73329 | /* 207062 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73330 | /* 207069 */ // (fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SQRTSSm:{ *:[f32] } addr:{ *:[iPTR] }:$src1) |
| 73331 | /* 207069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SQRTSSm), |
| 73332 | /* 207072 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73333 | /* 207074 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73334 | /* 207078 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73335 | /* 207083 */ GIR_RootConstrainSelectedInstOperands, |
| 73336 | /* 207084 */ // GIR_Coverage, 2449, |
| 73337 | /* 207084 */ GIR_EraseRootFromParent_Done, |
| 73338 | /* 207085 */ // Label 4784: @207085 |
| 73339 | /* 207085 */ GIM_Try, /*On fail goto*//*Label 4785*/ GIMT_Encode4(207158), // Rule ID 18267 // |
| 73340 | /* 207090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 73341 | /* 207093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73342 | /* 207097 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73343 | /* 207101 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73344 | /* 207105 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73345 | /* 207108 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73346 | /* 207112 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73347 | /* 207116 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73348 | /* 207118 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73349 | /* 207125 */ // (fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSSm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 73350 | /* 207125 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 73351 | /* 207128 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73352 | /* 207132 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73353 | /* 207137 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73354 | /* 207139 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSm), |
| 73355 | /* 207142 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73356 | /* 207144 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73357 | /* 207147 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73358 | /* 207151 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73359 | /* 207156 */ GIR_RootConstrainSelectedInstOperands, |
| 73360 | /* 207157 */ // GIR_Coverage, 18267, |
| 73361 | /* 207157 */ GIR_EraseRootFromParent_Done, |
| 73362 | /* 207158 */ // Label 4785: @207158 |
| 73363 | /* 207158 */ GIM_Try, /*On fail goto*//*Label 4786*/ GIMT_Encode4(207231), // Rule ID 21436 // |
| 73364 | /* 207163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 73365 | /* 207166 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 73366 | /* 207170 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73367 | /* 207174 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73368 | /* 207178 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73369 | /* 207181 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73370 | /* 207185 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73371 | /* 207189 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73372 | /* 207191 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73373 | /* 207198 */ // (fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSSZm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 73374 | /* 207198 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 73375 | /* 207201 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73376 | /* 207205 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73377 | /* 207210 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73378 | /* 207212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSZm), |
| 73379 | /* 207215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73380 | /* 207217 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73381 | /* 207220 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73382 | /* 207224 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73383 | /* 207229 */ GIR_RootConstrainSelectedInstOperands, |
| 73384 | /* 207230 */ // GIR_Coverage, 21436, |
| 73385 | /* 207230 */ GIR_EraseRootFromParent_Done, |
| 73386 | /* 207231 */ // Label 4786: @207231 |
| 73387 | /* 207231 */ GIM_Try, /*On fail goto*//*Label 4787*/ GIMT_Encode4(207264), // Rule ID 1049 // |
| 73388 | /* 207236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 73389 | /* 207239 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 73390 | /* 207243 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 73391 | /* 207247 */ // (fsqrt:{ *:[f32] } RFP32:{ *:[f32] }:$src) => (SQRT_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src) |
| 73392 | /* 207247 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp32), |
| 73393 | /* 207252 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 73394 | /* 207258 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 73395 | /* 207262 */ GIR_RootConstrainSelectedInstOperands, |
| 73396 | /* 207263 */ // GIR_Coverage, 1049, |
| 73397 | /* 207263 */ GIR_Done, |
| 73398 | /* 207264 */ // Label 4787: @207264 |
| 73399 | /* 207264 */ GIM_Try, /*On fail goto*//*Label 4788*/ GIMT_Encode4(207291), // Rule ID 2447 // |
| 73400 | /* 207269 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 73401 | /* 207272 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73402 | /* 207276 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73403 | /* 207280 */ // (fsqrt:{ *:[f32] } FR32:{ *:[f32] }:$src1) => (SQRTSSr:{ *:[f32] } FR32:{ *:[f32] }:$src1) |
| 73404 | /* 207280 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTSSr), |
| 73405 | /* 207285 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73406 | /* 207289 */ GIR_RootConstrainSelectedInstOperands, |
| 73407 | /* 207290 */ // GIR_Coverage, 2447, |
| 73408 | /* 207290 */ GIR_Done, |
| 73409 | /* 207291 */ // Label 4788: @207291 |
| 73410 | /* 207291 */ GIM_Try, /*On fail goto*//*Label 4789*/ GIMT_Encode4(207333), // Rule ID 18265 // |
| 73411 | /* 207296 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 73412 | /* 207299 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73413 | /* 207303 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 73414 | /* 207307 */ // (fsqrt:{ *:[f32] } FR32:{ *:[f32] }:$src) => (VSQRTSSr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR32:{ *:[f32] }:$src) |
| 73415 | /* 207307 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 73416 | /* 207310 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73417 | /* 207314 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73418 | /* 207319 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73419 | /* 207321 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSr), |
| 73420 | /* 207324 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73421 | /* 207326 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73422 | /* 207329 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73423 | /* 207331 */ GIR_RootConstrainSelectedInstOperands, |
| 73424 | /* 207332 */ // GIR_Coverage, 18265, |
| 73425 | /* 207332 */ GIR_EraseRootFromParent_Done, |
| 73426 | /* 207333 */ // Label 4789: @207333 |
| 73427 | /* 207333 */ GIM_Try, /*On fail goto*//*Label 4790*/ GIMT_Encode4(207375), // Rule ID 21434 // |
| 73428 | /* 207338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 73429 | /* 207341 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 73430 | /* 207345 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 73431 | /* 207349 */ // (fsqrt:{ *:[f32] } FR32X:{ *:[f32] }:$src) => (VSQRTSSZr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR32X:{ *:[f32] }:$src) |
| 73432 | /* 207349 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 73433 | /* 207352 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73434 | /* 207356 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73435 | /* 207361 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73436 | /* 207363 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSZr), |
| 73437 | /* 207366 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73438 | /* 207368 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73439 | /* 207371 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73440 | /* 207373 */ GIR_RootConstrainSelectedInstOperands, |
| 73441 | /* 207374 */ // GIR_Coverage, 21434, |
| 73442 | /* 207374 */ GIR_EraseRootFromParent_Done, |
| 73443 | /* 207375 */ // Label 4790: @207375 |
| 73444 | /* 207375 */ GIM_Reject, |
| 73445 | /* 207376 */ // Label 4783: @207376 |
| 73446 | /* 207376 */ GIM_Reject, |
| 73447 | /* 207377 */ // Label 4768: @207377 |
| 73448 | /* 207377 */ GIM_Try, /*On fail goto*//*Label 4791*/ GIMT_Encode4(207732), |
| 73449 | /* 207382 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 73450 | /* 207385 */ GIM_Try, /*On fail goto*//*Label 4792*/ GIMT_Encode4(207441), // Rule ID 2465 // |
| 73451 | /* 207390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE2), |
| 73452 | /* 207393 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 73453 | /* 207397 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73454 | /* 207401 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73455 | /* 207405 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73456 | /* 207408 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73457 | /* 207412 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73458 | /* 207416 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73459 | /* 207418 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73460 | /* 207425 */ // (fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SQRTSDm:{ *:[f64] } addr:{ *:[iPTR] }:$src1) |
| 73461 | /* 207425 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SQRTSDm), |
| 73462 | /* 207428 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73463 | /* 207430 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 73464 | /* 207434 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73465 | /* 207439 */ GIR_RootConstrainSelectedInstOperands, |
| 73466 | /* 207440 */ // GIR_Coverage, 2465, |
| 73467 | /* 207440 */ GIR_EraseRootFromParent_Done, |
| 73468 | /* 207441 */ // Label 4792: @207441 |
| 73469 | /* 207441 */ GIM_Try, /*On fail goto*//*Label 4793*/ GIMT_Encode4(207514), // Rule ID 18271 // |
| 73470 | /* 207446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 73471 | /* 207449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 73472 | /* 207453 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73473 | /* 207457 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73474 | /* 207461 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73475 | /* 207464 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73476 | /* 207468 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73477 | /* 207472 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73478 | /* 207474 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73479 | /* 207481 */ // (fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSDm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 73480 | /* 207481 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 73481 | /* 207484 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73482 | /* 207488 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73483 | /* 207493 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73484 | /* 207495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDm), |
| 73485 | /* 207498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73486 | /* 207500 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73487 | /* 207503 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73488 | /* 207507 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73489 | /* 207512 */ GIR_RootConstrainSelectedInstOperands, |
| 73490 | /* 207513 */ // GIR_Coverage, 18271, |
| 73491 | /* 207513 */ GIR_EraseRootFromParent_Done, |
| 73492 | /* 207514 */ // Label 4793: @207514 |
| 73493 | /* 207514 */ GIM_Try, /*On fail goto*//*Label 4794*/ GIMT_Encode4(207587), // Rule ID 21440 // |
| 73494 | /* 207519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 73495 | /* 207522 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 73496 | /* 207526 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73497 | /* 207530 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73498 | /* 207534 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73499 | /* 207537 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73500 | /* 207541 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73501 | /* 207545 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73502 | /* 207547 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73503 | /* 207554 */ // (fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSDZm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 73504 | /* 207554 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 73505 | /* 207557 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73506 | /* 207561 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73507 | /* 207566 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73508 | /* 207568 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDZm), |
| 73509 | /* 207571 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73510 | /* 207573 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73511 | /* 207576 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73512 | /* 207580 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73513 | /* 207585 */ GIR_RootConstrainSelectedInstOperands, |
| 73514 | /* 207586 */ // GIR_Coverage, 21440, |
| 73515 | /* 207586 */ GIR_EraseRootFromParent_Done, |
| 73516 | /* 207587 */ // Label 4794: @207587 |
| 73517 | /* 207587 */ GIM_Try, /*On fail goto*//*Label 4795*/ GIMT_Encode4(207620), // Rule ID 1051 // |
| 73518 | /* 207592 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 73519 | /* 207595 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 73520 | /* 207599 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 73521 | /* 207603 */ // (fsqrt:{ *:[f64] } RFP64:{ *:[f64] }:$src) => (SQRT_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src) |
| 73522 | /* 207603 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp64), |
| 73523 | /* 207608 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 73524 | /* 207614 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 73525 | /* 207618 */ GIR_RootConstrainSelectedInstOperands, |
| 73526 | /* 207619 */ // GIR_Coverage, 1051, |
| 73527 | /* 207619 */ GIR_Done, |
| 73528 | /* 207620 */ // Label 4795: @207620 |
| 73529 | /* 207620 */ GIM_Try, /*On fail goto*//*Label 4796*/ GIMT_Encode4(207647), // Rule ID 2463 // |
| 73530 | /* 207625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 73531 | /* 207628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 73532 | /* 207632 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 73533 | /* 207636 */ // (fsqrt:{ *:[f64] } FR64:{ *:[f64] }:$src1) => (SQRTSDr:{ *:[f64] } FR64:{ *:[f64] }:$src1) |
| 73534 | /* 207636 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTSDr), |
| 73535 | /* 207641 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73536 | /* 207645 */ GIR_RootConstrainSelectedInstOperands, |
| 73537 | /* 207646 */ // GIR_Coverage, 2463, |
| 73538 | /* 207646 */ GIR_Done, |
| 73539 | /* 207647 */ // Label 4796: @207647 |
| 73540 | /* 207647 */ GIM_Try, /*On fail goto*//*Label 4797*/ GIMT_Encode4(207689), // Rule ID 18269 // |
| 73541 | /* 207652 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 73542 | /* 207655 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 73543 | /* 207659 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 73544 | /* 207663 */ // (fsqrt:{ *:[f64] } FR64:{ *:[f64] }:$src) => (VSQRTSDr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR64:{ *:[f64] }:$src) |
| 73545 | /* 207663 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 73546 | /* 207666 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73547 | /* 207670 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73548 | /* 207675 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73549 | /* 207677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDr), |
| 73550 | /* 207680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73551 | /* 207682 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73552 | /* 207685 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73553 | /* 207687 */ GIR_RootConstrainSelectedInstOperands, |
| 73554 | /* 207688 */ // GIR_Coverage, 18269, |
| 73555 | /* 207688 */ GIR_EraseRootFromParent_Done, |
| 73556 | /* 207689 */ // Label 4797: @207689 |
| 73557 | /* 207689 */ GIM_Try, /*On fail goto*//*Label 4798*/ GIMT_Encode4(207731), // Rule ID 21438 // |
| 73558 | /* 207694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 73559 | /* 207697 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 73560 | /* 207701 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 73561 | /* 207705 */ // (fsqrt:{ *:[f64] } FR64X:{ *:[f64] }:$src) => (VSQRTSDZr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR64X:{ *:[f64] }:$src) |
| 73562 | /* 207705 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 73563 | /* 207708 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 73564 | /* 207712 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 73565 | /* 207717 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 73566 | /* 207719 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDZr), |
| 73567 | /* 207722 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73568 | /* 207724 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 73569 | /* 207727 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 73570 | /* 207729 */ GIR_RootConstrainSelectedInstOperands, |
| 73571 | /* 207730 */ // GIR_Coverage, 21438, |
| 73572 | /* 207730 */ GIR_EraseRootFromParent_Done, |
| 73573 | /* 207731 */ // Label 4798: @207731 |
| 73574 | /* 207731 */ GIM_Reject, |
| 73575 | /* 207732 */ // Label 4791: @207732 |
| 73576 | /* 207732 */ GIM_Reject, |
| 73577 | /* 207733 */ // Label 4769: @207733 |
| 73578 | /* 207733 */ GIM_Try, /*On fail goto*//*Label 4799*/ GIMT_Encode4(207769), // Rule ID 1053 // |
| 73579 | /* 207738 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 73580 | /* 207741 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 73581 | /* 207744 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 73582 | /* 207748 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 73583 | /* 207752 */ // (fsqrt:{ *:[f80] } RFP80:{ *:[f80] }:$src) => (SQRT_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src) |
| 73584 | /* 207752 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp80), |
| 73585 | /* 207757 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 73586 | /* 207763 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 73587 | /* 207767 */ GIR_RootConstrainSelectedInstOperands, |
| 73588 | /* 207768 */ // GIR_Coverage, 1053, |
| 73589 | /* 207768 */ GIR_Done, |
| 73590 | /* 207769 */ // Label 4799: @207769 |
| 73591 | /* 207769 */ GIM_Reject, |
| 73592 | /* 207770 */ // Label 4770: @207770 |
| 73593 | /* 207770 */ GIM_Try, /*On fail goto*//*Label 4800*/ GIMT_Encode4(207972), |
| 73594 | /* 207775 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 73595 | /* 207778 */ GIM_Try, /*On fail goto*//*Label 4801*/ GIMT_Encode4(207834), // Rule ID 2469 // |
| 73596 | /* 207783 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 73597 | /* 207786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73598 | /* 207790 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73599 | /* 207794 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73600 | /* 207798 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73601 | /* 207801 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73602 | /* 207805 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73603 | /* 207809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73604 | /* 207811 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73605 | /* 207818 */ // (fsqrt:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 73606 | /* 207818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDm), |
| 73607 | /* 207821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73608 | /* 207823 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73609 | /* 207827 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73610 | /* 207832 */ GIR_RootConstrainSelectedInstOperands, |
| 73611 | /* 207833 */ // GIR_Coverage, 2469, |
| 73612 | /* 207833 */ GIR_EraseRootFromParent_Done, |
| 73613 | /* 207834 */ // Label 4801: @207834 |
| 73614 | /* 207834 */ GIM_Try, /*On fail goto*//*Label 4802*/ GIMT_Encode4(207890), // Rule ID 12091 // |
| 73615 | /* 207839 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 73616 | /* 207842 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73617 | /* 207846 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73618 | /* 207850 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73619 | /* 207854 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73620 | /* 207857 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73621 | /* 207861 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73622 | /* 207865 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73623 | /* 207867 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73624 | /* 207874 */ // (fsqrt:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZ128m:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 73625 | /* 207874 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ128m), |
| 73626 | /* 207877 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73627 | /* 207879 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73628 | /* 207883 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73629 | /* 207888 */ GIR_RootConstrainSelectedInstOperands, |
| 73630 | /* 207889 */ // GIR_Coverage, 12091, |
| 73631 | /* 207889 */ GIR_EraseRootFromParent_Done, |
| 73632 | /* 207890 */ // Label 4802: @207890 |
| 73633 | /* 207890 */ GIM_Try, /*On fail goto*//*Label 4803*/ GIMT_Encode4(207917), // Rule ID 2467 // |
| 73634 | /* 207895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 73635 | /* 207898 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73636 | /* 207902 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73637 | /* 207906 */ // (fsqrt:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) => (VSQRTPDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 73638 | /* 207906 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDr), |
| 73639 | /* 207911 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73640 | /* 207915 */ GIR_RootConstrainSelectedInstOperands, |
| 73641 | /* 207916 */ // GIR_Coverage, 2467, |
| 73642 | /* 207916 */ GIR_Done, |
| 73643 | /* 207917 */ // Label 4803: @207917 |
| 73644 | /* 207917 */ GIM_Try, /*On fail goto*//*Label 4804*/ GIMT_Encode4(207944), // Rule ID 2475 // |
| 73645 | /* 207922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 73646 | /* 207925 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73647 | /* 207929 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73648 | /* 207933 */ // (fsqrt:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) => (SQRTPDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 73649 | /* 207933 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTPDr), |
| 73650 | /* 207938 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73651 | /* 207942 */ GIR_RootConstrainSelectedInstOperands, |
| 73652 | /* 207943 */ // GIR_Coverage, 2475, |
| 73653 | /* 207943 */ GIR_Done, |
| 73654 | /* 207944 */ // Label 4804: @207944 |
| 73655 | /* 207944 */ GIM_Try, /*On fail goto*//*Label 4805*/ GIMT_Encode4(207971), // Rule ID 12087 // |
| 73656 | /* 207949 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 73657 | /* 207952 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73658 | /* 207956 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73659 | /* 207960 */ // (fsqrt:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src) => (VSQRTPDZ128r:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src) |
| 73660 | /* 207960 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ128r), |
| 73661 | /* 207965 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73662 | /* 207969 */ GIR_RootConstrainSelectedInstOperands, |
| 73663 | /* 207970 */ // GIR_Coverage, 12087, |
| 73664 | /* 207970 */ GIR_Done, |
| 73665 | /* 207971 */ // Label 4805: @207971 |
| 73666 | /* 207971 */ GIM_Reject, |
| 73667 | /* 207972 */ // Label 4800: @207972 |
| 73668 | /* 207972 */ GIM_Reject, |
| 73669 | /* 207973 */ // Label 4771: @207973 |
| 73670 | /* 207973 */ GIM_Try, /*On fail goto*//*Label 4806*/ GIMT_Encode4(208175), |
| 73671 | /* 207978 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 73672 | /* 207981 */ GIM_Try, /*On fail goto*//*Label 4807*/ GIMT_Encode4(208037), // Rule ID 2453 // |
| 73673 | /* 207986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 73674 | /* 207989 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73675 | /* 207993 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73676 | /* 207997 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73677 | /* 208001 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73678 | /* 208004 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73679 | /* 208008 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73680 | /* 208012 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73681 | /* 208014 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73682 | /* 208021 */ // (fsqrt:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 73683 | /* 208021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSm), |
| 73684 | /* 208024 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73685 | /* 208026 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73686 | /* 208030 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73687 | /* 208035 */ GIR_RootConstrainSelectedInstOperands, |
| 73688 | /* 208036 */ // GIR_Coverage, 2453, |
| 73689 | /* 208036 */ GIR_EraseRootFromParent_Done, |
| 73690 | /* 208037 */ // Label 4807: @208037 |
| 73691 | /* 208037 */ GIM_Try, /*On fail goto*//*Label 4808*/ GIMT_Encode4(208093), // Rule ID 12067 // |
| 73692 | /* 208042 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 73693 | /* 208045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73694 | /* 208049 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73695 | /* 208053 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73696 | /* 208057 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73697 | /* 208060 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73698 | /* 208064 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73699 | /* 208068 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73700 | /* 208070 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73701 | /* 208077 */ // (fsqrt:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZ128m:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 73702 | /* 208077 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ128m), |
| 73703 | /* 208080 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73704 | /* 208082 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73705 | /* 208086 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73706 | /* 208091 */ GIR_RootConstrainSelectedInstOperands, |
| 73707 | /* 208092 */ // GIR_Coverage, 12067, |
| 73708 | /* 208092 */ GIR_EraseRootFromParent_Done, |
| 73709 | /* 208093 */ // Label 4808: @208093 |
| 73710 | /* 208093 */ GIM_Try, /*On fail goto*//*Label 4809*/ GIMT_Encode4(208120), // Rule ID 2451 // |
| 73711 | /* 208098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 73712 | /* 208101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73713 | /* 208105 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73714 | /* 208109 */ // (fsqrt:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) => (VSQRTPSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 73715 | /* 208109 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSr), |
| 73716 | /* 208114 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73717 | /* 208118 */ GIR_RootConstrainSelectedInstOperands, |
| 73718 | /* 208119 */ // GIR_Coverage, 2451, |
| 73719 | /* 208119 */ GIR_Done, |
| 73720 | /* 208120 */ // Label 4809: @208120 |
| 73721 | /* 208120 */ GIM_Try, /*On fail goto*//*Label 4810*/ GIMT_Encode4(208147), // Rule ID 2459 // |
| 73722 | /* 208125 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 73723 | /* 208128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73724 | /* 208132 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 73725 | /* 208136 */ // (fsqrt:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) => (SQRTPSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 73726 | /* 208136 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTPSr), |
| 73727 | /* 208141 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73728 | /* 208145 */ GIR_RootConstrainSelectedInstOperands, |
| 73729 | /* 208146 */ // GIR_Coverage, 2459, |
| 73730 | /* 208146 */ GIR_Done, |
| 73731 | /* 208147 */ // Label 4810: @208147 |
| 73732 | /* 208147 */ GIM_Try, /*On fail goto*//*Label 4811*/ GIMT_Encode4(208174), // Rule ID 12063 // |
| 73733 | /* 208152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 73734 | /* 208155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73735 | /* 208159 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73736 | /* 208163 */ // (fsqrt:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src) => (VSQRTPSZ128r:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src) |
| 73737 | /* 208163 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ128r), |
| 73738 | /* 208168 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73739 | /* 208172 */ GIR_RootConstrainSelectedInstOperands, |
| 73740 | /* 208173 */ // GIR_Coverage, 12063, |
| 73741 | /* 208173 */ GIR_Done, |
| 73742 | /* 208174 */ // Label 4811: @208174 |
| 73743 | /* 208174 */ GIM_Reject, |
| 73744 | /* 208175 */ // Label 4806: @208175 |
| 73745 | /* 208175 */ GIM_Reject, |
| 73746 | /* 208176 */ // Label 4772: @208176 |
| 73747 | /* 208176 */ GIM_Try, /*On fail goto*//*Label 4812*/ GIMT_Encode4(208351), |
| 73748 | /* 208181 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 73749 | /* 208184 */ GIM_Try, /*On fail goto*//*Label 4813*/ GIMT_Encode4(208240), // Rule ID 2473 // |
| 73750 | /* 208189 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 73751 | /* 208192 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 73752 | /* 208196 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73753 | /* 208200 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73754 | /* 208204 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73755 | /* 208207 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73756 | /* 208211 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73757 | /* 208215 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73758 | /* 208217 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73759 | /* 208224 */ // (fsqrt:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDYm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 73760 | /* 208224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDYm), |
| 73761 | /* 208227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73762 | /* 208229 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73763 | /* 208233 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73764 | /* 208238 */ GIR_RootConstrainSelectedInstOperands, |
| 73765 | /* 208239 */ // GIR_Coverage, 2473, |
| 73766 | /* 208239 */ GIR_EraseRootFromParent_Done, |
| 73767 | /* 208240 */ // Label 4813: @208240 |
| 73768 | /* 208240 */ GIM_Try, /*On fail goto*//*Label 4814*/ GIMT_Encode4(208296), // Rule ID 12103 // |
| 73769 | /* 208245 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 73770 | /* 208248 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73771 | /* 208252 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73772 | /* 208256 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73773 | /* 208260 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73774 | /* 208263 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73775 | /* 208267 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73776 | /* 208271 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73777 | /* 208273 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73778 | /* 208280 */ // (fsqrt:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZ256m:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 73779 | /* 208280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ256m), |
| 73780 | /* 208283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73781 | /* 208285 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73782 | /* 208289 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73783 | /* 208294 */ GIR_RootConstrainSelectedInstOperands, |
| 73784 | /* 208295 */ // GIR_Coverage, 12103, |
| 73785 | /* 208295 */ GIR_EraseRootFromParent_Done, |
| 73786 | /* 208296 */ // Label 4814: @208296 |
| 73787 | /* 208296 */ GIM_Try, /*On fail goto*//*Label 4815*/ GIMT_Encode4(208323), // Rule ID 2471 // |
| 73788 | /* 208301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 73789 | /* 208304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 73790 | /* 208308 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 73791 | /* 208312 */ // (fsqrt:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) => (VSQRTPDYr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) |
| 73792 | /* 208312 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDYr), |
| 73793 | /* 208317 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73794 | /* 208321 */ GIR_RootConstrainSelectedInstOperands, |
| 73795 | /* 208322 */ // GIR_Coverage, 2471, |
| 73796 | /* 208322 */ GIR_Done, |
| 73797 | /* 208323 */ // Label 4815: @208323 |
| 73798 | /* 208323 */ GIM_Try, /*On fail goto*//*Label 4816*/ GIMT_Encode4(208350), // Rule ID 12099 // |
| 73799 | /* 208328 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 73800 | /* 208331 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73801 | /* 208335 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73802 | /* 208339 */ // (fsqrt:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src) => (VSQRTPDZ256r:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src) |
| 73803 | /* 208339 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ256r), |
| 73804 | /* 208344 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73805 | /* 208348 */ GIR_RootConstrainSelectedInstOperands, |
| 73806 | /* 208349 */ // GIR_Coverage, 12099, |
| 73807 | /* 208349 */ GIR_Done, |
| 73808 | /* 208350 */ // Label 4816: @208350 |
| 73809 | /* 208350 */ GIM_Reject, |
| 73810 | /* 208351 */ // Label 4812: @208351 |
| 73811 | /* 208351 */ GIM_Reject, |
| 73812 | /* 208352 */ // Label 4773: @208352 |
| 73813 | /* 208352 */ GIM_Try, /*On fail goto*//*Label 4817*/ GIMT_Encode4(208440), |
| 73814 | /* 208357 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 73815 | /* 208360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73816 | /* 208364 */ GIM_Try, /*On fail goto*//*Label 4818*/ GIMT_Encode4(208416), // Rule ID 12019 // |
| 73817 | /* 208369 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 73818 | /* 208372 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73819 | /* 208376 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73820 | /* 208380 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73821 | /* 208383 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73822 | /* 208387 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73823 | /* 208391 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73824 | /* 208393 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73825 | /* 208400 */ // (fsqrt:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZ128m:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 73826 | /* 208400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ128m), |
| 73827 | /* 208403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73828 | /* 208405 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73829 | /* 208409 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73830 | /* 208414 */ GIR_RootConstrainSelectedInstOperands, |
| 73831 | /* 208415 */ // GIR_Coverage, 12019, |
| 73832 | /* 208415 */ GIR_EraseRootFromParent_Done, |
| 73833 | /* 208416 */ // Label 4818: @208416 |
| 73834 | /* 208416 */ GIM_Try, /*On fail goto*//*Label 4819*/ GIMT_Encode4(208439), // Rule ID 12015 // |
| 73835 | /* 208421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 73836 | /* 208424 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 73837 | /* 208428 */ // (fsqrt:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src) => (VSQRTPHZ128r:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src) |
| 73838 | /* 208428 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ128r), |
| 73839 | /* 208433 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73840 | /* 208437 */ GIR_RootConstrainSelectedInstOperands, |
| 73841 | /* 208438 */ // GIR_Coverage, 12015, |
| 73842 | /* 208438 */ GIR_Done, |
| 73843 | /* 208439 */ // Label 4819: @208439 |
| 73844 | /* 208439 */ GIM_Reject, |
| 73845 | /* 208440 */ // Label 4817: @208440 |
| 73846 | /* 208440 */ GIM_Reject, |
| 73847 | /* 208441 */ // Label 4774: @208441 |
| 73848 | /* 208441 */ GIM_Try, /*On fail goto*//*Label 4820*/ GIMT_Encode4(208616), |
| 73849 | /* 208446 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 73850 | /* 208449 */ GIM_Try, /*On fail goto*//*Label 4821*/ GIMT_Encode4(208505), // Rule ID 2457 // |
| 73851 | /* 208454 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 73852 | /* 208457 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 73853 | /* 208461 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73854 | /* 208465 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73855 | /* 208469 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73856 | /* 208472 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73857 | /* 208476 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73858 | /* 208480 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73859 | /* 208482 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73860 | /* 208489 */ // (fsqrt:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSYm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 73861 | /* 208489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSYm), |
| 73862 | /* 208492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73863 | /* 208494 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73864 | /* 208498 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73865 | /* 208503 */ GIR_RootConstrainSelectedInstOperands, |
| 73866 | /* 208504 */ // GIR_Coverage, 2457, |
| 73867 | /* 208504 */ GIR_EraseRootFromParent_Done, |
| 73868 | /* 208505 */ // Label 4821: @208505 |
| 73869 | /* 208505 */ GIM_Try, /*On fail goto*//*Label 4822*/ GIMT_Encode4(208561), // Rule ID 12079 // |
| 73870 | /* 208510 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 73871 | /* 208513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73872 | /* 208517 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73873 | /* 208521 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73874 | /* 208525 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73875 | /* 208528 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73876 | /* 208532 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73877 | /* 208536 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73878 | /* 208538 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73879 | /* 208545 */ // (fsqrt:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZ256m:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 73880 | /* 208545 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ256m), |
| 73881 | /* 208548 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73882 | /* 208550 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73883 | /* 208554 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73884 | /* 208559 */ GIR_RootConstrainSelectedInstOperands, |
| 73885 | /* 208560 */ // GIR_Coverage, 12079, |
| 73886 | /* 208560 */ GIR_EraseRootFromParent_Done, |
| 73887 | /* 208561 */ // Label 4822: @208561 |
| 73888 | /* 208561 */ GIM_Try, /*On fail goto*//*Label 4823*/ GIMT_Encode4(208588), // Rule ID 2455 // |
| 73889 | /* 208566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 73890 | /* 208569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 73891 | /* 208573 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 73892 | /* 208577 */ // (fsqrt:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) => (VSQRTPSYr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) |
| 73893 | /* 208577 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSYr), |
| 73894 | /* 208582 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73895 | /* 208586 */ GIR_RootConstrainSelectedInstOperands, |
| 73896 | /* 208587 */ // GIR_Coverage, 2455, |
| 73897 | /* 208587 */ GIR_Done, |
| 73898 | /* 208588 */ // Label 4823: @208588 |
| 73899 | /* 208588 */ GIM_Try, /*On fail goto*//*Label 4824*/ GIMT_Encode4(208615), // Rule ID 12075 // |
| 73900 | /* 208593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 73901 | /* 208596 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73902 | /* 208600 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73903 | /* 208604 */ // (fsqrt:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src) => (VSQRTPSZ256r:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src) |
| 73904 | /* 208604 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ256r), |
| 73905 | /* 208609 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73906 | /* 208613 */ GIR_RootConstrainSelectedInstOperands, |
| 73907 | /* 208614 */ // GIR_Coverage, 12075, |
| 73908 | /* 208614 */ GIR_Done, |
| 73909 | /* 208615 */ // Label 4824: @208615 |
| 73910 | /* 208615 */ GIM_Reject, |
| 73911 | /* 208616 */ // Label 4820: @208616 |
| 73912 | /* 208616 */ GIM_Reject, |
| 73913 | /* 208617 */ // Label 4775: @208617 |
| 73914 | /* 208617 */ GIM_Try, /*On fail goto*//*Label 4825*/ GIMT_Encode4(208705), |
| 73915 | /* 208622 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 73916 | /* 208625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73917 | /* 208629 */ GIM_Try, /*On fail goto*//*Label 4826*/ GIMT_Encode4(208681), // Rule ID 12055 // |
| 73918 | /* 208634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 73919 | /* 208637 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73920 | /* 208641 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73921 | /* 208645 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73922 | /* 208648 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73923 | /* 208652 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73924 | /* 208656 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73925 | /* 208658 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73926 | /* 208665 */ // (fsqrt:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 73927 | /* 208665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZm), |
| 73928 | /* 208668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73929 | /* 208670 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73930 | /* 208674 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73931 | /* 208679 */ GIR_RootConstrainSelectedInstOperands, |
| 73932 | /* 208680 */ // GIR_Coverage, 12055, |
| 73933 | /* 208680 */ GIR_EraseRootFromParent_Done, |
| 73934 | /* 208681 */ // Label 4826: @208681 |
| 73935 | /* 208681 */ GIM_Try, /*On fail goto*//*Label 4827*/ GIMT_Encode4(208704), // Rule ID 12051 // |
| 73936 | /* 208686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 73937 | /* 208689 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73938 | /* 208693 */ // (fsqrt:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src) => (VSQRTPDZr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src) |
| 73939 | /* 208693 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZr), |
| 73940 | /* 208698 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73941 | /* 208702 */ GIR_RootConstrainSelectedInstOperands, |
| 73942 | /* 208703 */ // GIR_Coverage, 12051, |
| 73943 | /* 208703 */ GIR_Done, |
| 73944 | /* 208704 */ // Label 4827: @208704 |
| 73945 | /* 208704 */ GIM_Reject, |
| 73946 | /* 208705 */ // Label 4825: @208705 |
| 73947 | /* 208705 */ GIM_Reject, |
| 73948 | /* 208706 */ // Label 4776: @208706 |
| 73949 | /* 208706 */ GIM_Try, /*On fail goto*//*Label 4828*/ GIMT_Encode4(208794), |
| 73950 | /* 208711 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 73951 | /* 208714 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73952 | /* 208718 */ GIM_Try, /*On fail goto*//*Label 4829*/ GIMT_Encode4(208770), // Rule ID 12031 // |
| 73953 | /* 208723 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 73954 | /* 208726 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73955 | /* 208730 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73956 | /* 208734 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73957 | /* 208737 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73958 | /* 208741 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73959 | /* 208745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73960 | /* 208747 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73961 | /* 208754 */ // (fsqrt:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZ256m:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 73962 | /* 208754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ256m), |
| 73963 | /* 208757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73964 | /* 208759 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 73965 | /* 208763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 73966 | /* 208768 */ GIR_RootConstrainSelectedInstOperands, |
| 73967 | /* 208769 */ // GIR_Coverage, 12031, |
| 73968 | /* 208769 */ GIR_EraseRootFromParent_Done, |
| 73969 | /* 208770 */ // Label 4829: @208770 |
| 73970 | /* 208770 */ GIM_Try, /*On fail goto*//*Label 4830*/ GIMT_Encode4(208793), // Rule ID 12027 // |
| 73971 | /* 208775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 73972 | /* 208778 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 73973 | /* 208782 */ // (fsqrt:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src) => (VSQRTPHZ256r:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src) |
| 73974 | /* 208782 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ256r), |
| 73975 | /* 208787 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 73976 | /* 208791 */ GIR_RootConstrainSelectedInstOperands, |
| 73977 | /* 208792 */ // GIR_Coverage, 12027, |
| 73978 | /* 208792 */ GIR_Done, |
| 73979 | /* 208793 */ // Label 4830: @208793 |
| 73980 | /* 208793 */ GIM_Reject, |
| 73981 | /* 208794 */ // Label 4828: @208794 |
| 73982 | /* 208794 */ GIM_Reject, |
| 73983 | /* 208795 */ // Label 4777: @208795 |
| 73984 | /* 208795 */ GIM_Try, /*On fail goto*//*Label 4831*/ GIMT_Encode4(208883), |
| 73985 | /* 208800 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 73986 | /* 208803 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 73987 | /* 208807 */ GIM_Try, /*On fail goto*//*Label 4832*/ GIMT_Encode4(208859), // Rule ID 12043 // |
| 73988 | /* 208812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 73989 | /* 208815 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 73990 | /* 208819 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 73991 | /* 208823 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 73992 | /* 208826 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 73993 | /* 208830 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 73994 | /* 208834 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 73995 | /* 208836 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 73996 | /* 208843 */ // (fsqrt:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 73997 | /* 208843 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZm), |
| 73998 | /* 208846 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 73999 | /* 208848 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74000 | /* 208852 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74001 | /* 208857 */ GIR_RootConstrainSelectedInstOperands, |
| 74002 | /* 208858 */ // GIR_Coverage, 12043, |
| 74003 | /* 208858 */ GIR_EraseRootFromParent_Done, |
| 74004 | /* 208859 */ // Label 4832: @208859 |
| 74005 | /* 208859 */ GIM_Try, /*On fail goto*//*Label 4833*/ GIMT_Encode4(208882), // Rule ID 12039 // |
| 74006 | /* 208864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74007 | /* 208867 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74008 | /* 208871 */ // (fsqrt:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src) => (VSQRTPSZr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src) |
| 74009 | /* 208871 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZr), |
| 74010 | /* 208876 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74011 | /* 208880 */ GIR_RootConstrainSelectedInstOperands, |
| 74012 | /* 208881 */ // GIR_Coverage, 12039, |
| 74013 | /* 208881 */ GIR_Done, |
| 74014 | /* 208882 */ // Label 4833: @208882 |
| 74015 | /* 208882 */ GIM_Reject, |
| 74016 | /* 208883 */ // Label 4831: @208883 |
| 74017 | /* 208883 */ GIM_Reject, |
| 74018 | /* 208884 */ // Label 4778: @208884 |
| 74019 | /* 208884 */ GIM_Try, /*On fail goto*//*Label 4834*/ GIMT_Encode4(208972), |
| 74020 | /* 208889 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 74021 | /* 208892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74022 | /* 208896 */ GIM_Try, /*On fail goto*//*Label 4835*/ GIMT_Encode4(208948), // Rule ID 12007 // |
| 74023 | /* 208901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74024 | /* 208904 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74025 | /* 208908 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74026 | /* 208912 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74027 | /* 208915 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74028 | /* 208919 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74029 | /* 208923 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74030 | /* 208925 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74031 | /* 208932 */ // (fsqrt:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 74032 | /* 208932 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZm), |
| 74033 | /* 208935 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74034 | /* 208937 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 74035 | /* 208941 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74036 | /* 208946 */ GIR_RootConstrainSelectedInstOperands, |
| 74037 | /* 208947 */ // GIR_Coverage, 12007, |
| 74038 | /* 208947 */ GIR_EraseRootFromParent_Done, |
| 74039 | /* 208948 */ // Label 4835: @208948 |
| 74040 | /* 208948 */ GIM_Try, /*On fail goto*//*Label 4836*/ GIMT_Encode4(208971), // Rule ID 12003 // |
| 74041 | /* 208953 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74042 | /* 208956 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 74043 | /* 208960 */ // (fsqrt:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src) => (VSQRTPHZr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src) |
| 74044 | /* 208960 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZr), |
| 74045 | /* 208965 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74046 | /* 208969 */ GIR_RootConstrainSelectedInstOperands, |
| 74047 | /* 208970 */ // GIR_Coverage, 12003, |
| 74048 | /* 208970 */ GIR_Done, |
| 74049 | /* 208971 */ // Label 4836: @208971 |
| 74050 | /* 208971 */ GIM_Reject, |
| 74051 | /* 208972 */ // Label 4834: @208972 |
| 74052 | /* 208972 */ GIM_Reject, |
| 74053 | /* 208973 */ // Label 4779: @208973 |
| 74054 | /* 208973 */ GIM_Reject, |
| 74055 | /* 208974 */ // Label 69: @208974 |
| 74056 | /* 208974 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 4850*/ GIMT_Encode4(213903), |
| 74057 | /* 208985 */ /*GILLT_s16*//*Label 4837*/ GIMT_Encode4(209069), |
| 74058 | /* 208989 */ /*GILLT_s32*//*Label 4838*/ GIMT_Encode4(209229), |
| 74059 | /* 208993 */ /*GILLT_s64*//*Label 4839*/ GIMT_Encode4(210134), |
| 74060 | /* 208997 */ /*GILLT_s80*//*Label 4840*/ GIMT_Encode4(211183), GIMT_Encode4(0), GIMT_Encode4(0), |
| 74061 | /* 209009 */ /*GILLT_v2s64*//*Label 4841*/ GIMT_Encode4(211749), GIMT_Encode4(0), |
| 74062 | /* 209017 */ /*GILLT_v4s32*//*Label 4842*/ GIMT_Encode4(212103), |
| 74063 | /* 209021 */ /*GILLT_v4s64*//*Label 4843*/ GIMT_Encode4(212457), GIMT_Encode4(0), |
| 74064 | /* 209029 */ /*GILLT_v8s16*//*Label 4844*/ GIMT_Encode4(212780), |
| 74065 | /* 209033 */ /*GILLT_v8s32*//*Label 4845*/ GIMT_Encode4(212940), |
| 74066 | /* 209037 */ /*GILLT_v8s64*//*Label 4846*/ GIMT_Encode4(213263), GIMT_Encode4(0), GIMT_Encode4(0), |
| 74067 | /* 209049 */ /*GILLT_v16s16*//*Label 4847*/ GIMT_Encode4(213423), |
| 74068 | /* 209053 */ /*GILLT_v16s32*//*Label 4848*/ GIMT_Encode4(213583), GIMT_Encode4(0), GIMT_Encode4(0), |
| 74069 | /* 209065 */ /*GILLT_v32s16*//*Label 4849*/ GIMT_Encode4(213743), |
| 74070 | /* 209069 */ // Label 4837: @209069 |
| 74071 | /* 209069 */ GIM_Try, /*On fail goto*//*Label 4851*/ GIMT_Encode4(209228), |
| 74072 | /* 209074 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 74073 | /* 209077 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 74074 | /* 209080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74075 | /* 209084 */ GIM_Try, /*On fail goto*//*Label 4852*/ GIMT_Encode4(209142), // Rule ID 24331 // |
| 74076 | /* 209089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74077 | /* 209092 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74078 | /* 209096 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74079 | /* 209100 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74080 | /* 209103 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74081 | /* 209107 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74082 | /* 209111 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74083 | /* 209115 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74084 | /* 209117 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74085 | /* 209124 */ // (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) |
| 74086 | /* 209124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSHZrm), |
| 74087 | /* 209127 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74088 | /* 209129 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74089 | /* 209131 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74090 | /* 209135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74091 | /* 209140 */ GIR_RootConstrainSelectedInstOperands, |
| 74092 | /* 209141 */ // GIR_Coverage, 24331, |
| 74093 | /* 209141 */ GIR_EraseRootFromParent_Done, |
| 74094 | /* 209142 */ // Label 4852: @209142 |
| 74095 | /* 209142 */ GIM_Try, /*On fail goto*//*Label 4853*/ GIMT_Encode4(209200), // Rule ID 5958 // |
| 74096 | /* 209147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74097 | /* 209150 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74098 | /* 209154 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74099 | /* 209158 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74100 | /* 209162 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74101 | /* 209165 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74102 | /* 209169 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74103 | /* 209173 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74104 | /* 209175 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74105 | /* 209182 */ // (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) |
| 74106 | /* 209182 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSHZrm), |
| 74107 | /* 209185 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74108 | /* 209187 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74109 | /* 209189 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74110 | /* 209193 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74111 | /* 209198 */ GIR_RootConstrainSelectedInstOperands, |
| 74112 | /* 209199 */ // GIR_Coverage, 5958, |
| 74113 | /* 209199 */ GIR_EraseRootFromParent_Done, |
| 74114 | /* 209200 */ // Label 4853: @209200 |
| 74115 | /* 209200 */ GIM_Try, /*On fail goto*//*Label 4854*/ GIMT_Encode4(209227), // Rule ID 5956 // |
| 74116 | /* 209205 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 74117 | /* 209208 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74118 | /* 209212 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 74119 | /* 209216 */ // (strict_fadd:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VADDSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 74120 | /* 209216 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSHZrr), |
| 74121 | /* 209221 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74122 | /* 209225 */ GIR_RootConstrainSelectedInstOperands, |
| 74123 | /* 209226 */ // GIR_Coverage, 5956, |
| 74124 | /* 209226 */ GIR_Done, |
| 74125 | /* 209227 */ // Label 4854: @209227 |
| 74126 | /* 209227 */ GIM_Reject, |
| 74127 | /* 209228 */ // Label 4851: @209228 |
| 74128 | /* 209228 */ GIM_Reject, |
| 74129 | /* 209229 */ // Label 4838: @209229 |
| 74130 | /* 209229 */ GIM_Try, /*On fail goto*//*Label 4855*/ GIMT_Encode4(210133), |
| 74131 | /* 209234 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 74132 | /* 209237 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 74133 | /* 209240 */ GIM_Try, /*On fail goto*//*Label 4856*/ GIMT_Encode4(209305), // Rule ID 23328 // |
| 74134 | /* 209245 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74135 | /* 209248 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74136 | /* 209252 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74137 | /* 209256 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74138 | /* 209260 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74139 | /* 209267 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74140 | /* 209271 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74141 | /* 209275 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74142 | /* 209277 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74143 | /* 209284 */ // (strict_fadd:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (ADD_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74144 | /* 209284 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m32), |
| 74145 | /* 209287 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74146 | /* 209289 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74147 | /* 209291 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74148 | /* 209295 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74149 | /* 209298 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74150 | /* 209303 */ GIR_RootConstrainSelectedInstOperands, |
| 74151 | /* 209304 */ // GIR_Coverage, 23328, |
| 74152 | /* 209304 */ GIR_EraseRootFromParent_Done, |
| 74153 | /* 209305 */ // Label 4856: @209305 |
| 74154 | /* 209305 */ GIM_Try, /*On fail goto*//*Label 4857*/ GIMT_Encode4(209370), // Rule ID 23330 // |
| 74155 | /* 209310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74156 | /* 209313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74157 | /* 209317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74158 | /* 209321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74159 | /* 209325 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74160 | /* 209332 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74161 | /* 209336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74162 | /* 209340 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74163 | /* 209342 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74164 | /* 209349 */ // (strict_fadd:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (ADD_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74165 | /* 209349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m32), |
| 74166 | /* 209352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74167 | /* 209354 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74168 | /* 209356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74169 | /* 209360 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74170 | /* 209363 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74171 | /* 209368 */ GIR_RootConstrainSelectedInstOperands, |
| 74172 | /* 209369 */ // GIR_Coverage, 23330, |
| 74173 | /* 209369 */ GIR_EraseRootFromParent_Done, |
| 74174 | /* 209370 */ // Label 4857: @209370 |
| 74175 | /* 209370 */ GIM_Try, /*On fail goto*//*Label 4858*/ GIMT_Encode4(209435), // Rule ID 23318 // |
| 74176 | /* 209375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74177 | /* 209378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74178 | /* 209382 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74179 | /* 209386 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74180 | /* 209390 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74181 | /* 209393 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74182 | /* 209397 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74183 | /* 209401 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74184 | /* 209405 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74185 | /* 209407 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74186 | /* 209414 */ // (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) |
| 74187 | /* 209414 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32m), |
| 74188 | /* 209417 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74189 | /* 209419 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74190 | /* 209421 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74191 | /* 209425 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74192 | /* 209428 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74193 | /* 209433 */ GIR_RootConstrainSelectedInstOperands, |
| 74194 | /* 209434 */ // GIR_Coverage, 23318, |
| 74195 | /* 209434 */ GIR_EraseRootFromParent_Done, |
| 74196 | /* 209435 */ // Label 4858: @209435 |
| 74197 | /* 209435 */ GIM_Try, /*On fail goto*//*Label 4859*/ GIMT_Encode4(209497), // Rule ID 23463 // |
| 74198 | /* 209440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74199 | /* 209443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74200 | /* 209447 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74201 | /* 209451 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74202 | /* 209455 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74203 | /* 209458 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74204 | /* 209462 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74205 | /* 209466 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74206 | /* 209470 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74207 | /* 209472 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74208 | /* 209479 */ // (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) |
| 74209 | /* 209479 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 74210 | /* 209482 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74211 | /* 209484 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74212 | /* 209486 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74213 | /* 209490 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74214 | /* 209495 */ GIR_RootConstrainSelectedInstOperands, |
| 74215 | /* 209496 */ // GIR_Coverage, 23463, |
| 74216 | /* 209496 */ GIR_EraseRootFromParent_Done, |
| 74217 | /* 209497 */ // Label 4859: @209497 |
| 74218 | /* 209497 */ GIM_Try, /*On fail goto*//*Label 4860*/ GIMT_Encode4(209559), // Rule ID 23467 // |
| 74219 | /* 209502 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 74220 | /* 209505 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74221 | /* 209509 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74222 | /* 209513 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74223 | /* 209517 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74224 | /* 209520 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74225 | /* 209524 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74226 | /* 209528 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74227 | /* 209532 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74228 | /* 209534 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74229 | /* 209541 */ // (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) |
| 74230 | /* 209541 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 74231 | /* 209544 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74232 | /* 209546 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74233 | /* 209548 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74234 | /* 209552 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74235 | /* 209557 */ GIR_RootConstrainSelectedInstOperands, |
| 74236 | /* 209558 */ // GIR_Coverage, 23467, |
| 74237 | /* 209558 */ GIR_EraseRootFromParent_Done, |
| 74238 | /* 209559 */ // Label 4860: @209559 |
| 74239 | /* 209559 */ GIM_Try, /*On fail goto*//*Label 4861*/ GIMT_Encode4(209621), // Rule ID 24327 // |
| 74240 | /* 209564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74241 | /* 209567 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74242 | /* 209571 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74243 | /* 209575 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74244 | /* 209579 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74245 | /* 209582 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74246 | /* 209586 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74247 | /* 209590 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74248 | /* 209594 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74249 | /* 209596 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74250 | /* 209603 */ // (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) |
| 74251 | /* 209603 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 74252 | /* 209606 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74253 | /* 209608 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74254 | /* 209610 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74255 | /* 209614 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74256 | /* 209619 */ GIR_RootConstrainSelectedInstOperands, |
| 74257 | /* 209620 */ // GIR_Coverage, 24327, |
| 74258 | /* 209620 */ GIR_EraseRootFromParent_Done, |
| 74259 | /* 209621 */ // Label 4861: @209621 |
| 74260 | /* 209621 */ GIM_Try, /*On fail goto*//*Label 4862*/ GIMT_Encode4(209686), // Rule ID 920 // |
| 74261 | /* 209626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74262 | /* 209629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74263 | /* 209633 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74264 | /* 209637 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74265 | /* 209641 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74266 | /* 209645 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74267 | /* 209652 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74268 | /* 209656 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74269 | /* 209658 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74270 | /* 209665 */ // (strict_fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74271 | /* 209665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m32), |
| 74272 | /* 209668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74273 | /* 209670 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74274 | /* 209672 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74275 | /* 209676 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74276 | /* 209679 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74277 | /* 209684 */ GIR_RootConstrainSelectedInstOperands, |
| 74278 | /* 209685 */ // GIR_Coverage, 920, |
| 74279 | /* 209685 */ GIR_EraseRootFromParent_Done, |
| 74280 | /* 209686 */ // Label 4862: @209686 |
| 74281 | /* 209686 */ GIM_Try, /*On fail goto*//*Label 4863*/ GIMT_Encode4(209751), // Rule ID 922 // |
| 74282 | /* 209691 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74283 | /* 209694 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74284 | /* 209698 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74285 | /* 209702 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74286 | /* 209706 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74287 | /* 209710 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74288 | /* 209717 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74289 | /* 209721 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74290 | /* 209723 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74291 | /* 209730 */ // (strict_fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74292 | /* 209730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m32), |
| 74293 | /* 209733 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74294 | /* 209735 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74295 | /* 209737 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74296 | /* 209741 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74297 | /* 209744 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74298 | /* 209749 */ GIR_RootConstrainSelectedInstOperands, |
| 74299 | /* 209750 */ // GIR_Coverage, 922, |
| 74300 | /* 209750 */ GIR_EraseRootFromParent_Done, |
| 74301 | /* 209751 */ // Label 4863: @209751 |
| 74302 | /* 209751 */ GIM_Try, /*On fail goto*//*Label 4864*/ GIMT_Encode4(209816), // Rule ID 910 // |
| 74303 | /* 209756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74304 | /* 209759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74305 | /* 209763 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74306 | /* 209767 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74307 | /* 209771 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74308 | /* 209775 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74309 | /* 209778 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74310 | /* 209782 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74311 | /* 209786 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74312 | /* 209788 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74313 | /* 209795 */ // (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) |
| 74314 | /* 209795 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32m), |
| 74315 | /* 209798 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74316 | /* 209800 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74317 | /* 209802 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74318 | /* 209806 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74319 | /* 209809 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74320 | /* 209814 */ GIR_RootConstrainSelectedInstOperands, |
| 74321 | /* 209815 */ // GIR_Coverage, 910, |
| 74322 | /* 209815 */ GIR_EraseRootFromParent_Done, |
| 74323 | /* 209816 */ // Label 4864: @209816 |
| 74324 | /* 209816 */ GIM_Try, /*On fail goto*//*Label 4865*/ GIMT_Encode4(209878), // Rule ID 2160 // |
| 74325 | /* 209821 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74326 | /* 209824 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74327 | /* 209828 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74328 | /* 209832 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74329 | /* 209836 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74330 | /* 209840 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74331 | /* 209843 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74332 | /* 209847 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74333 | /* 209851 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74334 | /* 209853 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74335 | /* 209860 */ // (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) |
| 74336 | /* 209860 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSrm), |
| 74337 | /* 209863 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74338 | /* 209865 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74339 | /* 209867 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74340 | /* 209871 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74341 | /* 209876 */ GIR_RootConstrainSelectedInstOperands, |
| 74342 | /* 209877 */ // GIR_Coverage, 2160, |
| 74343 | /* 209877 */ GIR_EraseRootFromParent_Done, |
| 74344 | /* 209878 */ // Label 4865: @209878 |
| 74345 | /* 209878 */ GIM_Try, /*On fail goto*//*Label 4866*/ GIMT_Encode4(209940), // Rule ID 2168 // |
| 74346 | /* 209883 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 74347 | /* 209886 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74348 | /* 209890 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74349 | /* 209894 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74350 | /* 209898 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74351 | /* 209902 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74352 | /* 209905 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74353 | /* 209909 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74354 | /* 209913 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74355 | /* 209915 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74356 | /* 209922 */ // (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) |
| 74357 | /* 209922 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSSrm), |
| 74358 | /* 209925 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74359 | /* 209927 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74360 | /* 209929 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74361 | /* 209933 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74362 | /* 209938 */ GIR_RootConstrainSelectedInstOperands, |
| 74363 | /* 209939 */ // GIR_Coverage, 2168, |
| 74364 | /* 209939 */ GIR_EraseRootFromParent_Done, |
| 74365 | /* 209940 */ // Label 4866: @209940 |
| 74366 | /* 209940 */ GIM_Try, /*On fail goto*//*Label 4867*/ GIMT_Encode4(210002), // Rule ID 5920 // |
| 74367 | /* 209945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74368 | /* 209948 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74369 | /* 209952 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74370 | /* 209956 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74371 | /* 209960 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74372 | /* 209964 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74373 | /* 209967 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74374 | /* 209971 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74375 | /* 209975 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74376 | /* 209977 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74377 | /* 209984 */ // (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) |
| 74378 | /* 209984 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSSZrm), |
| 74379 | /* 209987 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74380 | /* 209989 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74381 | /* 209991 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74382 | /* 209995 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74383 | /* 210000 */ GIR_RootConstrainSelectedInstOperands, |
| 74384 | /* 210001 */ // GIR_Coverage, 5920, |
| 74385 | /* 210001 */ GIR_EraseRootFromParent_Done, |
| 74386 | /* 210002 */ // Label 4867: @210002 |
| 74387 | /* 210002 */ GIM_Try, /*On fail goto*//*Label 4868*/ GIMT_Encode4(210039), // Rule ID 886 // |
| 74388 | /* 210007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 74389 | /* 210010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74390 | /* 210014 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74391 | /* 210018 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 74392 | /* 210022 */ // (strict_fadd:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (ADD_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 74393 | /* 210022 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp32), |
| 74394 | /* 210027 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 74395 | /* 210033 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 74396 | /* 210037 */ GIR_RootConstrainSelectedInstOperands, |
| 74397 | /* 210038 */ // GIR_Coverage, 886, |
| 74398 | /* 210038 */ GIR_Done, |
| 74399 | /* 210039 */ // Label 4868: @210039 |
| 74400 | /* 210039 */ GIM_Try, /*On fail goto*//*Label 4869*/ GIMT_Encode4(210070), // Rule ID 2158 // |
| 74401 | /* 210044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74402 | /* 210047 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74403 | /* 210051 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74404 | /* 210055 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74405 | /* 210059 */ // (strict_fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VADDSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 74406 | /* 210059 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSSrr), |
| 74407 | /* 210064 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74408 | /* 210068 */ GIR_RootConstrainSelectedInstOperands, |
| 74409 | /* 210069 */ // GIR_Coverage, 2158, |
| 74410 | /* 210069 */ GIR_Done, |
| 74411 | /* 210070 */ // Label 4869: @210070 |
| 74412 | /* 210070 */ GIM_Try, /*On fail goto*//*Label 4870*/ GIMT_Encode4(210101), // Rule ID 2166 // |
| 74413 | /* 210075 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 74414 | /* 210078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74415 | /* 210082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74416 | /* 210086 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 74417 | /* 210090 */ // (strict_fadd:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (ADDSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 74418 | /* 210090 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDSSrr), |
| 74419 | /* 210095 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74420 | /* 210099 */ GIR_RootConstrainSelectedInstOperands, |
| 74421 | /* 210100 */ // GIR_Coverage, 2166, |
| 74422 | /* 210100 */ GIR_Done, |
| 74423 | /* 210101 */ // Label 4870: @210101 |
| 74424 | /* 210101 */ GIM_Try, /*On fail goto*//*Label 4871*/ GIMT_Encode4(210132), // Rule ID 5918 // |
| 74425 | /* 210106 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74426 | /* 210109 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74427 | /* 210113 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74428 | /* 210117 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 74429 | /* 210121 */ // (strict_fadd:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VADDSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 74430 | /* 210121 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSSZrr), |
| 74431 | /* 210126 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74432 | /* 210130 */ GIR_RootConstrainSelectedInstOperands, |
| 74433 | /* 210131 */ // GIR_Coverage, 5918, |
| 74434 | /* 210131 */ GIR_Done, |
| 74435 | /* 210132 */ // Label 4871: @210132 |
| 74436 | /* 210132 */ GIM_Reject, |
| 74437 | /* 210133 */ // Label 4855: @210133 |
| 74438 | /* 210133 */ GIM_Reject, |
| 74439 | /* 210134 */ // Label 4839: @210134 |
| 74440 | /* 210134 */ GIM_Try, /*On fail goto*//*Label 4872*/ GIMT_Encode4(211182), |
| 74441 | /* 210139 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 74442 | /* 210142 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 74443 | /* 210145 */ GIM_Try, /*On fail goto*//*Label 4873*/ GIMT_Encode4(210210), // Rule ID 23332 // |
| 74444 | /* 210150 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74445 | /* 210153 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74446 | /* 210157 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74447 | /* 210161 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74448 | /* 210165 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74449 | /* 210172 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74450 | /* 210176 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74451 | /* 210180 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74452 | /* 210182 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74453 | /* 210189 */ // (strict_fadd:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (ADD_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74454 | /* 210189 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m64), |
| 74455 | /* 210192 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74456 | /* 210194 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74457 | /* 210196 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74458 | /* 210200 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74459 | /* 210203 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74460 | /* 210208 */ GIR_RootConstrainSelectedInstOperands, |
| 74461 | /* 210209 */ // GIR_Coverage, 23332, |
| 74462 | /* 210209 */ GIR_EraseRootFromParent_Done, |
| 74463 | /* 210210 */ // Label 4873: @210210 |
| 74464 | /* 210210 */ GIM_Try, /*On fail goto*//*Label 4874*/ GIMT_Encode4(210275), // Rule ID 23334 // |
| 74465 | /* 210215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74466 | /* 210218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74467 | /* 210222 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74468 | /* 210226 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74469 | /* 210230 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74470 | /* 210237 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74471 | /* 210241 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74472 | /* 210245 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74473 | /* 210247 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74474 | /* 210254 */ // (strict_fadd:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (ADD_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74475 | /* 210254 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m64), |
| 74476 | /* 210257 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74477 | /* 210259 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74478 | /* 210261 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74479 | /* 210265 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74480 | /* 210268 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74481 | /* 210273 */ GIR_RootConstrainSelectedInstOperands, |
| 74482 | /* 210274 */ // GIR_Coverage, 23334, |
| 74483 | /* 210274 */ GIR_EraseRootFromParent_Done, |
| 74484 | /* 210275 */ // Label 4874: @210275 |
| 74485 | /* 210275 */ GIM_Try, /*On fail goto*//*Label 4875*/ GIMT_Encode4(210340), // Rule ID 23320 // |
| 74486 | /* 210280 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74487 | /* 210283 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74488 | /* 210287 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74489 | /* 210291 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74490 | /* 210295 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74491 | /* 210298 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74492 | /* 210302 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74493 | /* 210306 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74494 | /* 210310 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74495 | /* 210312 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74496 | /* 210319 */ // (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) |
| 74497 | /* 210319 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m), |
| 74498 | /* 210322 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74499 | /* 210324 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74500 | /* 210326 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74501 | /* 210330 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74502 | /* 210333 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74503 | /* 210338 */ GIR_RootConstrainSelectedInstOperands, |
| 74504 | /* 210339 */ // GIR_Coverage, 23320, |
| 74505 | /* 210339 */ GIR_EraseRootFromParent_Done, |
| 74506 | /* 210340 */ // Label 4875: @210340 |
| 74507 | /* 210340 */ GIM_Try, /*On fail goto*//*Label 4876*/ GIMT_Encode4(210412), // Rule ID 23322 // |
| 74508 | /* 210345 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74509 | /* 210348 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74510 | /* 210352 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74511 | /* 210356 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74512 | /* 210360 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74513 | /* 210363 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74514 | /* 210367 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74515 | /* 210374 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74516 | /* 210378 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74517 | /* 210382 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74518 | /* 210384 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74519 | /* 210391 */ // (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) |
| 74520 | /* 210391 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m32), |
| 74521 | /* 210394 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74522 | /* 210396 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74523 | /* 210398 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74524 | /* 210402 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74525 | /* 210405 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74526 | /* 210410 */ GIR_RootConstrainSelectedInstOperands, |
| 74527 | /* 210411 */ // GIR_Coverage, 23322, |
| 74528 | /* 210411 */ GIR_EraseRootFromParent_Done, |
| 74529 | /* 210412 */ // Label 4876: @210412 |
| 74530 | /* 210412 */ GIM_Try, /*On fail goto*//*Label 4877*/ GIMT_Encode4(210474), // Rule ID 23465 // |
| 74531 | /* 210417 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74532 | /* 210420 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74533 | /* 210424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74534 | /* 210428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74535 | /* 210432 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74536 | /* 210435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74537 | /* 210439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74538 | /* 210443 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74539 | /* 210447 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74540 | /* 210449 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74541 | /* 210456 */ // (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) |
| 74542 | /* 210456 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 74543 | /* 210459 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74544 | /* 210461 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74545 | /* 210463 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74546 | /* 210467 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74547 | /* 210472 */ GIR_RootConstrainSelectedInstOperands, |
| 74548 | /* 210473 */ // GIR_Coverage, 23465, |
| 74549 | /* 210473 */ GIR_EraseRootFromParent_Done, |
| 74550 | /* 210474 */ // Label 4877: @210474 |
| 74551 | /* 210474 */ GIM_Try, /*On fail goto*//*Label 4878*/ GIMT_Encode4(210536), // Rule ID 23469 // |
| 74552 | /* 210479 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 74553 | /* 210482 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74554 | /* 210486 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74555 | /* 210490 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74556 | /* 210494 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74557 | /* 210497 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74558 | /* 210501 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74559 | /* 210505 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74560 | /* 210509 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74561 | /* 210511 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74562 | /* 210518 */ // (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) |
| 74563 | /* 210518 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 74564 | /* 210521 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74565 | /* 210523 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74566 | /* 210525 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74567 | /* 210529 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74568 | /* 210534 */ GIR_RootConstrainSelectedInstOperands, |
| 74569 | /* 210535 */ // GIR_Coverage, 23469, |
| 74570 | /* 210535 */ GIR_EraseRootFromParent_Done, |
| 74571 | /* 210536 */ // Label 4878: @210536 |
| 74572 | /* 210536 */ GIM_Try, /*On fail goto*//*Label 4879*/ GIMT_Encode4(210598), // Rule ID 24329 // |
| 74573 | /* 210541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74574 | /* 210544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74575 | /* 210548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74576 | /* 210552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74577 | /* 210556 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74578 | /* 210559 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74579 | /* 210563 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74580 | /* 210567 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74581 | /* 210571 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74582 | /* 210573 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74583 | /* 210580 */ // (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) |
| 74584 | /* 210580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 74585 | /* 210583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74586 | /* 210585 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74587 | /* 210587 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74588 | /* 210591 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74589 | /* 210596 */ GIR_RootConstrainSelectedInstOperands, |
| 74590 | /* 210597 */ // GIR_Coverage, 24329, |
| 74591 | /* 210597 */ GIR_EraseRootFromParent_Done, |
| 74592 | /* 210598 */ // Label 4879: @210598 |
| 74593 | /* 210598 */ GIM_Try, /*On fail goto*//*Label 4880*/ GIMT_Encode4(210663), // Rule ID 924 // |
| 74594 | /* 210603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74595 | /* 210606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74596 | /* 210610 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74597 | /* 210614 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74598 | /* 210618 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74599 | /* 210622 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74600 | /* 210629 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74601 | /* 210633 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74602 | /* 210635 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74603 | /* 210642 */ // (strict_fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74604 | /* 210642 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m64), |
| 74605 | /* 210645 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74606 | /* 210647 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74607 | /* 210649 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74608 | /* 210653 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74609 | /* 210656 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74610 | /* 210661 */ GIR_RootConstrainSelectedInstOperands, |
| 74611 | /* 210662 */ // GIR_Coverage, 924, |
| 74612 | /* 210662 */ GIR_EraseRootFromParent_Done, |
| 74613 | /* 210663 */ // Label 4880: @210663 |
| 74614 | /* 210663 */ GIM_Try, /*On fail goto*//*Label 4881*/ GIMT_Encode4(210728), // Rule ID 926 // |
| 74615 | /* 210668 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74616 | /* 210671 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74617 | /* 210675 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74618 | /* 210679 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74619 | /* 210683 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74620 | /* 210687 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74621 | /* 210694 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74622 | /* 210698 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74623 | /* 210700 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74624 | /* 210707 */ // (strict_fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74625 | /* 210707 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m64), |
| 74626 | /* 210710 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74627 | /* 210712 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74628 | /* 210714 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74629 | /* 210718 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74630 | /* 210721 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74631 | /* 210726 */ GIR_RootConstrainSelectedInstOperands, |
| 74632 | /* 210727 */ // GIR_Coverage, 926, |
| 74633 | /* 210727 */ GIR_EraseRootFromParent_Done, |
| 74634 | /* 210728 */ // Label 4881: @210728 |
| 74635 | /* 210728 */ GIM_Try, /*On fail goto*//*Label 4882*/ GIMT_Encode4(210793), // Rule ID 912 // |
| 74636 | /* 210733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74637 | /* 210736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74638 | /* 210740 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74639 | /* 210744 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74640 | /* 210748 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74641 | /* 210752 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74642 | /* 210755 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74643 | /* 210759 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74644 | /* 210763 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74645 | /* 210765 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74646 | /* 210772 */ // (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) |
| 74647 | /* 210772 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m), |
| 74648 | /* 210775 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74649 | /* 210777 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74650 | /* 210779 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74651 | /* 210783 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74652 | /* 210786 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74653 | /* 210791 */ GIR_RootConstrainSelectedInstOperands, |
| 74654 | /* 210792 */ // GIR_Coverage, 912, |
| 74655 | /* 210792 */ GIR_EraseRootFromParent_Done, |
| 74656 | /* 210793 */ // Label 4882: @210793 |
| 74657 | /* 210793 */ GIM_Try, /*On fail goto*//*Label 4883*/ GIMT_Encode4(210865), // Rule ID 914 // |
| 74658 | /* 210798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74659 | /* 210801 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74660 | /* 210805 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74661 | /* 210809 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74662 | /* 210813 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74663 | /* 210817 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74664 | /* 210820 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74665 | /* 210824 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74666 | /* 210831 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74667 | /* 210835 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74668 | /* 210837 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74669 | /* 210844 */ // (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) |
| 74670 | /* 210844 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64m32), |
| 74671 | /* 210847 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74672 | /* 210849 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74673 | /* 210851 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74674 | /* 210855 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74675 | /* 210858 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74676 | /* 210863 */ GIR_RootConstrainSelectedInstOperands, |
| 74677 | /* 210864 */ // GIR_Coverage, 914, |
| 74678 | /* 210864 */ GIR_EraseRootFromParent_Done, |
| 74679 | /* 210865 */ // Label 4883: @210865 |
| 74680 | /* 210865 */ GIM_Try, /*On fail goto*//*Label 4884*/ GIMT_Encode4(210927), // Rule ID 2164 // |
| 74681 | /* 210870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74682 | /* 210873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74683 | /* 210877 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74684 | /* 210881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74685 | /* 210885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74686 | /* 210889 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74687 | /* 210892 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74688 | /* 210896 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74689 | /* 210900 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74690 | /* 210902 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74691 | /* 210909 */ // (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) |
| 74692 | /* 210909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDrm), |
| 74693 | /* 210912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74694 | /* 210914 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74695 | /* 210916 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74696 | /* 210920 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74697 | /* 210925 */ GIR_RootConstrainSelectedInstOperands, |
| 74698 | /* 210926 */ // GIR_Coverage, 2164, |
| 74699 | /* 210926 */ GIR_EraseRootFromParent_Done, |
| 74700 | /* 210927 */ // Label 4884: @210927 |
| 74701 | /* 210927 */ GIM_Try, /*On fail goto*//*Label 4885*/ GIMT_Encode4(210989), // Rule ID 2172 // |
| 74702 | /* 210932 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 74703 | /* 210935 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74704 | /* 210939 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74705 | /* 210943 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74706 | /* 210947 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74707 | /* 210951 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74708 | /* 210954 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74709 | /* 210958 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74710 | /* 210962 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74711 | /* 210964 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74712 | /* 210971 */ // (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) |
| 74713 | /* 210971 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADDSDrm), |
| 74714 | /* 210974 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74715 | /* 210976 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74716 | /* 210978 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74717 | /* 210982 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74718 | /* 210987 */ GIR_RootConstrainSelectedInstOperands, |
| 74719 | /* 210988 */ // GIR_Coverage, 2172, |
| 74720 | /* 210988 */ GIR_EraseRootFromParent_Done, |
| 74721 | /* 210989 */ // Label 4885: @210989 |
| 74722 | /* 210989 */ GIM_Try, /*On fail goto*//*Label 4886*/ GIMT_Encode4(211051), // Rule ID 5939 // |
| 74723 | /* 210994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74724 | /* 210997 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74725 | /* 211001 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74726 | /* 211005 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74727 | /* 211009 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74728 | /* 211013 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74729 | /* 211016 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74730 | /* 211020 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74731 | /* 211024 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74732 | /* 211026 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74733 | /* 211033 */ // (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) |
| 74734 | /* 211033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDSDZrm), |
| 74735 | /* 211036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74736 | /* 211038 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74737 | /* 211040 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74738 | /* 211044 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74739 | /* 211049 */ GIR_RootConstrainSelectedInstOperands, |
| 74740 | /* 211050 */ // GIR_Coverage, 5939, |
| 74741 | /* 211050 */ GIR_EraseRootFromParent_Done, |
| 74742 | /* 211051 */ // Label 4886: @211051 |
| 74743 | /* 211051 */ GIM_Try, /*On fail goto*//*Label 4887*/ GIMT_Encode4(211088), // Rule ID 888 // |
| 74744 | /* 211056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 74745 | /* 211059 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74746 | /* 211063 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74747 | /* 211067 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 74748 | /* 211071 */ // (strict_fadd:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (ADD_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 74749 | /* 211071 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp64), |
| 74750 | /* 211076 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 74751 | /* 211082 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 74752 | /* 211086 */ GIR_RootConstrainSelectedInstOperands, |
| 74753 | /* 211087 */ // GIR_Coverage, 888, |
| 74754 | /* 211087 */ GIR_Done, |
| 74755 | /* 211088 */ // Label 4887: @211088 |
| 74756 | /* 211088 */ GIM_Try, /*On fail goto*//*Label 4888*/ GIMT_Encode4(211119), // Rule ID 2162 // |
| 74757 | /* 211093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 74758 | /* 211096 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74759 | /* 211100 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74760 | /* 211104 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74761 | /* 211108 */ // (strict_fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VADDSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 74762 | /* 211108 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSDrr), |
| 74763 | /* 211113 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74764 | /* 211117 */ GIR_RootConstrainSelectedInstOperands, |
| 74765 | /* 211118 */ // GIR_Coverage, 2162, |
| 74766 | /* 211118 */ GIR_Done, |
| 74767 | /* 211119 */ // Label 4888: @211119 |
| 74768 | /* 211119 */ GIM_Try, /*On fail goto*//*Label 4889*/ GIMT_Encode4(211150), // Rule ID 2170 // |
| 74769 | /* 211124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 74770 | /* 211127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74771 | /* 211131 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74772 | /* 211135 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 74773 | /* 211139 */ // (strict_fadd:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (ADDSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 74774 | /* 211139 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDSDrr), |
| 74775 | /* 211144 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74776 | /* 211148 */ GIR_RootConstrainSelectedInstOperands, |
| 74777 | /* 211149 */ // GIR_Coverage, 2170, |
| 74778 | /* 211149 */ GIR_Done, |
| 74779 | /* 211150 */ // Label 4889: @211150 |
| 74780 | /* 211150 */ GIM_Try, /*On fail goto*//*Label 4890*/ GIMT_Encode4(211181), // Rule ID 5937 // |
| 74781 | /* 211155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 74782 | /* 211158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74783 | /* 211162 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74784 | /* 211166 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 74785 | /* 211170 */ // (strict_fadd:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VADDSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 74786 | /* 211170 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDSDZrr), |
| 74787 | /* 211175 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 74788 | /* 211179 */ GIR_RootConstrainSelectedInstOperands, |
| 74789 | /* 211180 */ // GIR_Coverage, 5937, |
| 74790 | /* 211180 */ GIR_Done, |
| 74791 | /* 211181 */ // Label 4890: @211181 |
| 74792 | /* 211181 */ GIM_Reject, |
| 74793 | /* 211182 */ // Label 4872: @211182 |
| 74794 | /* 211182 */ GIM_Reject, |
| 74795 | /* 211183 */ // Label 4840: @211183 |
| 74796 | /* 211183 */ GIM_Try, /*On fail goto*//*Label 4891*/ GIMT_Encode4(211748), |
| 74797 | /* 211188 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 74798 | /* 211191 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 74799 | /* 211194 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74800 | /* 211198 */ GIM_Try, /*On fail goto*//*Label 4892*/ GIMT_Encode4(211259), // Rule ID 23336 // |
| 74801 | /* 211203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74802 | /* 211206 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74803 | /* 211210 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74804 | /* 211214 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74805 | /* 211221 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74806 | /* 211225 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74807 | /* 211229 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74808 | /* 211231 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74809 | /* 211238 */ // (strict_fadd:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (ADD_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74810 | /* 211238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m80), |
| 74811 | /* 211241 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74812 | /* 211243 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74813 | /* 211245 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74814 | /* 211249 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74815 | /* 211252 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74816 | /* 211257 */ GIR_RootConstrainSelectedInstOperands, |
| 74817 | /* 211258 */ // GIR_Coverage, 23336, |
| 74818 | /* 211258 */ GIR_EraseRootFromParent_Done, |
| 74819 | /* 211259 */ // Label 4892: @211259 |
| 74820 | /* 211259 */ GIM_Try, /*On fail goto*//*Label 4893*/ GIMT_Encode4(211320), // Rule ID 23338 // |
| 74821 | /* 211264 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74822 | /* 211267 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74823 | /* 211271 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74824 | /* 211275 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74825 | /* 211282 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74826 | /* 211286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74827 | /* 211290 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74828 | /* 211292 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74829 | /* 211299 */ // (strict_fadd:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (ADD_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74830 | /* 211299 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m80), |
| 74831 | /* 211302 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74832 | /* 211304 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74833 | /* 211306 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74834 | /* 211310 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74835 | /* 211313 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74836 | /* 211318 */ GIR_RootConstrainSelectedInstOperands, |
| 74837 | /* 211319 */ // GIR_Coverage, 23338, |
| 74838 | /* 211319 */ GIR_EraseRootFromParent_Done, |
| 74839 | /* 211320 */ // Label 4893: @211320 |
| 74840 | /* 211320 */ GIM_Try, /*On fail goto*//*Label 4894*/ GIMT_Encode4(211388), // Rule ID 23324 // |
| 74841 | /* 211325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74842 | /* 211328 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74843 | /* 211332 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74844 | /* 211336 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74845 | /* 211339 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74846 | /* 211343 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74847 | /* 211350 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74848 | /* 211354 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74849 | /* 211358 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74850 | /* 211360 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74851 | /* 211367 */ // (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) |
| 74852 | /* 211367 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m32), |
| 74853 | /* 211370 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74854 | /* 211372 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74855 | /* 211374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74856 | /* 211378 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74857 | /* 211381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74858 | /* 211386 */ GIR_RootConstrainSelectedInstOperands, |
| 74859 | /* 211387 */ // GIR_Coverage, 23324, |
| 74860 | /* 211387 */ GIR_EraseRootFromParent_Done, |
| 74861 | /* 211388 */ // Label 4894: @211388 |
| 74862 | /* 211388 */ GIM_Try, /*On fail goto*//*Label 4895*/ GIMT_Encode4(211456), // Rule ID 23326 // |
| 74863 | /* 211393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74864 | /* 211396 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74865 | /* 211400 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74866 | /* 211404 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74867 | /* 211407 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74868 | /* 211411 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 74869 | /* 211418 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74870 | /* 211422 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74871 | /* 211426 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74872 | /* 211428 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74873 | /* 211435 */ // (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) |
| 74874 | /* 211435 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m64), |
| 74875 | /* 211438 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74876 | /* 211440 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 74877 | /* 211442 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74878 | /* 211446 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74879 | /* 211449 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74880 | /* 211454 */ GIR_RootConstrainSelectedInstOperands, |
| 74881 | /* 211455 */ // GIR_Coverage, 23326, |
| 74882 | /* 211455 */ GIR_EraseRootFromParent_Done, |
| 74883 | /* 211456 */ // Label 4895: @211456 |
| 74884 | /* 211456 */ GIM_Try, /*On fail goto*//*Label 4896*/ GIMT_Encode4(211517), // Rule ID 928 // |
| 74885 | /* 211461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74886 | /* 211464 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74887 | /* 211468 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74888 | /* 211472 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74889 | /* 211476 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 74890 | /* 211483 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74891 | /* 211487 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74892 | /* 211489 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74893 | /* 211496 */ // (strict_fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (ADD_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74894 | /* 211496 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI16m80), |
| 74895 | /* 211499 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74896 | /* 211501 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74897 | /* 211503 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74898 | /* 211507 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74899 | /* 211510 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74900 | /* 211515 */ GIR_RootConstrainSelectedInstOperands, |
| 74901 | /* 211516 */ // GIR_Coverage, 928, |
| 74902 | /* 211516 */ GIR_EraseRootFromParent_Done, |
| 74903 | /* 211517 */ // Label 4896: @211517 |
| 74904 | /* 211517 */ GIM_Try, /*On fail goto*//*Label 4897*/ GIMT_Encode4(211578), // Rule ID 930 // |
| 74905 | /* 211522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74906 | /* 211525 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74907 | /* 211529 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74908 | /* 211533 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 74909 | /* 211537 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74910 | /* 211544 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74911 | /* 211548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74912 | /* 211550 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74913 | /* 211557 */ // (strict_fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (ADD_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 74914 | /* 211557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_FpI32m80), |
| 74915 | /* 211560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74916 | /* 211562 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74917 | /* 211564 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74918 | /* 211568 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74919 | /* 211571 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74920 | /* 211576 */ GIR_RootConstrainSelectedInstOperands, |
| 74921 | /* 211577 */ // GIR_Coverage, 930, |
| 74922 | /* 211577 */ GIR_EraseRootFromParent_Done, |
| 74923 | /* 211578 */ // Label 4897: @211578 |
| 74924 | /* 211578 */ GIM_Try, /*On fail goto*//*Label 4898*/ GIMT_Encode4(211646), // Rule ID 916 // |
| 74925 | /* 211583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74926 | /* 211586 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74927 | /* 211590 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74928 | /* 211594 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74929 | /* 211598 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74930 | /* 211601 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74931 | /* 211605 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 74932 | /* 211612 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74933 | /* 211616 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74934 | /* 211618 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74935 | /* 211625 */ // (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) |
| 74936 | /* 211625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m32), |
| 74937 | /* 211628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74938 | /* 211630 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74939 | /* 211632 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74940 | /* 211636 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74941 | /* 211639 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74942 | /* 211644 */ GIR_RootConstrainSelectedInstOperands, |
| 74943 | /* 211645 */ // GIR_Coverage, 916, |
| 74944 | /* 211645 */ GIR_EraseRootFromParent_Done, |
| 74945 | /* 211646 */ // Label 4898: @211646 |
| 74946 | /* 211646 */ GIM_Try, /*On fail goto*//*Label 4899*/ GIMT_Encode4(211714), // Rule ID 918 // |
| 74947 | /* 211651 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74948 | /* 211654 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74949 | /* 211658 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 74950 | /* 211662 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74951 | /* 211666 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74952 | /* 211669 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74953 | /* 211673 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 74954 | /* 211680 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74955 | /* 211684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74956 | /* 211686 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74957 | /* 211693 */ // (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) |
| 74958 | /* 211693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80m64), |
| 74959 | /* 211696 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 74960 | /* 211698 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 74961 | /* 211700 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 74962 | /* 211704 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 74963 | /* 211707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 74964 | /* 211712 */ GIR_RootConstrainSelectedInstOperands, |
| 74965 | /* 211713 */ // GIR_Coverage, 918, |
| 74966 | /* 211713 */ GIR_EraseRootFromParent_Done, |
| 74967 | /* 211714 */ // Label 4899: @211714 |
| 74968 | /* 211714 */ GIM_Try, /*On fail goto*//*Label 4900*/ GIMT_Encode4(211747), // Rule ID 890 // |
| 74969 | /* 211719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 74970 | /* 211722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74971 | /* 211726 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 74972 | /* 211730 */ // (strict_fadd:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (ADD_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 74973 | /* 211730 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADD_Fp80), |
| 74974 | /* 211735 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 74975 | /* 211741 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 74976 | /* 211745 */ GIR_RootConstrainSelectedInstOperands, |
| 74977 | /* 211746 */ // GIR_Coverage, 890, |
| 74978 | /* 211746 */ GIR_Done, |
| 74979 | /* 211747 */ // Label 4900: @211747 |
| 74980 | /* 211747 */ GIM_Reject, |
| 74981 | /* 211748 */ // Label 4891: @211748 |
| 74982 | /* 211748 */ GIM_Reject, |
| 74983 | /* 211749 */ // Label 4841: @211749 |
| 74984 | /* 211749 */ GIM_Try, /*On fail goto*//*Label 4901*/ GIMT_Encode4(212102), |
| 74985 | /* 211754 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 74986 | /* 211757 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 74987 | /* 211760 */ GIM_Try, /*On fail goto*//*Label 4902*/ GIMT_Encode4(211822), // Rule ID 23453 // |
| 74988 | /* 211765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 74989 | /* 211768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74990 | /* 211772 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 74991 | /* 211776 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 74992 | /* 211780 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 74993 | /* 211783 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 74994 | /* 211787 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 74995 | /* 211791 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 74996 | /* 211795 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 74997 | /* 211797 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 74998 | /* 211804 */ // (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) |
| 74999 | /* 211804 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDrm), |
| 75000 | /* 211807 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75001 | /* 211809 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75002 | /* 211811 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75003 | /* 211815 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75004 | /* 211820 */ GIR_RootConstrainSelectedInstOperands, |
| 75005 | /* 211821 */ // GIR_Coverage, 23453, |
| 75006 | /* 211821 */ GIR_EraseRootFromParent_Done, |
| 75007 | /* 211822 */ // Label 4902: @211822 |
| 75008 | /* 211822 */ GIM_Try, /*On fail goto*//*Label 4903*/ GIMT_Encode4(211884), // Rule ID 24377 // |
| 75009 | /* 211827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75010 | /* 211830 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75011 | /* 211834 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75012 | /* 211838 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75013 | /* 211842 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75014 | /* 211845 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75015 | /* 211849 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75016 | /* 211853 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75017 | /* 211857 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75018 | /* 211859 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75019 | /* 211866 */ // (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) |
| 75020 | /* 211866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rm), |
| 75021 | /* 211869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75022 | /* 211871 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75023 | /* 211873 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75024 | /* 211877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75025 | /* 211882 */ GIR_RootConstrainSelectedInstOperands, |
| 75026 | /* 211883 */ // GIR_Coverage, 24377, |
| 75027 | /* 211883 */ GIR_EraseRootFromParent_Done, |
| 75028 | /* 211884 */ // Label 4903: @211884 |
| 75029 | /* 211884 */ GIM_Try, /*On fail goto*//*Label 4904*/ GIMT_Encode4(211946), // Rule ID 2140 // |
| 75030 | /* 211889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75031 | /* 211892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75032 | /* 211896 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75033 | /* 211900 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75034 | /* 211904 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75035 | /* 211908 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75036 | /* 211911 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75037 | /* 211915 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75038 | /* 211919 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75039 | /* 211921 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75040 | /* 211928 */ // (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) |
| 75041 | /* 211928 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDrm), |
| 75042 | /* 211931 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75043 | /* 211933 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75044 | /* 211935 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75045 | /* 211939 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75046 | /* 211944 */ GIR_RootConstrainSelectedInstOperands, |
| 75047 | /* 211945 */ // GIR_Coverage, 2140, |
| 75048 | /* 211945 */ GIR_EraseRootFromParent_Done, |
| 75049 | /* 211946 */ // Label 4904: @211946 |
| 75050 | /* 211946 */ GIM_Try, /*On fail goto*//*Label 4905*/ GIMT_Encode4(212008), // Rule ID 6312 // |
| 75051 | /* 211951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75052 | /* 211954 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75053 | /* 211958 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75054 | /* 211962 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75055 | /* 211966 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75056 | /* 211970 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75057 | /* 211973 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75058 | /* 211977 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75059 | /* 211981 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75060 | /* 211983 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75061 | /* 211990 */ // (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) |
| 75062 | /* 211990 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rm), |
| 75063 | /* 211993 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75064 | /* 211995 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75065 | /* 211997 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75066 | /* 212001 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75067 | /* 212006 */ GIR_RootConstrainSelectedInstOperands, |
| 75068 | /* 212007 */ // GIR_Coverage, 6312, |
| 75069 | /* 212007 */ GIR_EraseRootFromParent_Done, |
| 75070 | /* 212008 */ // Label 4905: @212008 |
| 75071 | /* 212008 */ GIM_Try, /*On fail goto*//*Label 4906*/ GIMT_Encode4(212039), // Rule ID 2138 // |
| 75072 | /* 212013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75073 | /* 212016 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75074 | /* 212020 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75075 | /* 212024 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75076 | /* 212028 */ // (strict_fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VADDPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 75077 | /* 212028 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDrr), |
| 75078 | /* 212033 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75079 | /* 212037 */ GIR_RootConstrainSelectedInstOperands, |
| 75080 | /* 212038 */ // GIR_Coverage, 2138, |
| 75081 | /* 212038 */ GIR_Done, |
| 75082 | /* 212039 */ // Label 4906: @212039 |
| 75083 | /* 212039 */ GIM_Try, /*On fail goto*//*Label 4907*/ GIMT_Encode4(212070), // Rule ID 2154 // |
| 75084 | /* 212044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 75085 | /* 212047 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75086 | /* 212051 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75087 | /* 212055 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75088 | /* 212059 */ // (strict_fadd:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (ADDPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 75089 | /* 212059 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDPDrr), |
| 75090 | /* 212064 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75091 | /* 212068 */ GIR_RootConstrainSelectedInstOperands, |
| 75092 | /* 212069 */ // GIR_Coverage, 2154, |
| 75093 | /* 212069 */ GIR_Done, |
| 75094 | /* 212070 */ // Label 4907: @212070 |
| 75095 | /* 212070 */ GIM_Try, /*On fail goto*//*Label 4908*/ GIMT_Encode4(212101), // Rule ID 6308 // |
| 75096 | /* 212075 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75097 | /* 212078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75098 | /* 212082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75099 | /* 212086 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75100 | /* 212090 */ // (strict_fadd:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VADDPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 75101 | /* 212090 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZ128rr), |
| 75102 | /* 212095 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75103 | /* 212099 */ GIR_RootConstrainSelectedInstOperands, |
| 75104 | /* 212100 */ // GIR_Coverage, 6308, |
| 75105 | /* 212100 */ GIR_Done, |
| 75106 | /* 212101 */ // Label 4908: @212101 |
| 75107 | /* 212101 */ GIM_Reject, |
| 75108 | /* 212102 */ // Label 4901: @212102 |
| 75109 | /* 212102 */ GIM_Reject, |
| 75110 | /* 212103 */ // Label 4842: @212103 |
| 75111 | /* 212103 */ GIM_Try, /*On fail goto*//*Label 4909*/ GIMT_Encode4(212456), |
| 75112 | /* 212108 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 75113 | /* 212111 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 75114 | /* 212114 */ GIM_Try, /*On fail goto*//*Label 4910*/ GIMT_Encode4(212176), // Rule ID 23451 // |
| 75115 | /* 212119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75116 | /* 212122 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75117 | /* 212126 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75118 | /* 212130 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75119 | /* 212134 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75120 | /* 212137 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75121 | /* 212141 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75122 | /* 212145 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75123 | /* 212149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75124 | /* 212151 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75125 | /* 212158 */ // (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) |
| 75126 | /* 212158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSrm), |
| 75127 | /* 212161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75128 | /* 212163 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75129 | /* 212165 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75130 | /* 212169 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75131 | /* 212174 */ GIR_RootConstrainSelectedInstOperands, |
| 75132 | /* 212175 */ // GIR_Coverage, 23451, |
| 75133 | /* 212175 */ GIR_EraseRootFromParent_Done, |
| 75134 | /* 212176 */ // Label 4910: @212176 |
| 75135 | /* 212176 */ GIM_Try, /*On fail goto*//*Label 4911*/ GIMT_Encode4(212238), // Rule ID 24361 // |
| 75136 | /* 212181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75137 | /* 212184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75138 | /* 212188 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75139 | /* 212192 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75140 | /* 212196 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75141 | /* 212199 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75142 | /* 212203 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75143 | /* 212207 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75144 | /* 212211 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75145 | /* 212213 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75146 | /* 212220 */ // (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) |
| 75147 | /* 212220 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rm), |
| 75148 | /* 212223 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75149 | /* 212225 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75150 | /* 212227 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75151 | /* 212231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75152 | /* 212236 */ GIR_RootConstrainSelectedInstOperands, |
| 75153 | /* 212237 */ // GIR_Coverage, 24361, |
| 75154 | /* 212237 */ GIR_EraseRootFromParent_Done, |
| 75155 | /* 212238 */ // Label 4911: @212238 |
| 75156 | /* 212238 */ GIM_Try, /*On fail goto*//*Label 4912*/ GIMT_Encode4(212300), // Rule ID 2136 // |
| 75157 | /* 212243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75158 | /* 212246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75159 | /* 212250 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75160 | /* 212254 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75161 | /* 212258 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75162 | /* 212262 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75163 | /* 212265 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75164 | /* 212269 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75165 | /* 212273 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75166 | /* 212275 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75167 | /* 212282 */ // (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) |
| 75168 | /* 212282 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSrm), |
| 75169 | /* 212285 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75170 | /* 212287 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75171 | /* 212289 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75172 | /* 212293 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75173 | /* 212298 */ GIR_RootConstrainSelectedInstOperands, |
| 75174 | /* 212299 */ // GIR_Coverage, 2136, |
| 75175 | /* 212299 */ GIR_EraseRootFromParent_Done, |
| 75176 | /* 212300 */ // Label 4912: @212300 |
| 75177 | /* 212300 */ GIM_Try, /*On fail goto*//*Label 4913*/ GIMT_Encode4(212362), // Rule ID 6288 // |
| 75178 | /* 212305 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75179 | /* 212308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75180 | /* 212312 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75181 | /* 212316 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75182 | /* 212320 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75183 | /* 212324 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75184 | /* 212327 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75185 | /* 212331 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75186 | /* 212335 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75187 | /* 212337 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75188 | /* 212344 */ // (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) |
| 75189 | /* 212344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rm), |
| 75190 | /* 212347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75191 | /* 212349 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75192 | /* 212351 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75193 | /* 212355 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75194 | /* 212360 */ GIR_RootConstrainSelectedInstOperands, |
| 75195 | /* 212361 */ // GIR_Coverage, 6288, |
| 75196 | /* 212361 */ GIR_EraseRootFromParent_Done, |
| 75197 | /* 212362 */ // Label 4913: @212362 |
| 75198 | /* 212362 */ GIM_Try, /*On fail goto*//*Label 4914*/ GIMT_Encode4(212393), // Rule ID 2134 // |
| 75199 | /* 212367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75200 | /* 212370 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75201 | /* 212374 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75202 | /* 212378 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75203 | /* 212382 */ // (strict_fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VADDPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 75204 | /* 212382 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSrr), |
| 75205 | /* 212387 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75206 | /* 212391 */ GIR_RootConstrainSelectedInstOperands, |
| 75207 | /* 212392 */ // GIR_Coverage, 2134, |
| 75208 | /* 212392 */ GIR_Done, |
| 75209 | /* 212393 */ // Label 4914: @212393 |
| 75210 | /* 212393 */ GIM_Try, /*On fail goto*//*Label 4915*/ GIMT_Encode4(212424), // Rule ID 2150 // |
| 75211 | /* 212398 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 75212 | /* 212401 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75213 | /* 212405 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75214 | /* 212409 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 75215 | /* 212413 */ // (strict_fadd:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (ADDPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 75216 | /* 212413 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::ADDPSrr), |
| 75217 | /* 212418 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75218 | /* 212422 */ GIR_RootConstrainSelectedInstOperands, |
| 75219 | /* 212423 */ // GIR_Coverage, 2150, |
| 75220 | /* 212423 */ GIR_Done, |
| 75221 | /* 212424 */ // Label 4915: @212424 |
| 75222 | /* 212424 */ GIM_Try, /*On fail goto*//*Label 4916*/ GIMT_Encode4(212455), // Rule ID 6284 // |
| 75223 | /* 212429 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75224 | /* 212432 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75225 | /* 212436 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75226 | /* 212440 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75227 | /* 212444 */ // (strict_fadd:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VADDPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 75228 | /* 212444 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZ128rr), |
| 75229 | /* 212449 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75230 | /* 212453 */ GIR_RootConstrainSelectedInstOperands, |
| 75231 | /* 212454 */ // GIR_Coverage, 6284, |
| 75232 | /* 212454 */ GIR_Done, |
| 75233 | /* 212455 */ // Label 4916: @212455 |
| 75234 | /* 212455 */ GIM_Reject, |
| 75235 | /* 212456 */ // Label 4909: @212456 |
| 75236 | /* 212456 */ GIM_Reject, |
| 75237 | /* 212457 */ // Label 4843: @212457 |
| 75238 | /* 212457 */ GIM_Try, /*On fail goto*//*Label 4917*/ GIMT_Encode4(212779), |
| 75239 | /* 212462 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 75240 | /* 212465 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 75241 | /* 212468 */ GIM_Try, /*On fail goto*//*Label 4918*/ GIMT_Encode4(212530), // Rule ID 23457 // |
| 75242 | /* 212473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75243 | /* 212476 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75244 | /* 212480 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75245 | /* 212484 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75246 | /* 212488 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75247 | /* 212491 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75248 | /* 212495 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75249 | /* 212499 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75250 | /* 212503 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75251 | /* 212505 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75252 | /* 212512 */ // (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) |
| 75253 | /* 212512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDYrm), |
| 75254 | /* 212515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75255 | /* 212517 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75256 | /* 212519 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75257 | /* 212523 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75258 | /* 212528 */ GIR_RootConstrainSelectedInstOperands, |
| 75259 | /* 212529 */ // GIR_Coverage, 23457, |
| 75260 | /* 212529 */ GIR_EraseRootFromParent_Done, |
| 75261 | /* 212530 */ // Label 4918: @212530 |
| 75262 | /* 212530 */ GIM_Try, /*On fail goto*//*Label 4919*/ GIMT_Encode4(212592), // Rule ID 24385 // |
| 75263 | /* 212535 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75264 | /* 212538 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75265 | /* 212542 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75266 | /* 212546 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75267 | /* 212550 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75268 | /* 212553 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75269 | /* 212557 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75270 | /* 212561 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75271 | /* 212565 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75272 | /* 212567 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75273 | /* 212574 */ // (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) |
| 75274 | /* 212574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rm), |
| 75275 | /* 212577 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75276 | /* 212579 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75277 | /* 212581 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75278 | /* 212585 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75279 | /* 212590 */ GIR_RootConstrainSelectedInstOperands, |
| 75280 | /* 212591 */ // GIR_Coverage, 24385, |
| 75281 | /* 212591 */ GIR_EraseRootFromParent_Done, |
| 75282 | /* 212592 */ // Label 4919: @212592 |
| 75283 | /* 212592 */ GIM_Try, /*On fail goto*//*Label 4920*/ GIMT_Encode4(212654), // Rule ID 2148 // |
| 75284 | /* 212597 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75285 | /* 212600 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75286 | /* 212604 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75287 | /* 212608 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75288 | /* 212612 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75289 | /* 212616 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75290 | /* 212619 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75291 | /* 212623 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75292 | /* 212627 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75293 | /* 212629 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75294 | /* 212636 */ // (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) |
| 75295 | /* 212636 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDYrm), |
| 75296 | /* 212639 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75297 | /* 212641 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75298 | /* 212643 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75299 | /* 212647 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75300 | /* 212652 */ GIR_RootConstrainSelectedInstOperands, |
| 75301 | /* 212653 */ // GIR_Coverage, 2148, |
| 75302 | /* 212653 */ GIR_EraseRootFromParent_Done, |
| 75303 | /* 212654 */ // Label 4920: @212654 |
| 75304 | /* 212654 */ GIM_Try, /*On fail goto*//*Label 4921*/ GIMT_Encode4(212716), // Rule ID 6324 // |
| 75305 | /* 212659 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75306 | /* 212662 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75307 | /* 212666 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75308 | /* 212670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75309 | /* 212674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75310 | /* 212678 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75311 | /* 212681 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75312 | /* 212685 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75313 | /* 212689 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75314 | /* 212691 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75315 | /* 212698 */ // (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) |
| 75316 | /* 212698 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rm), |
| 75317 | /* 212701 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75318 | /* 212703 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75319 | /* 212705 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75320 | /* 212709 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75321 | /* 212714 */ GIR_RootConstrainSelectedInstOperands, |
| 75322 | /* 212715 */ // GIR_Coverage, 6324, |
| 75323 | /* 212715 */ GIR_EraseRootFromParent_Done, |
| 75324 | /* 212716 */ // Label 4921: @212716 |
| 75325 | /* 212716 */ GIM_Try, /*On fail goto*//*Label 4922*/ GIMT_Encode4(212747), // Rule ID 2146 // |
| 75326 | /* 212721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75327 | /* 212724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75328 | /* 212728 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75329 | /* 212732 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75330 | /* 212736 */ // (strict_fadd:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VADDPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 75331 | /* 212736 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDYrr), |
| 75332 | /* 212741 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75333 | /* 212745 */ GIR_RootConstrainSelectedInstOperands, |
| 75334 | /* 212746 */ // GIR_Coverage, 2146, |
| 75335 | /* 212746 */ GIR_Done, |
| 75336 | /* 212747 */ // Label 4922: @212747 |
| 75337 | /* 212747 */ GIM_Try, /*On fail goto*//*Label 4923*/ GIMT_Encode4(212778), // Rule ID 6320 // |
| 75338 | /* 212752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75339 | /* 212755 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75340 | /* 212759 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75341 | /* 212763 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75342 | /* 212767 */ // (strict_fadd:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VADDPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 75343 | /* 212767 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZ256rr), |
| 75344 | /* 212772 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75345 | /* 212776 */ GIR_RootConstrainSelectedInstOperands, |
| 75346 | /* 212777 */ // GIR_Coverage, 6320, |
| 75347 | /* 212777 */ GIR_Done, |
| 75348 | /* 212778 */ // Label 4923: @212778 |
| 75349 | /* 212778 */ GIM_Reject, |
| 75350 | /* 212779 */ // Label 4917: @212779 |
| 75351 | /* 212779 */ GIM_Reject, |
| 75352 | /* 212780 */ // Label 4844: @212780 |
| 75353 | /* 212780 */ GIM_Try, /*On fail goto*//*Label 4924*/ GIMT_Encode4(212939), |
| 75354 | /* 212785 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 75355 | /* 212788 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 75356 | /* 212791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75357 | /* 212795 */ GIM_Try, /*On fail goto*//*Label 4925*/ GIMT_Encode4(212853), // Rule ID 24401 // |
| 75358 | /* 212800 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75359 | /* 212803 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75360 | /* 212807 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75361 | /* 212811 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75362 | /* 212814 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75363 | /* 212818 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75364 | /* 212822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75365 | /* 212826 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75366 | /* 212828 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75367 | /* 212835 */ // (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) |
| 75368 | /* 212835 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rm), |
| 75369 | /* 212838 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75370 | /* 212840 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75371 | /* 212842 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75372 | /* 212846 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75373 | /* 212851 */ GIR_RootConstrainSelectedInstOperands, |
| 75374 | /* 212852 */ // GIR_Coverage, 24401, |
| 75375 | /* 212852 */ GIR_EraseRootFromParent_Done, |
| 75376 | /* 212853 */ // Label 4925: @212853 |
| 75377 | /* 212853 */ GIM_Try, /*On fail goto*//*Label 4926*/ GIMT_Encode4(212911), // Rule ID 6348 // |
| 75378 | /* 212858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75379 | /* 212861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75380 | /* 212865 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75381 | /* 212869 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75382 | /* 212873 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75383 | /* 212876 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75384 | /* 212880 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75385 | /* 212884 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75386 | /* 212886 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75387 | /* 212893 */ // (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) |
| 75388 | /* 212893 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rm), |
| 75389 | /* 212896 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75390 | /* 212898 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75391 | /* 212900 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75392 | /* 212904 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75393 | /* 212909 */ GIR_RootConstrainSelectedInstOperands, |
| 75394 | /* 212910 */ // GIR_Coverage, 6348, |
| 75395 | /* 212910 */ GIR_EraseRootFromParent_Done, |
| 75396 | /* 212911 */ // Label 4926: @212911 |
| 75397 | /* 212911 */ GIM_Try, /*On fail goto*//*Label 4927*/ GIMT_Encode4(212938), // Rule ID 6344 // |
| 75398 | /* 212916 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75399 | /* 212919 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75400 | /* 212923 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 75401 | /* 212927 */ // (strict_fadd:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VADDPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 75402 | /* 212927 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZ128rr), |
| 75403 | /* 212932 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75404 | /* 212936 */ GIR_RootConstrainSelectedInstOperands, |
| 75405 | /* 212937 */ // GIR_Coverage, 6344, |
| 75406 | /* 212937 */ GIR_Done, |
| 75407 | /* 212938 */ // Label 4927: @212938 |
| 75408 | /* 212938 */ GIM_Reject, |
| 75409 | /* 212939 */ // Label 4924: @212939 |
| 75410 | /* 212939 */ GIM_Reject, |
| 75411 | /* 212940 */ // Label 4845: @212940 |
| 75412 | /* 212940 */ GIM_Try, /*On fail goto*//*Label 4928*/ GIMT_Encode4(213262), |
| 75413 | /* 212945 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 75414 | /* 212948 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 75415 | /* 212951 */ GIM_Try, /*On fail goto*//*Label 4929*/ GIMT_Encode4(213013), // Rule ID 23455 // |
| 75416 | /* 212956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75417 | /* 212959 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75418 | /* 212963 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75419 | /* 212967 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75420 | /* 212971 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75421 | /* 212974 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75422 | /* 212978 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75423 | /* 212982 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75424 | /* 212986 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75425 | /* 212988 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75426 | /* 212995 */ // (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) |
| 75427 | /* 212995 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSYrm), |
| 75428 | /* 212998 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75429 | /* 213000 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75430 | /* 213002 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75431 | /* 213006 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75432 | /* 213011 */ GIR_RootConstrainSelectedInstOperands, |
| 75433 | /* 213012 */ // GIR_Coverage, 23455, |
| 75434 | /* 213012 */ GIR_EraseRootFromParent_Done, |
| 75435 | /* 213013 */ // Label 4929: @213013 |
| 75436 | /* 213013 */ GIM_Try, /*On fail goto*//*Label 4930*/ GIMT_Encode4(213075), // Rule ID 24369 // |
| 75437 | /* 213018 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75438 | /* 213021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75439 | /* 213025 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75440 | /* 213029 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75441 | /* 213033 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75442 | /* 213036 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75443 | /* 213040 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75444 | /* 213044 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75445 | /* 213048 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75446 | /* 213050 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75447 | /* 213057 */ // (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) |
| 75448 | /* 213057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rm), |
| 75449 | /* 213060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75450 | /* 213062 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75451 | /* 213064 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75452 | /* 213068 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75453 | /* 213073 */ GIR_RootConstrainSelectedInstOperands, |
| 75454 | /* 213074 */ // GIR_Coverage, 24369, |
| 75455 | /* 213074 */ GIR_EraseRootFromParent_Done, |
| 75456 | /* 213075 */ // Label 4930: @213075 |
| 75457 | /* 213075 */ GIM_Try, /*On fail goto*//*Label 4931*/ GIMT_Encode4(213137), // Rule ID 2144 // |
| 75458 | /* 213080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75459 | /* 213083 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75460 | /* 213087 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75461 | /* 213091 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75462 | /* 213095 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75463 | /* 213099 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75464 | /* 213102 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75465 | /* 213106 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75466 | /* 213110 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75467 | /* 213112 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75468 | /* 213119 */ // (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) |
| 75469 | /* 213119 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSYrm), |
| 75470 | /* 213122 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75471 | /* 213124 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75472 | /* 213126 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75473 | /* 213130 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75474 | /* 213135 */ GIR_RootConstrainSelectedInstOperands, |
| 75475 | /* 213136 */ // GIR_Coverage, 2144, |
| 75476 | /* 213136 */ GIR_EraseRootFromParent_Done, |
| 75477 | /* 213137 */ // Label 4931: @213137 |
| 75478 | /* 213137 */ GIM_Try, /*On fail goto*//*Label 4932*/ GIMT_Encode4(213199), // Rule ID 6300 // |
| 75479 | /* 213142 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75480 | /* 213145 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75481 | /* 213149 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75482 | /* 213153 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75483 | /* 213157 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75484 | /* 213161 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75485 | /* 213164 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75486 | /* 213168 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75487 | /* 213172 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75488 | /* 213174 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75489 | /* 213181 */ // (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) |
| 75490 | /* 213181 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rm), |
| 75491 | /* 213184 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75492 | /* 213186 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75493 | /* 213188 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75494 | /* 213192 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75495 | /* 213197 */ GIR_RootConstrainSelectedInstOperands, |
| 75496 | /* 213198 */ // GIR_Coverage, 6300, |
| 75497 | /* 213198 */ GIR_EraseRootFromParent_Done, |
| 75498 | /* 213199 */ // Label 4932: @213199 |
| 75499 | /* 213199 */ GIM_Try, /*On fail goto*//*Label 4933*/ GIMT_Encode4(213230), // Rule ID 2142 // |
| 75500 | /* 213204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 75501 | /* 213207 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75502 | /* 213211 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75503 | /* 213215 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 75504 | /* 213219 */ // (strict_fadd:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VADDPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 75505 | /* 213219 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSYrr), |
| 75506 | /* 213224 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75507 | /* 213228 */ GIR_RootConstrainSelectedInstOperands, |
| 75508 | /* 213229 */ // GIR_Coverage, 2142, |
| 75509 | /* 213229 */ GIR_Done, |
| 75510 | /* 213230 */ // Label 4933: @213230 |
| 75511 | /* 213230 */ GIM_Try, /*On fail goto*//*Label 4934*/ GIMT_Encode4(213261), // Rule ID 6296 // |
| 75512 | /* 213235 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 75513 | /* 213238 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75514 | /* 213242 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75515 | /* 213246 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75516 | /* 213250 */ // (strict_fadd:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VADDPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 75517 | /* 213250 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZ256rr), |
| 75518 | /* 213255 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75519 | /* 213259 */ GIR_RootConstrainSelectedInstOperands, |
| 75520 | /* 213260 */ // GIR_Coverage, 6296, |
| 75521 | /* 213260 */ GIR_Done, |
| 75522 | /* 213261 */ // Label 4934: @213261 |
| 75523 | /* 213261 */ GIM_Reject, |
| 75524 | /* 213262 */ // Label 4928: @213262 |
| 75525 | /* 213262 */ GIM_Reject, |
| 75526 | /* 213263 */ // Label 4846: @213263 |
| 75527 | /* 213263 */ GIM_Try, /*On fail goto*//*Label 4935*/ GIMT_Encode4(213422), |
| 75528 | /* 213268 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 75529 | /* 213271 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 75530 | /* 213274 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75531 | /* 213278 */ GIM_Try, /*On fail goto*//*Label 4936*/ GIMT_Encode4(213336), // Rule ID 24353 // |
| 75532 | /* 213283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75533 | /* 213286 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75534 | /* 213290 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75535 | /* 213294 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75536 | /* 213297 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75537 | /* 213301 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75538 | /* 213305 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75539 | /* 213309 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75540 | /* 213311 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75541 | /* 213318 */ // (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) |
| 75542 | /* 213318 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZrm), |
| 75543 | /* 213321 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75544 | /* 213323 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75545 | /* 213325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75546 | /* 213329 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75547 | /* 213334 */ GIR_RootConstrainSelectedInstOperands, |
| 75548 | /* 213335 */ // GIR_Coverage, 24353, |
| 75549 | /* 213335 */ GIR_EraseRootFromParent_Done, |
| 75550 | /* 213336 */ // Label 4936: @213336 |
| 75551 | /* 213336 */ GIM_Try, /*On fail goto*//*Label 4937*/ GIMT_Encode4(213394), // Rule ID 6276 // |
| 75552 | /* 213341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75553 | /* 213344 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75554 | /* 213348 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75555 | /* 213352 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75556 | /* 213356 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75557 | /* 213359 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75558 | /* 213363 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75559 | /* 213367 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75560 | /* 213369 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75561 | /* 213376 */ // (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) |
| 75562 | /* 213376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPDZrm), |
| 75563 | /* 213379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75564 | /* 213381 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75565 | /* 213383 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75566 | /* 213387 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75567 | /* 213392 */ GIR_RootConstrainSelectedInstOperands, |
| 75568 | /* 213393 */ // GIR_Coverage, 6276, |
| 75569 | /* 213393 */ GIR_EraseRootFromParent_Done, |
| 75570 | /* 213394 */ // Label 4937: @213394 |
| 75571 | /* 213394 */ GIM_Try, /*On fail goto*//*Label 4938*/ GIMT_Encode4(213421), // Rule ID 6272 // |
| 75572 | /* 213399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75573 | /* 213402 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75574 | /* 213406 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75575 | /* 213410 */ // (strict_fadd:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VADDPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 75576 | /* 213410 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPDZrr), |
| 75577 | /* 213415 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75578 | /* 213419 */ GIR_RootConstrainSelectedInstOperands, |
| 75579 | /* 213420 */ // GIR_Coverage, 6272, |
| 75580 | /* 213420 */ GIR_Done, |
| 75581 | /* 213421 */ // Label 4938: @213421 |
| 75582 | /* 213421 */ GIM_Reject, |
| 75583 | /* 213422 */ // Label 4935: @213422 |
| 75584 | /* 213422 */ GIM_Reject, |
| 75585 | /* 213423 */ // Label 4847: @213423 |
| 75586 | /* 213423 */ GIM_Try, /*On fail goto*//*Label 4939*/ GIMT_Encode4(213582), |
| 75587 | /* 213428 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 75588 | /* 213431 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 75589 | /* 213434 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75590 | /* 213438 */ GIM_Try, /*On fail goto*//*Label 4940*/ GIMT_Encode4(213496), // Rule ID 24409 // |
| 75591 | /* 213443 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75592 | /* 213446 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75593 | /* 213450 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75594 | /* 213454 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75595 | /* 213457 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75596 | /* 213461 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75597 | /* 213465 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75598 | /* 213469 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75599 | /* 213471 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75600 | /* 213478 */ // (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) |
| 75601 | /* 213478 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rm), |
| 75602 | /* 213481 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75603 | /* 213483 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75604 | /* 213485 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75605 | /* 213489 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75606 | /* 213494 */ GIR_RootConstrainSelectedInstOperands, |
| 75607 | /* 213495 */ // GIR_Coverage, 24409, |
| 75608 | /* 213495 */ GIR_EraseRootFromParent_Done, |
| 75609 | /* 213496 */ // Label 4940: @213496 |
| 75610 | /* 213496 */ GIM_Try, /*On fail goto*//*Label 4941*/ GIMT_Encode4(213554), // Rule ID 6360 // |
| 75611 | /* 213501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75612 | /* 213504 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75613 | /* 213508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75614 | /* 213512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75615 | /* 213516 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75616 | /* 213519 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75617 | /* 213523 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75618 | /* 213527 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75619 | /* 213529 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75620 | /* 213536 */ // (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) |
| 75621 | /* 213536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rm), |
| 75622 | /* 213539 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75623 | /* 213541 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75624 | /* 213543 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75625 | /* 213547 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75626 | /* 213552 */ GIR_RootConstrainSelectedInstOperands, |
| 75627 | /* 213553 */ // GIR_Coverage, 6360, |
| 75628 | /* 213553 */ GIR_EraseRootFromParent_Done, |
| 75629 | /* 213554 */ // Label 4941: @213554 |
| 75630 | /* 213554 */ GIM_Try, /*On fail goto*//*Label 4942*/ GIMT_Encode4(213581), // Rule ID 6356 // |
| 75631 | /* 213559 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 75632 | /* 213562 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75633 | /* 213566 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 75634 | /* 213570 */ // (strict_fadd:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VADDPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 75635 | /* 213570 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZ256rr), |
| 75636 | /* 213575 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75637 | /* 213579 */ GIR_RootConstrainSelectedInstOperands, |
| 75638 | /* 213580 */ // GIR_Coverage, 6356, |
| 75639 | /* 213580 */ GIR_Done, |
| 75640 | /* 213581 */ // Label 4942: @213581 |
| 75641 | /* 213581 */ GIM_Reject, |
| 75642 | /* 213582 */ // Label 4939: @213582 |
| 75643 | /* 213582 */ GIM_Reject, |
| 75644 | /* 213583 */ // Label 4848: @213583 |
| 75645 | /* 213583 */ GIM_Try, /*On fail goto*//*Label 4943*/ GIMT_Encode4(213742), |
| 75646 | /* 213588 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 75647 | /* 213591 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 75648 | /* 213594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75649 | /* 213598 */ GIM_Try, /*On fail goto*//*Label 4944*/ GIMT_Encode4(213656), // Rule ID 24345 // |
| 75650 | /* 213603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75651 | /* 213606 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75652 | /* 213610 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75653 | /* 213614 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75654 | /* 213617 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75655 | /* 213621 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75656 | /* 213625 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75657 | /* 213629 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75658 | /* 213631 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75659 | /* 213638 */ // (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) |
| 75660 | /* 213638 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZrm), |
| 75661 | /* 213641 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75662 | /* 213643 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75663 | /* 213645 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75664 | /* 213649 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75665 | /* 213654 */ GIR_RootConstrainSelectedInstOperands, |
| 75666 | /* 213655 */ // GIR_Coverage, 24345, |
| 75667 | /* 213655 */ GIR_EraseRootFromParent_Done, |
| 75668 | /* 213656 */ // Label 4944: @213656 |
| 75669 | /* 213656 */ GIM_Try, /*On fail goto*//*Label 4945*/ GIMT_Encode4(213714), // Rule ID 6264 // |
| 75670 | /* 213661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75671 | /* 213664 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75672 | /* 213668 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75673 | /* 213672 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75674 | /* 213676 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75675 | /* 213679 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75676 | /* 213683 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75677 | /* 213687 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75678 | /* 213689 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75679 | /* 213696 */ // (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) |
| 75680 | /* 213696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPSZrm), |
| 75681 | /* 213699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75682 | /* 213701 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75683 | /* 213703 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75684 | /* 213707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75685 | /* 213712 */ GIR_RootConstrainSelectedInstOperands, |
| 75686 | /* 213713 */ // GIR_Coverage, 6264, |
| 75687 | /* 213713 */ GIR_EraseRootFromParent_Done, |
| 75688 | /* 213714 */ // Label 4945: @213714 |
| 75689 | /* 213714 */ GIM_Try, /*On fail goto*//*Label 4946*/ GIMT_Encode4(213741), // Rule ID 6260 // |
| 75690 | /* 213719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75691 | /* 213722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75692 | /* 213726 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75693 | /* 213730 */ // (strict_fadd:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VADDPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 75694 | /* 213730 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPSZrr), |
| 75695 | /* 213735 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75696 | /* 213739 */ GIR_RootConstrainSelectedInstOperands, |
| 75697 | /* 213740 */ // GIR_Coverage, 6260, |
| 75698 | /* 213740 */ GIR_Done, |
| 75699 | /* 213741 */ // Label 4946: @213741 |
| 75700 | /* 213741 */ GIM_Reject, |
| 75701 | /* 213742 */ // Label 4943: @213742 |
| 75702 | /* 213742 */ GIM_Reject, |
| 75703 | /* 213743 */ // Label 4849: @213743 |
| 75704 | /* 213743 */ GIM_Try, /*On fail goto*//*Label 4947*/ GIMT_Encode4(213902), |
| 75705 | /* 213748 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 75706 | /* 213751 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 75707 | /* 213754 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75708 | /* 213758 */ GIM_Try, /*On fail goto*//*Label 4948*/ GIMT_Encode4(213816), // Rule ID 24393 // |
| 75709 | /* 213763 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 75710 | /* 213766 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75711 | /* 213770 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75712 | /* 213774 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75713 | /* 213777 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75714 | /* 213781 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75715 | /* 213785 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75716 | /* 213789 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75717 | /* 213791 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75718 | /* 213798 */ // (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) |
| 75719 | /* 213798 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZrm), |
| 75720 | /* 213801 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75721 | /* 213803 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75722 | /* 213805 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75723 | /* 213809 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75724 | /* 213814 */ GIR_RootConstrainSelectedInstOperands, |
| 75725 | /* 213815 */ // GIR_Coverage, 24393, |
| 75726 | /* 213815 */ GIR_EraseRootFromParent_Done, |
| 75727 | /* 213816 */ // Label 4948: @213816 |
| 75728 | /* 213816 */ GIM_Try, /*On fail goto*//*Label 4949*/ GIMT_Encode4(213874), // Rule ID 6336 // |
| 75729 | /* 213821 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 75730 | /* 213824 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75731 | /* 213828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75732 | /* 213832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75733 | /* 213836 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75734 | /* 213839 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75735 | /* 213843 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75736 | /* 213847 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75737 | /* 213849 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75738 | /* 213856 */ // (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) |
| 75739 | /* 213856 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VADDPHZrm), |
| 75740 | /* 213859 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75741 | /* 213861 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75742 | /* 213863 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75743 | /* 213867 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75744 | /* 213872 */ GIR_RootConstrainSelectedInstOperands, |
| 75745 | /* 213873 */ // GIR_Coverage, 6336, |
| 75746 | /* 213873 */ GIR_EraseRootFromParent_Done, |
| 75747 | /* 213874 */ // Label 4949: @213874 |
| 75748 | /* 213874 */ GIM_Try, /*On fail goto*//*Label 4950*/ GIMT_Encode4(213901), // Rule ID 6332 // |
| 75749 | /* 213879 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 75750 | /* 213882 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75751 | /* 213886 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 75752 | /* 213890 */ // (strict_fadd:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VADDPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 75753 | /* 213890 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VADDPHZrr), |
| 75754 | /* 213895 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75755 | /* 213899 */ GIR_RootConstrainSelectedInstOperands, |
| 75756 | /* 213900 */ // GIR_Coverage, 6332, |
| 75757 | /* 213900 */ GIR_Done, |
| 75758 | /* 213901 */ // Label 4950: @213901 |
| 75759 | /* 213901 */ GIM_Reject, |
| 75760 | /* 213902 */ // Label 4947: @213902 |
| 75761 | /* 213902 */ GIM_Reject, |
| 75762 | /* 213903 */ // Label 4850: @213903 |
| 75763 | /* 213903 */ GIM_Reject, |
| 75764 | /* 213904 */ // Label 70: @213904 |
| 75765 | /* 213904 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 4964*/ GIMT_Encode4(217593), |
| 75766 | /* 213915 */ /*GILLT_s16*//*Label 4951*/ GIMT_Encode4(213999), |
| 75767 | /* 213919 */ /*GILLT_s32*//*Label 4952*/ GIMT_Encode4(214097), |
| 75768 | /* 213923 */ /*GILLT_s64*//*Label 4953*/ GIMT_Encode4(214816), |
| 75769 | /* 213927 */ /*GILLT_s80*//*Label 4954*/ GIMT_Encode4(215679), GIMT_Encode4(0), GIMT_Encode4(0), |
| 75770 | /* 213939 */ /*GILLT_v2s64*//*Label 4955*/ GIMT_Encode4(216245), GIMT_Encode4(0), |
| 75771 | /* 213947 */ /*GILLT_v4s32*//*Label 4956*/ GIMT_Encode4(216475), |
| 75772 | /* 213951 */ /*GILLT_v4s64*//*Label 4957*/ GIMT_Encode4(216705), GIMT_Encode4(0), |
| 75773 | /* 213959 */ /*GILLT_v8s16*//*Label 4958*/ GIMT_Encode4(216904), |
| 75774 | /* 213963 */ /*GILLT_v8s32*//*Label 4959*/ GIMT_Encode4(217002), |
| 75775 | /* 213967 */ /*GILLT_v8s64*//*Label 4960*/ GIMT_Encode4(217201), GIMT_Encode4(0), GIMT_Encode4(0), |
| 75776 | /* 213979 */ /*GILLT_v16s16*//*Label 4961*/ GIMT_Encode4(217299), |
| 75777 | /* 213983 */ /*GILLT_v16s32*//*Label 4962*/ GIMT_Encode4(217397), GIMT_Encode4(0), GIMT_Encode4(0), |
| 75778 | /* 213995 */ /*GILLT_v32s16*//*Label 4963*/ GIMT_Encode4(217495), |
| 75779 | /* 213999 */ // Label 4951: @213999 |
| 75780 | /* 213999 */ GIM_Try, /*On fail goto*//*Label 4965*/ GIMT_Encode4(214096), |
| 75781 | /* 214004 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 75782 | /* 214007 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 75783 | /* 214010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 75784 | /* 214014 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 75785 | /* 214018 */ GIM_Try, /*On fail goto*//*Label 4966*/ GIMT_Encode4(214072), // Rule ID 6072 // |
| 75786 | /* 214023 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 75787 | /* 214026 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75788 | /* 214030 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75789 | /* 214034 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75790 | /* 214037 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75791 | /* 214041 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75792 | /* 214045 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75793 | /* 214047 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75794 | /* 214054 */ // (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) |
| 75795 | /* 214054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSHZrm), |
| 75796 | /* 214057 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75797 | /* 214059 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75798 | /* 214061 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75799 | /* 214065 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75800 | /* 214070 */ GIR_RootConstrainSelectedInstOperands, |
| 75801 | /* 214071 */ // GIR_Coverage, 6072, |
| 75802 | /* 214071 */ GIR_EraseRootFromParent_Done, |
| 75803 | /* 214072 */ // Label 4966: @214072 |
| 75804 | /* 214072 */ GIM_Try, /*On fail goto*//*Label 4967*/ GIMT_Encode4(214095), // Rule ID 6070 // |
| 75805 | /* 214077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 75806 | /* 214080 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 75807 | /* 214084 */ // (strict_fsub:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VSUBSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 75808 | /* 214084 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSHZrr), |
| 75809 | /* 214089 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 75810 | /* 214093 */ GIR_RootConstrainSelectedInstOperands, |
| 75811 | /* 214094 */ // GIR_Coverage, 6070, |
| 75812 | /* 214094 */ GIR_Done, |
| 75813 | /* 214095 */ // Label 4967: @214095 |
| 75814 | /* 214095 */ GIM_Reject, |
| 75815 | /* 214096 */ // Label 4965: @214096 |
| 75816 | /* 214096 */ GIM_Reject, |
| 75817 | /* 214097 */ // Label 4952: @214097 |
| 75818 | /* 214097 */ GIM_Try, /*On fail goto*//*Label 4968*/ GIMT_Encode4(214815), |
| 75819 | /* 214102 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 75820 | /* 214105 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 75821 | /* 214108 */ GIM_Try, /*On fail goto*//*Label 4969*/ GIMT_Encode4(214173), // Rule ID 964 // |
| 75822 | /* 214113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 75823 | /* 214116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75824 | /* 214120 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75825 | /* 214124 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75826 | /* 214128 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 75827 | /* 214135 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75828 | /* 214139 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75829 | /* 214143 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75830 | /* 214145 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75831 | /* 214152 */ // (strict_fsub:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (SUBR_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75832 | /* 214152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m32), |
| 75833 | /* 214155 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75834 | /* 214157 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75835 | /* 214159 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75836 | /* 214163 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75837 | /* 214166 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75838 | /* 214171 */ GIR_RootConstrainSelectedInstOperands, |
| 75839 | /* 214172 */ // GIR_Coverage, 964, |
| 75840 | /* 214172 */ GIR_EraseRootFromParent_Done, |
| 75841 | /* 214173 */ // Label 4969: @214173 |
| 75842 | /* 214173 */ GIM_Try, /*On fail goto*//*Label 4970*/ GIMT_Encode4(214238), // Rule ID 966 // |
| 75843 | /* 214178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 75844 | /* 214181 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75845 | /* 214185 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75846 | /* 214189 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75847 | /* 214193 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 75848 | /* 214200 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75849 | /* 214204 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75850 | /* 214208 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75851 | /* 214210 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75852 | /* 214217 */ // (strict_fsub:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (SUBR_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75853 | /* 214217 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m32), |
| 75854 | /* 214220 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75855 | /* 214222 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75856 | /* 214224 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75857 | /* 214228 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75858 | /* 214231 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75859 | /* 214236 */ GIR_RootConstrainSelectedInstOperands, |
| 75860 | /* 214237 */ // GIR_Coverage, 966, |
| 75861 | /* 214237 */ GIR_EraseRootFromParent_Done, |
| 75862 | /* 214238 */ // Label 4970: @214238 |
| 75863 | /* 214238 */ GIM_Try, /*On fail goto*//*Label 4971*/ GIMT_Encode4(214303), // Rule ID 954 // |
| 75864 | /* 214243 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 75865 | /* 214246 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75866 | /* 214250 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 75867 | /* 214254 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75868 | /* 214258 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75869 | /* 214261 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75870 | /* 214265 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75871 | /* 214269 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75872 | /* 214273 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75873 | /* 214275 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75874 | /* 214282 */ // (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) |
| 75875 | /* 214282 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp32m), |
| 75876 | /* 214285 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75877 | /* 214287 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 75878 | /* 214289 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75879 | /* 214293 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75880 | /* 214296 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75881 | /* 214301 */ GIR_RootConstrainSelectedInstOperands, |
| 75882 | /* 214302 */ // GIR_Coverage, 954, |
| 75883 | /* 214302 */ GIR_EraseRootFromParent_Done, |
| 75884 | /* 214303 */ // Label 4971: @214303 |
| 75885 | /* 214303 */ GIM_Try, /*On fail goto*//*Label 4972*/ GIMT_Encode4(214368), // Rule ID 942 // |
| 75886 | /* 214308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 75887 | /* 214311 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75888 | /* 214315 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75889 | /* 214319 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75890 | /* 214323 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75891 | /* 214327 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 75892 | /* 214334 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75893 | /* 214338 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75894 | /* 214340 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75895 | /* 214347 */ // (strict_fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75896 | /* 214347 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m32), |
| 75897 | /* 214350 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75898 | /* 214352 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75899 | /* 214354 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75900 | /* 214358 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75901 | /* 214361 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75902 | /* 214366 */ GIR_RootConstrainSelectedInstOperands, |
| 75903 | /* 214367 */ // GIR_Coverage, 942, |
| 75904 | /* 214367 */ GIR_EraseRootFromParent_Done, |
| 75905 | /* 214368 */ // Label 4972: @214368 |
| 75906 | /* 214368 */ GIM_Try, /*On fail goto*//*Label 4973*/ GIMT_Encode4(214433), // Rule ID 944 // |
| 75907 | /* 214373 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 75908 | /* 214376 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75909 | /* 214380 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75910 | /* 214384 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75911 | /* 214388 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 75912 | /* 214392 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 75913 | /* 214399 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75914 | /* 214403 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75915 | /* 214405 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75916 | /* 214412 */ // (strict_fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 75917 | /* 214412 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m32), |
| 75918 | /* 214415 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75919 | /* 214417 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75920 | /* 214419 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75921 | /* 214423 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75922 | /* 214426 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75923 | /* 214431 */ GIR_RootConstrainSelectedInstOperands, |
| 75924 | /* 214432 */ // GIR_Coverage, 944, |
| 75925 | /* 214432 */ GIR_EraseRootFromParent_Done, |
| 75926 | /* 214433 */ // Label 4973: @214433 |
| 75927 | /* 214433 */ GIM_Try, /*On fail goto*//*Label 4974*/ GIMT_Encode4(214498), // Rule ID 932 // |
| 75928 | /* 214438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 75929 | /* 214441 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75930 | /* 214445 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 75931 | /* 214449 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75932 | /* 214453 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75933 | /* 214457 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75934 | /* 214460 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75935 | /* 214464 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75936 | /* 214468 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75937 | /* 214470 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75938 | /* 214477 */ // (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) |
| 75939 | /* 214477 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp32m), |
| 75940 | /* 214480 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75941 | /* 214482 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75942 | /* 214484 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75943 | /* 214488 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 75944 | /* 214491 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75945 | /* 214496 */ GIR_RootConstrainSelectedInstOperands, |
| 75946 | /* 214497 */ // GIR_Coverage, 932, |
| 75947 | /* 214497 */ GIR_EraseRootFromParent_Done, |
| 75948 | /* 214498 */ // Label 4974: @214498 |
| 75949 | /* 214498 */ GIM_Try, /*On fail goto*//*Label 4975*/ GIMT_Encode4(214560), // Rule ID 2240 // |
| 75950 | /* 214503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 75951 | /* 214506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 75952 | /* 214510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 75953 | /* 214514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75954 | /* 214518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75955 | /* 214522 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75956 | /* 214525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75957 | /* 214529 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75958 | /* 214533 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75959 | /* 214535 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75960 | /* 214542 */ // (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) |
| 75961 | /* 214542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSrm), |
| 75962 | /* 214545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75963 | /* 214547 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75964 | /* 214549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75965 | /* 214553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75966 | /* 214558 */ GIR_RootConstrainSelectedInstOperands, |
| 75967 | /* 214559 */ // GIR_Coverage, 2240, |
| 75968 | /* 214559 */ GIR_EraseRootFromParent_Done, |
| 75969 | /* 214560 */ // Label 4975: @214560 |
| 75970 | /* 214560 */ GIM_Try, /*On fail goto*//*Label 4976*/ GIMT_Encode4(214622), // Rule ID 2248 // |
| 75971 | /* 214565 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 75972 | /* 214568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 75973 | /* 214572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 75974 | /* 214576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75975 | /* 214580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75976 | /* 214584 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75977 | /* 214587 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75978 | /* 214591 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 75979 | /* 214595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 75980 | /* 214597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 75981 | /* 214604 */ // (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) |
| 75982 | /* 214604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSSrm), |
| 75983 | /* 214607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 75984 | /* 214609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 75985 | /* 214611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 75986 | /* 214615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 75987 | /* 214620 */ GIR_RootConstrainSelectedInstOperands, |
| 75988 | /* 214621 */ // GIR_Coverage, 2248, |
| 75989 | /* 214621 */ GIR_EraseRootFromParent_Done, |
| 75990 | /* 214622 */ // Label 4976: @214622 |
| 75991 | /* 214622 */ GIM_Try, /*On fail goto*//*Label 4977*/ GIMT_Encode4(214684), // Rule ID 6034 // |
| 75992 | /* 214627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 75993 | /* 214630 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 75994 | /* 214634 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 75995 | /* 214638 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 75996 | /* 214642 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 75997 | /* 214646 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 75998 | /* 214649 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 75999 | /* 214653 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76000 | /* 214657 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76001 | /* 214659 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76002 | /* 214666 */ // (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) |
| 76003 | /* 214666 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrm), |
| 76004 | /* 214669 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76005 | /* 214671 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76006 | /* 214673 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76007 | /* 214677 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76008 | /* 214682 */ GIR_RootConstrainSelectedInstOperands, |
| 76009 | /* 214683 */ // GIR_Coverage, 6034, |
| 76010 | /* 214683 */ GIR_EraseRootFromParent_Done, |
| 76011 | /* 214684 */ // Label 4977: @214684 |
| 76012 | /* 214684 */ GIM_Try, /*On fail goto*//*Label 4978*/ GIMT_Encode4(214721), // Rule ID 892 // |
| 76013 | /* 214689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 76014 | /* 214692 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76015 | /* 214696 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76016 | /* 214700 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 76017 | /* 214704 */ // (strict_fsub:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (SUB_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 76018 | /* 214704 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp32), |
| 76019 | /* 214709 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 76020 | /* 214715 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 76021 | /* 214719 */ GIR_RootConstrainSelectedInstOperands, |
| 76022 | /* 214720 */ // GIR_Coverage, 892, |
| 76023 | /* 214720 */ GIR_Done, |
| 76024 | /* 214721 */ // Label 4978: @214721 |
| 76025 | /* 214721 */ GIM_Try, /*On fail goto*//*Label 4979*/ GIMT_Encode4(214752), // Rule ID 2238 // |
| 76026 | /* 214726 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 76027 | /* 214729 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76028 | /* 214733 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76029 | /* 214737 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76030 | /* 214741 */ // (strict_fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VSUBSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 76031 | /* 214741 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSSrr), |
| 76032 | /* 214746 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76033 | /* 214750 */ GIR_RootConstrainSelectedInstOperands, |
| 76034 | /* 214751 */ // GIR_Coverage, 2238, |
| 76035 | /* 214751 */ GIR_Done, |
| 76036 | /* 214752 */ // Label 4979: @214752 |
| 76037 | /* 214752 */ GIM_Try, /*On fail goto*//*Label 4980*/ GIMT_Encode4(214783), // Rule ID 2246 // |
| 76038 | /* 214757 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 76039 | /* 214760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76040 | /* 214764 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76041 | /* 214768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 76042 | /* 214772 */ // (strict_fsub:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (SUBSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 76043 | /* 214772 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBSSrr), |
| 76044 | /* 214777 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76045 | /* 214781 */ GIR_RootConstrainSelectedInstOperands, |
| 76046 | /* 214782 */ // GIR_Coverage, 2246, |
| 76047 | /* 214782 */ GIR_Done, |
| 76048 | /* 214783 */ // Label 4980: @214783 |
| 76049 | /* 214783 */ GIM_Try, /*On fail goto*//*Label 4981*/ GIMT_Encode4(214814), // Rule ID 6032 // |
| 76050 | /* 214788 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76051 | /* 214791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 76052 | /* 214795 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 76053 | /* 214799 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 76054 | /* 214803 */ // (strict_fsub:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VSUBSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 76055 | /* 214803 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSSZrr), |
| 76056 | /* 214808 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76057 | /* 214812 */ GIR_RootConstrainSelectedInstOperands, |
| 76058 | /* 214813 */ // GIR_Coverage, 6032, |
| 76059 | /* 214813 */ GIR_Done, |
| 76060 | /* 214814 */ // Label 4981: @214814 |
| 76061 | /* 214814 */ GIM_Reject, |
| 76062 | /* 214815 */ // Label 4968: @214815 |
| 76063 | /* 214815 */ GIM_Reject, |
| 76064 | /* 214816 */ // Label 4953: @214816 |
| 76065 | /* 214816 */ GIM_Try, /*On fail goto*//*Label 4982*/ GIMT_Encode4(215678), |
| 76066 | /* 214821 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 76067 | /* 214824 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 76068 | /* 214827 */ GIM_Try, /*On fail goto*//*Label 4983*/ GIMT_Encode4(214892), // Rule ID 968 // |
| 76069 | /* 214832 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76070 | /* 214835 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76071 | /* 214839 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76072 | /* 214843 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76073 | /* 214847 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76074 | /* 214854 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76075 | /* 214858 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76076 | /* 214862 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76077 | /* 214864 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76078 | /* 214871 */ // (strict_fsub:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (SUBR_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76079 | /* 214871 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m64), |
| 76080 | /* 214874 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76081 | /* 214876 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76082 | /* 214878 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76083 | /* 214882 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76084 | /* 214885 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76085 | /* 214890 */ GIR_RootConstrainSelectedInstOperands, |
| 76086 | /* 214891 */ // GIR_Coverage, 968, |
| 76087 | /* 214891 */ GIR_EraseRootFromParent_Done, |
| 76088 | /* 214892 */ // Label 4983: @214892 |
| 76089 | /* 214892 */ GIM_Try, /*On fail goto*//*Label 4984*/ GIMT_Encode4(214957), // Rule ID 970 // |
| 76090 | /* 214897 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76091 | /* 214900 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76092 | /* 214904 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76093 | /* 214908 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76094 | /* 214912 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76095 | /* 214919 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76096 | /* 214923 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76097 | /* 214927 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76098 | /* 214929 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76099 | /* 214936 */ // (strict_fsub:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (SUBR_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76100 | /* 214936 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m64), |
| 76101 | /* 214939 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76102 | /* 214941 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76103 | /* 214943 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76104 | /* 214947 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76105 | /* 214950 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76106 | /* 214955 */ GIR_RootConstrainSelectedInstOperands, |
| 76107 | /* 214956 */ // GIR_Coverage, 970, |
| 76108 | /* 214956 */ GIR_EraseRootFromParent_Done, |
| 76109 | /* 214957 */ // Label 4984: @214957 |
| 76110 | /* 214957 */ GIM_Try, /*On fail goto*//*Label 4985*/ GIMT_Encode4(215022), // Rule ID 956 // |
| 76111 | /* 214962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76112 | /* 214965 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76113 | /* 214969 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76114 | /* 214973 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76115 | /* 214977 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76116 | /* 214980 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76117 | /* 214984 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76118 | /* 214988 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76119 | /* 214992 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76120 | /* 214994 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76121 | /* 215001 */ // (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) |
| 76122 | /* 215001 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp64m), |
| 76123 | /* 215004 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76124 | /* 215006 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76125 | /* 215008 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76126 | /* 215012 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76127 | /* 215015 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76128 | /* 215020 */ GIR_RootConstrainSelectedInstOperands, |
| 76129 | /* 215021 */ // GIR_Coverage, 956, |
| 76130 | /* 215021 */ GIR_EraseRootFromParent_Done, |
| 76131 | /* 215022 */ // Label 4985: @215022 |
| 76132 | /* 215022 */ GIM_Try, /*On fail goto*//*Label 4986*/ GIMT_Encode4(215094), // Rule ID 958 // |
| 76133 | /* 215027 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76134 | /* 215030 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76135 | /* 215034 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76136 | /* 215038 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76137 | /* 215042 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76138 | /* 215045 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76139 | /* 215049 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76140 | /* 215056 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76141 | /* 215060 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76142 | /* 215064 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76143 | /* 215066 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76144 | /* 215073 */ // (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) |
| 76145 | /* 215073 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp64m32), |
| 76146 | /* 215076 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76147 | /* 215078 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76148 | /* 215080 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76149 | /* 215084 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76150 | /* 215087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76151 | /* 215092 */ GIR_RootConstrainSelectedInstOperands, |
| 76152 | /* 215093 */ // GIR_Coverage, 958, |
| 76153 | /* 215093 */ GIR_EraseRootFromParent_Done, |
| 76154 | /* 215094 */ // Label 4986: @215094 |
| 76155 | /* 215094 */ GIM_Try, /*On fail goto*//*Label 4987*/ GIMT_Encode4(215159), // Rule ID 946 // |
| 76156 | /* 215099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76157 | /* 215102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76158 | /* 215106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76159 | /* 215110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76160 | /* 215114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76161 | /* 215118 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76162 | /* 215125 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76163 | /* 215129 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76164 | /* 215131 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76165 | /* 215138 */ // (strict_fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76166 | /* 215138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m64), |
| 76167 | /* 215141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76168 | /* 215143 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76169 | /* 215145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76170 | /* 215149 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76171 | /* 215152 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76172 | /* 215157 */ GIR_RootConstrainSelectedInstOperands, |
| 76173 | /* 215158 */ // GIR_Coverage, 946, |
| 76174 | /* 215158 */ GIR_EraseRootFromParent_Done, |
| 76175 | /* 215159 */ // Label 4987: @215159 |
| 76176 | /* 215159 */ GIM_Try, /*On fail goto*//*Label 4988*/ GIMT_Encode4(215224), // Rule ID 948 // |
| 76177 | /* 215164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76178 | /* 215167 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76179 | /* 215171 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76180 | /* 215175 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76181 | /* 215179 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76182 | /* 215183 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76183 | /* 215190 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76184 | /* 215194 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76185 | /* 215196 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76186 | /* 215203 */ // (strict_fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76187 | /* 215203 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m64), |
| 76188 | /* 215206 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76189 | /* 215208 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76190 | /* 215210 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76191 | /* 215214 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76192 | /* 215217 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76193 | /* 215222 */ GIR_RootConstrainSelectedInstOperands, |
| 76194 | /* 215223 */ // GIR_Coverage, 948, |
| 76195 | /* 215223 */ GIR_EraseRootFromParent_Done, |
| 76196 | /* 215224 */ // Label 4988: @215224 |
| 76197 | /* 215224 */ GIM_Try, /*On fail goto*//*Label 4989*/ GIMT_Encode4(215289), // Rule ID 934 // |
| 76198 | /* 215229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76199 | /* 215232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76200 | /* 215236 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76201 | /* 215240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76202 | /* 215244 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76203 | /* 215248 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76204 | /* 215251 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76205 | /* 215255 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76206 | /* 215259 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76207 | /* 215261 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76208 | /* 215268 */ // (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) |
| 76209 | /* 215268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64m), |
| 76210 | /* 215271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76211 | /* 215273 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76212 | /* 215275 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76213 | /* 215279 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76214 | /* 215282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76215 | /* 215287 */ GIR_RootConstrainSelectedInstOperands, |
| 76216 | /* 215288 */ // GIR_Coverage, 934, |
| 76217 | /* 215288 */ GIR_EraseRootFromParent_Done, |
| 76218 | /* 215289 */ // Label 4989: @215289 |
| 76219 | /* 215289 */ GIM_Try, /*On fail goto*//*Label 4990*/ GIMT_Encode4(215361), // Rule ID 936 // |
| 76220 | /* 215294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76221 | /* 215297 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76222 | /* 215301 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76223 | /* 215305 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76224 | /* 215309 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76225 | /* 215313 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76226 | /* 215316 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76227 | /* 215320 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76228 | /* 215327 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76229 | /* 215331 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76230 | /* 215333 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76231 | /* 215340 */ // (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) |
| 76232 | /* 215340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64m32), |
| 76233 | /* 215343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76234 | /* 215345 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76235 | /* 215347 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76236 | /* 215351 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76237 | /* 215354 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76238 | /* 215359 */ GIR_RootConstrainSelectedInstOperands, |
| 76239 | /* 215360 */ // GIR_Coverage, 936, |
| 76240 | /* 215360 */ GIR_EraseRootFromParent_Done, |
| 76241 | /* 215361 */ // Label 4990: @215361 |
| 76242 | /* 215361 */ GIM_Try, /*On fail goto*//*Label 4991*/ GIMT_Encode4(215423), // Rule ID 2244 // |
| 76243 | /* 215366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 76244 | /* 215369 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76245 | /* 215373 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76246 | /* 215377 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76247 | /* 215381 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76248 | /* 215385 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76249 | /* 215388 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76250 | /* 215392 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76251 | /* 215396 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76252 | /* 215398 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76253 | /* 215405 */ // (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) |
| 76254 | /* 215405 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDrm), |
| 76255 | /* 215408 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76256 | /* 215410 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76257 | /* 215412 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76258 | /* 215416 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76259 | /* 215421 */ GIR_RootConstrainSelectedInstOperands, |
| 76260 | /* 215422 */ // GIR_Coverage, 2244, |
| 76261 | /* 215422 */ GIR_EraseRootFromParent_Done, |
| 76262 | /* 215423 */ // Label 4991: @215423 |
| 76263 | /* 215423 */ GIM_Try, /*On fail goto*//*Label 4992*/ GIMT_Encode4(215485), // Rule ID 2252 // |
| 76264 | /* 215428 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 76265 | /* 215431 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76266 | /* 215435 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76267 | /* 215439 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76268 | /* 215443 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76269 | /* 215447 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76270 | /* 215450 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76271 | /* 215454 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76272 | /* 215458 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76273 | /* 215460 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76274 | /* 215467 */ // (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) |
| 76275 | /* 215467 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBSDrm), |
| 76276 | /* 215470 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76277 | /* 215472 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76278 | /* 215474 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76279 | /* 215478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76280 | /* 215483 */ GIR_RootConstrainSelectedInstOperands, |
| 76281 | /* 215484 */ // GIR_Coverage, 2252, |
| 76282 | /* 215484 */ GIR_EraseRootFromParent_Done, |
| 76283 | /* 215485 */ // Label 4992: @215485 |
| 76284 | /* 215485 */ GIM_Try, /*On fail goto*//*Label 4993*/ GIMT_Encode4(215547), // Rule ID 6053 // |
| 76285 | /* 215490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76286 | /* 215493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76287 | /* 215497 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76288 | /* 215501 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76289 | /* 215505 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76290 | /* 215509 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76291 | /* 215512 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76292 | /* 215516 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76293 | /* 215520 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76294 | /* 215522 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76295 | /* 215529 */ // (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) |
| 76296 | /* 215529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrm), |
| 76297 | /* 215532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76298 | /* 215534 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76299 | /* 215536 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76300 | /* 215540 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76301 | /* 215545 */ GIR_RootConstrainSelectedInstOperands, |
| 76302 | /* 215546 */ // GIR_Coverage, 6053, |
| 76303 | /* 215546 */ GIR_EraseRootFromParent_Done, |
| 76304 | /* 215547 */ // Label 4993: @215547 |
| 76305 | /* 215547 */ GIM_Try, /*On fail goto*//*Label 4994*/ GIMT_Encode4(215584), // Rule ID 894 // |
| 76306 | /* 215552 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 76307 | /* 215555 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76308 | /* 215559 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76309 | /* 215563 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 76310 | /* 215567 */ // (strict_fsub:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (SUB_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 76311 | /* 215567 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp64), |
| 76312 | /* 215572 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 76313 | /* 215578 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 76314 | /* 215582 */ GIR_RootConstrainSelectedInstOperands, |
| 76315 | /* 215583 */ // GIR_Coverage, 894, |
| 76316 | /* 215583 */ GIR_Done, |
| 76317 | /* 215584 */ // Label 4994: @215584 |
| 76318 | /* 215584 */ GIM_Try, /*On fail goto*//*Label 4995*/ GIMT_Encode4(215615), // Rule ID 2242 // |
| 76319 | /* 215589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 76320 | /* 215592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76321 | /* 215596 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76322 | /* 215600 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76323 | /* 215604 */ // (strict_fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VSUBSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 76324 | /* 215604 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSDrr), |
| 76325 | /* 215609 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76326 | /* 215613 */ GIR_RootConstrainSelectedInstOperands, |
| 76327 | /* 215614 */ // GIR_Coverage, 2242, |
| 76328 | /* 215614 */ GIR_Done, |
| 76329 | /* 215615 */ // Label 4995: @215615 |
| 76330 | /* 215615 */ GIM_Try, /*On fail goto*//*Label 4996*/ GIMT_Encode4(215646), // Rule ID 2250 // |
| 76331 | /* 215620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 76332 | /* 215623 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76333 | /* 215627 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76334 | /* 215631 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 76335 | /* 215635 */ // (strict_fsub:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (SUBSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 76336 | /* 215635 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBSDrr), |
| 76337 | /* 215640 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76338 | /* 215644 */ GIR_RootConstrainSelectedInstOperands, |
| 76339 | /* 215645 */ // GIR_Coverage, 2250, |
| 76340 | /* 215645 */ GIR_Done, |
| 76341 | /* 215646 */ // Label 4996: @215646 |
| 76342 | /* 215646 */ GIM_Try, /*On fail goto*//*Label 4997*/ GIMT_Encode4(215677), // Rule ID 6051 // |
| 76343 | /* 215651 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76344 | /* 215654 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76345 | /* 215658 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76346 | /* 215662 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 76347 | /* 215666 */ // (strict_fsub:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VSUBSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 76348 | /* 215666 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBSDZrr), |
| 76349 | /* 215671 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76350 | /* 215675 */ GIR_RootConstrainSelectedInstOperands, |
| 76351 | /* 215676 */ // GIR_Coverage, 6051, |
| 76352 | /* 215676 */ GIR_Done, |
| 76353 | /* 215677 */ // Label 4997: @215677 |
| 76354 | /* 215677 */ GIM_Reject, |
| 76355 | /* 215678 */ // Label 4982: @215678 |
| 76356 | /* 215678 */ GIM_Reject, |
| 76357 | /* 215679 */ // Label 4954: @215679 |
| 76358 | /* 215679 */ GIM_Try, /*On fail goto*//*Label 4998*/ GIMT_Encode4(216244), |
| 76359 | /* 215684 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 76360 | /* 215687 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 76361 | /* 215690 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76362 | /* 215694 */ GIM_Try, /*On fail goto*//*Label 4999*/ GIMT_Encode4(215755), // Rule ID 972 // |
| 76363 | /* 215699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76364 | /* 215702 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76365 | /* 215706 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76366 | /* 215710 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76367 | /* 215717 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76368 | /* 215721 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76369 | /* 215725 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76370 | /* 215727 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76371 | /* 215734 */ // (strict_fsub:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (SUBR_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76372 | /* 215734 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI16m80), |
| 76373 | /* 215737 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76374 | /* 215739 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76375 | /* 215741 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76376 | /* 215745 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76377 | /* 215748 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76378 | /* 215753 */ GIR_RootConstrainSelectedInstOperands, |
| 76379 | /* 215754 */ // GIR_Coverage, 972, |
| 76380 | /* 215754 */ GIR_EraseRootFromParent_Done, |
| 76381 | /* 215755 */ // Label 4999: @215755 |
| 76382 | /* 215755 */ GIM_Try, /*On fail goto*//*Label 5000*/ GIMT_Encode4(215816), // Rule ID 974 // |
| 76383 | /* 215760 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76384 | /* 215763 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76385 | /* 215767 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76386 | /* 215771 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76387 | /* 215778 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76388 | /* 215782 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76389 | /* 215786 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76390 | /* 215788 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76391 | /* 215795 */ // (strict_fsub:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (SUBR_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76392 | /* 215795 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_FpI32m80), |
| 76393 | /* 215798 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76394 | /* 215800 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76395 | /* 215802 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76396 | /* 215806 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76397 | /* 215809 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76398 | /* 215814 */ GIR_RootConstrainSelectedInstOperands, |
| 76399 | /* 215815 */ // GIR_Coverage, 974, |
| 76400 | /* 215815 */ GIR_EraseRootFromParent_Done, |
| 76401 | /* 215816 */ // Label 5000: @215816 |
| 76402 | /* 215816 */ GIM_Try, /*On fail goto*//*Label 5001*/ GIMT_Encode4(215884), // Rule ID 960 // |
| 76403 | /* 215821 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76404 | /* 215824 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76405 | /* 215828 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76406 | /* 215832 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76407 | /* 215835 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76408 | /* 215839 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76409 | /* 215846 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76410 | /* 215850 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76411 | /* 215854 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76412 | /* 215856 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76413 | /* 215863 */ // (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) |
| 76414 | /* 215863 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp80m32), |
| 76415 | /* 215866 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76416 | /* 215868 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76417 | /* 215870 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76418 | /* 215874 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76419 | /* 215877 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76420 | /* 215882 */ GIR_RootConstrainSelectedInstOperands, |
| 76421 | /* 215883 */ // GIR_Coverage, 960, |
| 76422 | /* 215883 */ GIR_EraseRootFromParent_Done, |
| 76423 | /* 215884 */ // Label 5001: @215884 |
| 76424 | /* 215884 */ GIM_Try, /*On fail goto*//*Label 5002*/ GIMT_Encode4(215952), // Rule ID 962 // |
| 76425 | /* 215889 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76426 | /* 215892 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 76427 | /* 215896 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76428 | /* 215900 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76429 | /* 215903 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76430 | /* 215907 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 76431 | /* 215914 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76432 | /* 215918 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76433 | /* 215922 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76434 | /* 215924 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76435 | /* 215931 */ // (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) |
| 76436 | /* 215931 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUBR_Fp80m64), |
| 76437 | /* 215934 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76438 | /* 215936 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 76439 | /* 215938 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76440 | /* 215942 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76441 | /* 215945 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76442 | /* 215950 */ GIR_RootConstrainSelectedInstOperands, |
| 76443 | /* 215951 */ // GIR_Coverage, 962, |
| 76444 | /* 215951 */ GIR_EraseRootFromParent_Done, |
| 76445 | /* 215952 */ // Label 5002: @215952 |
| 76446 | /* 215952 */ GIM_Try, /*On fail goto*//*Label 5003*/ GIMT_Encode4(216013), // Rule ID 950 // |
| 76447 | /* 215957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76448 | /* 215960 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76449 | /* 215964 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76450 | /* 215968 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76451 | /* 215972 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 76452 | /* 215979 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76453 | /* 215983 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76454 | /* 215985 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76455 | /* 215992 */ // (strict_fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (SUB_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76456 | /* 215992 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI16m80), |
| 76457 | /* 215995 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76458 | /* 215997 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76459 | /* 215999 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76460 | /* 216003 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76461 | /* 216006 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76462 | /* 216011 */ GIR_RootConstrainSelectedInstOperands, |
| 76463 | /* 216012 */ // GIR_Coverage, 950, |
| 76464 | /* 216012 */ GIR_EraseRootFromParent_Done, |
| 76465 | /* 216013 */ // Label 5003: @216013 |
| 76466 | /* 216013 */ GIM_Try, /*On fail goto*//*Label 5004*/ GIMT_Encode4(216074), // Rule ID 952 // |
| 76467 | /* 216018 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76468 | /* 216021 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76469 | /* 216025 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76470 | /* 216029 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 76471 | /* 216033 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76472 | /* 216040 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76473 | /* 216044 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76474 | /* 216046 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76475 | /* 216053 */ // (strict_fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (SUB_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 76476 | /* 216053 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_FpI32m80), |
| 76477 | /* 216056 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76478 | /* 216058 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76479 | /* 216060 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76480 | /* 216064 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76481 | /* 216067 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76482 | /* 216072 */ GIR_RootConstrainSelectedInstOperands, |
| 76483 | /* 216073 */ // GIR_Coverage, 952, |
| 76484 | /* 216073 */ GIR_EraseRootFromParent_Done, |
| 76485 | /* 216074 */ // Label 5004: @216074 |
| 76486 | /* 216074 */ GIM_Try, /*On fail goto*//*Label 5005*/ GIMT_Encode4(216142), // Rule ID 938 // |
| 76487 | /* 216079 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76488 | /* 216082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76489 | /* 216086 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76490 | /* 216090 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76491 | /* 216094 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76492 | /* 216097 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76493 | /* 216101 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 76494 | /* 216108 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76495 | /* 216112 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76496 | /* 216114 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76497 | /* 216121 */ // (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) |
| 76498 | /* 216121 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80m32), |
| 76499 | /* 216124 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76500 | /* 216126 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76501 | /* 216128 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76502 | /* 216132 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76503 | /* 216135 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76504 | /* 216140 */ GIR_RootConstrainSelectedInstOperands, |
| 76505 | /* 216141 */ // GIR_Coverage, 938, |
| 76506 | /* 216141 */ GIR_EraseRootFromParent_Done, |
| 76507 | /* 216142 */ // Label 5005: @216142 |
| 76508 | /* 216142 */ GIM_Try, /*On fail goto*//*Label 5006*/ GIMT_Encode4(216210), // Rule ID 940 // |
| 76509 | /* 216147 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76510 | /* 216150 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76511 | /* 216154 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76512 | /* 216158 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76513 | /* 216162 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76514 | /* 216165 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76515 | /* 216169 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 76516 | /* 216176 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76517 | /* 216180 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76518 | /* 216182 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76519 | /* 216189 */ // (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) |
| 76520 | /* 216189 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80m64), |
| 76521 | /* 216192 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76522 | /* 216194 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76523 | /* 216196 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76524 | /* 216200 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 76525 | /* 216203 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76526 | /* 216208 */ GIR_RootConstrainSelectedInstOperands, |
| 76527 | /* 216209 */ // GIR_Coverage, 940, |
| 76528 | /* 216209 */ GIR_EraseRootFromParent_Done, |
| 76529 | /* 216210 */ // Label 5006: @216210 |
| 76530 | /* 216210 */ GIM_Try, /*On fail goto*//*Label 5007*/ GIMT_Encode4(216243), // Rule ID 896 // |
| 76531 | /* 216215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 76532 | /* 216218 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76533 | /* 216222 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 76534 | /* 216226 */ // (strict_fsub:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (SUB_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 76535 | /* 216226 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUB_Fp80), |
| 76536 | /* 216231 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 76537 | /* 216237 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 76538 | /* 216241 */ GIR_RootConstrainSelectedInstOperands, |
| 76539 | /* 216242 */ // GIR_Coverage, 896, |
| 76540 | /* 216242 */ GIR_Done, |
| 76541 | /* 216243 */ // Label 5007: @216243 |
| 76542 | /* 216243 */ GIM_Reject, |
| 76543 | /* 216244 */ // Label 4998: @216244 |
| 76544 | /* 216244 */ GIM_Reject, |
| 76545 | /* 216245 */ // Label 4955: @216245 |
| 76546 | /* 216245 */ GIM_Try, /*On fail goto*//*Label 5008*/ GIMT_Encode4(216474), |
| 76547 | /* 216250 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 76548 | /* 216253 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 76549 | /* 216256 */ GIM_Try, /*On fail goto*//*Label 5009*/ GIMT_Encode4(216318), // Rule ID 2220 // |
| 76550 | /* 216261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 76551 | /* 216264 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76552 | /* 216268 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76553 | /* 216272 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76554 | /* 216276 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76555 | /* 216280 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76556 | /* 216283 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76557 | /* 216287 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76558 | /* 216291 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76559 | /* 216293 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76560 | /* 216300 */ // (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) |
| 76561 | /* 216300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDrm), |
| 76562 | /* 216303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76563 | /* 216305 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76564 | /* 216307 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76565 | /* 216311 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76566 | /* 216316 */ GIR_RootConstrainSelectedInstOperands, |
| 76567 | /* 216317 */ // GIR_Coverage, 2220, |
| 76568 | /* 216317 */ GIR_EraseRootFromParent_Done, |
| 76569 | /* 216318 */ // Label 5009: @216318 |
| 76570 | /* 216318 */ GIM_Try, /*On fail goto*//*Label 5010*/ GIMT_Encode4(216380), // Rule ID 6546 // |
| 76571 | /* 216323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 76572 | /* 216326 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76573 | /* 216330 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76574 | /* 216334 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76575 | /* 216338 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76576 | /* 216342 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76577 | /* 216345 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76578 | /* 216349 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76579 | /* 216353 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76580 | /* 216355 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76581 | /* 216362 */ // (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) |
| 76582 | /* 216362 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ128rm), |
| 76583 | /* 216365 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76584 | /* 216367 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76585 | /* 216369 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76586 | /* 216373 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76587 | /* 216378 */ GIR_RootConstrainSelectedInstOperands, |
| 76588 | /* 216379 */ // GIR_Coverage, 6546, |
| 76589 | /* 216379 */ GIR_EraseRootFromParent_Done, |
| 76590 | /* 216380 */ // Label 5010: @216380 |
| 76591 | /* 216380 */ GIM_Try, /*On fail goto*//*Label 5011*/ GIMT_Encode4(216411), // Rule ID 2218 // |
| 76592 | /* 216385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 76593 | /* 216388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76594 | /* 216392 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76595 | /* 216396 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76596 | /* 216400 */ // (strict_fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VSUBPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 76597 | /* 216400 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDrr), |
| 76598 | /* 216405 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76599 | /* 216409 */ GIR_RootConstrainSelectedInstOperands, |
| 76600 | /* 216410 */ // GIR_Coverage, 2218, |
| 76601 | /* 216410 */ GIR_Done, |
| 76602 | /* 216411 */ // Label 5011: @216411 |
| 76603 | /* 216411 */ GIM_Try, /*On fail goto*//*Label 5012*/ GIMT_Encode4(216442), // Rule ID 2234 // |
| 76604 | /* 216416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 76605 | /* 216419 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76606 | /* 216423 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76607 | /* 216427 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76608 | /* 216431 */ // (strict_fsub:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (SUBPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 76609 | /* 216431 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBPDrr), |
| 76610 | /* 216436 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76611 | /* 216440 */ GIR_RootConstrainSelectedInstOperands, |
| 76612 | /* 216441 */ // GIR_Coverage, 2234, |
| 76613 | /* 216441 */ GIR_Done, |
| 76614 | /* 216442 */ // Label 5012: @216442 |
| 76615 | /* 216442 */ GIM_Try, /*On fail goto*//*Label 5013*/ GIMT_Encode4(216473), // Rule ID 6542 // |
| 76616 | /* 216447 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 76617 | /* 216450 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76618 | /* 216454 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76619 | /* 216458 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76620 | /* 216462 */ // (strict_fsub:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VSUBPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 76621 | /* 216462 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ128rr), |
| 76622 | /* 216467 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76623 | /* 216471 */ GIR_RootConstrainSelectedInstOperands, |
| 76624 | /* 216472 */ // GIR_Coverage, 6542, |
| 76625 | /* 216472 */ GIR_Done, |
| 76626 | /* 216473 */ // Label 5013: @216473 |
| 76627 | /* 216473 */ GIM_Reject, |
| 76628 | /* 216474 */ // Label 5008: @216474 |
| 76629 | /* 216474 */ GIM_Reject, |
| 76630 | /* 216475 */ // Label 4956: @216475 |
| 76631 | /* 216475 */ GIM_Try, /*On fail goto*//*Label 5014*/ GIMT_Encode4(216704), |
| 76632 | /* 216480 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 76633 | /* 216483 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 76634 | /* 216486 */ GIM_Try, /*On fail goto*//*Label 5015*/ GIMT_Encode4(216548), // Rule ID 2216 // |
| 76635 | /* 216491 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 76636 | /* 216494 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76637 | /* 216498 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76638 | /* 216502 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76639 | /* 216506 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76640 | /* 216510 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76641 | /* 216513 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76642 | /* 216517 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76643 | /* 216521 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76644 | /* 216523 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76645 | /* 216530 */ // (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) |
| 76646 | /* 216530 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSrm), |
| 76647 | /* 216533 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76648 | /* 216535 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76649 | /* 216537 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76650 | /* 216541 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76651 | /* 216546 */ GIR_RootConstrainSelectedInstOperands, |
| 76652 | /* 216547 */ // GIR_Coverage, 2216, |
| 76653 | /* 216547 */ GIR_EraseRootFromParent_Done, |
| 76654 | /* 216548 */ // Label 5015: @216548 |
| 76655 | /* 216548 */ GIM_Try, /*On fail goto*//*Label 5016*/ GIMT_Encode4(216610), // Rule ID 6522 // |
| 76656 | /* 216553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 76657 | /* 216556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76658 | /* 216560 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76659 | /* 216564 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76660 | /* 216568 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76661 | /* 216572 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76662 | /* 216575 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76663 | /* 216579 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76664 | /* 216583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76665 | /* 216585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76666 | /* 216592 */ // (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) |
| 76667 | /* 216592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ128rm), |
| 76668 | /* 216595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76669 | /* 216597 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76670 | /* 216599 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76671 | /* 216603 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76672 | /* 216608 */ GIR_RootConstrainSelectedInstOperands, |
| 76673 | /* 216609 */ // GIR_Coverage, 6522, |
| 76674 | /* 216609 */ GIR_EraseRootFromParent_Done, |
| 76675 | /* 216610 */ // Label 5016: @216610 |
| 76676 | /* 216610 */ GIM_Try, /*On fail goto*//*Label 5017*/ GIMT_Encode4(216641), // Rule ID 2214 // |
| 76677 | /* 216615 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 76678 | /* 216618 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76679 | /* 216622 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76680 | /* 216626 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76681 | /* 216630 */ // (strict_fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VSUBPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 76682 | /* 216630 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSrr), |
| 76683 | /* 216635 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76684 | /* 216639 */ GIR_RootConstrainSelectedInstOperands, |
| 76685 | /* 216640 */ // GIR_Coverage, 2214, |
| 76686 | /* 216640 */ GIR_Done, |
| 76687 | /* 216641 */ // Label 5017: @216641 |
| 76688 | /* 216641 */ GIM_Try, /*On fail goto*//*Label 5018*/ GIMT_Encode4(216672), // Rule ID 2230 // |
| 76689 | /* 216646 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 76690 | /* 216649 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76691 | /* 216653 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76692 | /* 216657 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 76693 | /* 216661 */ // (strict_fsub:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (SUBPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 76694 | /* 216661 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SUBPSrr), |
| 76695 | /* 216666 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76696 | /* 216670 */ GIR_RootConstrainSelectedInstOperands, |
| 76697 | /* 216671 */ // GIR_Coverage, 2230, |
| 76698 | /* 216671 */ GIR_Done, |
| 76699 | /* 216672 */ // Label 5018: @216672 |
| 76700 | /* 216672 */ GIM_Try, /*On fail goto*//*Label 5019*/ GIMT_Encode4(216703), // Rule ID 6518 // |
| 76701 | /* 216677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 76702 | /* 216680 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76703 | /* 216684 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76704 | /* 216688 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76705 | /* 216692 */ // (strict_fsub:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VSUBPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 76706 | /* 216692 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ128rr), |
| 76707 | /* 216697 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76708 | /* 216701 */ GIR_RootConstrainSelectedInstOperands, |
| 76709 | /* 216702 */ // GIR_Coverage, 6518, |
| 76710 | /* 216702 */ GIR_Done, |
| 76711 | /* 216703 */ // Label 5019: @216703 |
| 76712 | /* 216703 */ GIM_Reject, |
| 76713 | /* 216704 */ // Label 5014: @216704 |
| 76714 | /* 216704 */ GIM_Reject, |
| 76715 | /* 216705 */ // Label 4957: @216705 |
| 76716 | /* 216705 */ GIM_Try, /*On fail goto*//*Label 5020*/ GIMT_Encode4(216903), |
| 76717 | /* 216710 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 76718 | /* 216713 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 76719 | /* 216716 */ GIM_Try, /*On fail goto*//*Label 5021*/ GIMT_Encode4(216778), // Rule ID 2228 // |
| 76720 | /* 216721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 76721 | /* 216724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76722 | /* 216728 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76723 | /* 216732 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76724 | /* 216736 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76725 | /* 216740 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76726 | /* 216743 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76727 | /* 216747 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76728 | /* 216751 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76729 | /* 216753 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76730 | /* 216760 */ // (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) |
| 76731 | /* 216760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDYrm), |
| 76732 | /* 216763 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76733 | /* 216765 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76734 | /* 216767 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76735 | /* 216771 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76736 | /* 216776 */ GIR_RootConstrainSelectedInstOperands, |
| 76737 | /* 216777 */ // GIR_Coverage, 2228, |
| 76738 | /* 216777 */ GIR_EraseRootFromParent_Done, |
| 76739 | /* 216778 */ // Label 5021: @216778 |
| 76740 | /* 216778 */ GIM_Try, /*On fail goto*//*Label 5022*/ GIMT_Encode4(216840), // Rule ID 6558 // |
| 76741 | /* 216783 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 76742 | /* 216786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76743 | /* 216790 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76744 | /* 216794 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76745 | /* 216798 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76746 | /* 216802 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76747 | /* 216805 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76748 | /* 216809 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76749 | /* 216813 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76750 | /* 216815 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76751 | /* 216822 */ // (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) |
| 76752 | /* 216822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ256rm), |
| 76753 | /* 216825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76754 | /* 216827 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76755 | /* 216829 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76756 | /* 216833 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76757 | /* 216838 */ GIR_RootConstrainSelectedInstOperands, |
| 76758 | /* 216839 */ // GIR_Coverage, 6558, |
| 76759 | /* 216839 */ GIR_EraseRootFromParent_Done, |
| 76760 | /* 216840 */ // Label 5022: @216840 |
| 76761 | /* 216840 */ GIM_Try, /*On fail goto*//*Label 5023*/ GIMT_Encode4(216871), // Rule ID 2226 // |
| 76762 | /* 216845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 76763 | /* 216848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76764 | /* 216852 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76765 | /* 216856 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76766 | /* 216860 */ // (strict_fsub:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VSUBPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 76767 | /* 216860 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDYrr), |
| 76768 | /* 216865 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76769 | /* 216869 */ GIR_RootConstrainSelectedInstOperands, |
| 76770 | /* 216870 */ // GIR_Coverage, 2226, |
| 76771 | /* 216870 */ GIR_Done, |
| 76772 | /* 216871 */ // Label 5023: @216871 |
| 76773 | /* 216871 */ GIM_Try, /*On fail goto*//*Label 5024*/ GIMT_Encode4(216902), // Rule ID 6554 // |
| 76774 | /* 216876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 76775 | /* 216879 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76776 | /* 216883 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76777 | /* 216887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76778 | /* 216891 */ // (strict_fsub:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VSUBPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 76779 | /* 216891 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZ256rr), |
| 76780 | /* 216896 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76781 | /* 216900 */ GIR_RootConstrainSelectedInstOperands, |
| 76782 | /* 216901 */ // GIR_Coverage, 6554, |
| 76783 | /* 216901 */ GIR_Done, |
| 76784 | /* 216902 */ // Label 5024: @216902 |
| 76785 | /* 216902 */ GIM_Reject, |
| 76786 | /* 216903 */ // Label 5020: @216903 |
| 76787 | /* 216903 */ GIM_Reject, |
| 76788 | /* 216904 */ // Label 4958: @216904 |
| 76789 | /* 216904 */ GIM_Try, /*On fail goto*//*Label 5025*/ GIMT_Encode4(217001), |
| 76790 | /* 216909 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 76791 | /* 216912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 76792 | /* 216915 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76793 | /* 216919 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76794 | /* 216923 */ GIM_Try, /*On fail goto*//*Label 5026*/ GIMT_Encode4(216977), // Rule ID 6582 // |
| 76795 | /* 216928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 76796 | /* 216931 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76797 | /* 216935 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76798 | /* 216939 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76799 | /* 216942 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76800 | /* 216946 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76801 | /* 216950 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76802 | /* 216952 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76803 | /* 216959 */ // (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) |
| 76804 | /* 216959 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ128rm), |
| 76805 | /* 216962 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76806 | /* 216964 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76807 | /* 216966 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76808 | /* 216970 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76809 | /* 216975 */ GIR_RootConstrainSelectedInstOperands, |
| 76810 | /* 216976 */ // GIR_Coverage, 6582, |
| 76811 | /* 216976 */ GIR_EraseRootFromParent_Done, |
| 76812 | /* 216977 */ // Label 5026: @216977 |
| 76813 | /* 216977 */ GIM_Try, /*On fail goto*//*Label 5027*/ GIMT_Encode4(217000), // Rule ID 6578 // |
| 76814 | /* 216982 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 76815 | /* 216985 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 76816 | /* 216989 */ // (strict_fsub:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VSUBPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 76817 | /* 216989 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ128rr), |
| 76818 | /* 216994 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76819 | /* 216998 */ GIR_RootConstrainSelectedInstOperands, |
| 76820 | /* 216999 */ // GIR_Coverage, 6578, |
| 76821 | /* 216999 */ GIR_Done, |
| 76822 | /* 217000 */ // Label 5027: @217000 |
| 76823 | /* 217000 */ GIM_Reject, |
| 76824 | /* 217001 */ // Label 5025: @217001 |
| 76825 | /* 217001 */ GIM_Reject, |
| 76826 | /* 217002 */ // Label 4959: @217002 |
| 76827 | /* 217002 */ GIM_Try, /*On fail goto*//*Label 5028*/ GIMT_Encode4(217200), |
| 76828 | /* 217007 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 76829 | /* 217010 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 76830 | /* 217013 */ GIM_Try, /*On fail goto*//*Label 5029*/ GIMT_Encode4(217075), // Rule ID 2224 // |
| 76831 | /* 217018 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 76832 | /* 217021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76833 | /* 217025 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76834 | /* 217029 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76835 | /* 217033 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76836 | /* 217037 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76837 | /* 217040 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76838 | /* 217044 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76839 | /* 217048 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76840 | /* 217050 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76841 | /* 217057 */ // (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) |
| 76842 | /* 217057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSYrm), |
| 76843 | /* 217060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76844 | /* 217062 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76845 | /* 217064 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76846 | /* 217068 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76847 | /* 217073 */ GIR_RootConstrainSelectedInstOperands, |
| 76848 | /* 217074 */ // GIR_Coverage, 2224, |
| 76849 | /* 217074 */ GIR_EraseRootFromParent_Done, |
| 76850 | /* 217075 */ // Label 5029: @217075 |
| 76851 | /* 217075 */ GIM_Try, /*On fail goto*//*Label 5030*/ GIMT_Encode4(217137), // Rule ID 6534 // |
| 76852 | /* 217080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 76853 | /* 217083 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76854 | /* 217087 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76855 | /* 217091 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76856 | /* 217095 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76857 | /* 217099 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76858 | /* 217102 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76859 | /* 217106 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76860 | /* 217110 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76861 | /* 217112 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76862 | /* 217119 */ // (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) |
| 76863 | /* 217119 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ256rm), |
| 76864 | /* 217122 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76865 | /* 217124 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76866 | /* 217126 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76867 | /* 217130 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76868 | /* 217135 */ GIR_RootConstrainSelectedInstOperands, |
| 76869 | /* 217136 */ // GIR_Coverage, 6534, |
| 76870 | /* 217136 */ GIR_EraseRootFromParent_Done, |
| 76871 | /* 217137 */ // Label 5030: @217137 |
| 76872 | /* 217137 */ GIM_Try, /*On fail goto*//*Label 5031*/ GIMT_Encode4(217168), // Rule ID 2222 // |
| 76873 | /* 217142 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 76874 | /* 217145 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76875 | /* 217149 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76876 | /* 217153 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 76877 | /* 217157 */ // (strict_fsub:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VSUBPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 76878 | /* 217157 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSYrr), |
| 76879 | /* 217162 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76880 | /* 217166 */ GIR_RootConstrainSelectedInstOperands, |
| 76881 | /* 217167 */ // GIR_Coverage, 2222, |
| 76882 | /* 217167 */ GIR_Done, |
| 76883 | /* 217168 */ // Label 5031: @217168 |
| 76884 | /* 217168 */ GIM_Try, /*On fail goto*//*Label 5032*/ GIMT_Encode4(217199), // Rule ID 6530 // |
| 76885 | /* 217173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 76886 | /* 217176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76887 | /* 217180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76888 | /* 217184 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76889 | /* 217188 */ // (strict_fsub:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VSUBPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 76890 | /* 217188 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZ256rr), |
| 76891 | /* 217193 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76892 | /* 217197 */ GIR_RootConstrainSelectedInstOperands, |
| 76893 | /* 217198 */ // GIR_Coverage, 6530, |
| 76894 | /* 217198 */ GIR_Done, |
| 76895 | /* 217199 */ // Label 5032: @217199 |
| 76896 | /* 217199 */ GIM_Reject, |
| 76897 | /* 217200 */ // Label 5028: @217200 |
| 76898 | /* 217200 */ GIM_Reject, |
| 76899 | /* 217201 */ // Label 4960: @217201 |
| 76900 | /* 217201 */ GIM_Try, /*On fail goto*//*Label 5033*/ GIMT_Encode4(217298), |
| 76901 | /* 217206 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 76902 | /* 217209 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 76903 | /* 217212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76904 | /* 217216 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76905 | /* 217220 */ GIM_Try, /*On fail goto*//*Label 5034*/ GIMT_Encode4(217274), // Rule ID 6510 // |
| 76906 | /* 217225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76907 | /* 217228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76908 | /* 217232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76909 | /* 217236 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76910 | /* 217239 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76911 | /* 217243 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76912 | /* 217247 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76913 | /* 217249 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76914 | /* 217256 */ // (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) |
| 76915 | /* 217256 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPDZrm), |
| 76916 | /* 217259 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76917 | /* 217261 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76918 | /* 217263 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76919 | /* 217267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76920 | /* 217272 */ GIR_RootConstrainSelectedInstOperands, |
| 76921 | /* 217273 */ // GIR_Coverage, 6510, |
| 76922 | /* 217273 */ GIR_EraseRootFromParent_Done, |
| 76923 | /* 217274 */ // Label 5034: @217274 |
| 76924 | /* 217274 */ GIM_Try, /*On fail goto*//*Label 5035*/ GIMT_Encode4(217297), // Rule ID 6506 // |
| 76925 | /* 217279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76926 | /* 217282 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76927 | /* 217286 */ // (strict_fsub:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VSUBPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 76928 | /* 217286 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPDZrr), |
| 76929 | /* 217291 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76930 | /* 217295 */ GIR_RootConstrainSelectedInstOperands, |
| 76931 | /* 217296 */ // GIR_Coverage, 6506, |
| 76932 | /* 217296 */ GIR_Done, |
| 76933 | /* 217297 */ // Label 5035: @217297 |
| 76934 | /* 217297 */ GIM_Reject, |
| 76935 | /* 217298 */ // Label 5033: @217298 |
| 76936 | /* 217298 */ GIM_Reject, |
| 76937 | /* 217299 */ // Label 4961: @217299 |
| 76938 | /* 217299 */ GIM_Try, /*On fail goto*//*Label 5036*/ GIMT_Encode4(217396), |
| 76939 | /* 217304 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 76940 | /* 217307 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 76941 | /* 217310 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76942 | /* 217314 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76943 | /* 217318 */ GIM_Try, /*On fail goto*//*Label 5037*/ GIMT_Encode4(217372), // Rule ID 6594 // |
| 76944 | /* 217323 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 76945 | /* 217326 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76946 | /* 217330 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76947 | /* 217334 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76948 | /* 217337 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76949 | /* 217341 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76950 | /* 217345 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76951 | /* 217347 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76952 | /* 217354 */ // (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) |
| 76953 | /* 217354 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ256rm), |
| 76954 | /* 217357 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76955 | /* 217359 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76956 | /* 217361 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76957 | /* 217365 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76958 | /* 217370 */ GIR_RootConstrainSelectedInstOperands, |
| 76959 | /* 217371 */ // GIR_Coverage, 6594, |
| 76960 | /* 217371 */ GIR_EraseRootFromParent_Done, |
| 76961 | /* 217372 */ // Label 5037: @217372 |
| 76962 | /* 217372 */ GIM_Try, /*On fail goto*//*Label 5038*/ GIMT_Encode4(217395), // Rule ID 6590 // |
| 76963 | /* 217377 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 76964 | /* 217380 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 76965 | /* 217384 */ // (strict_fsub:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VSUBPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 76966 | /* 217384 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZ256rr), |
| 76967 | /* 217389 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 76968 | /* 217393 */ GIR_RootConstrainSelectedInstOperands, |
| 76969 | /* 217394 */ // GIR_Coverage, 6590, |
| 76970 | /* 217394 */ GIR_Done, |
| 76971 | /* 217395 */ // Label 5038: @217395 |
| 76972 | /* 217395 */ GIM_Reject, |
| 76973 | /* 217396 */ // Label 5036: @217396 |
| 76974 | /* 217396 */ GIM_Reject, |
| 76975 | /* 217397 */ // Label 4962: @217397 |
| 76976 | /* 217397 */ GIM_Try, /*On fail goto*//*Label 5039*/ GIMT_Encode4(217494), |
| 76977 | /* 217402 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 76978 | /* 217405 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 76979 | /* 217408 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76980 | /* 217412 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 76981 | /* 217416 */ GIM_Try, /*On fail goto*//*Label 5040*/ GIMT_Encode4(217470), // Rule ID 6498 // |
| 76982 | /* 217421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 76983 | /* 217424 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 76984 | /* 217428 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 76985 | /* 217432 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 76986 | /* 217435 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 76987 | /* 217439 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 76988 | /* 217443 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 76989 | /* 217445 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 76990 | /* 217452 */ // (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) |
| 76991 | /* 217452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPSZrm), |
| 76992 | /* 217455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 76993 | /* 217457 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 76994 | /* 217459 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 76995 | /* 217463 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 76996 | /* 217468 */ GIR_RootConstrainSelectedInstOperands, |
| 76997 | /* 217469 */ // GIR_Coverage, 6498, |
| 76998 | /* 217469 */ GIR_EraseRootFromParent_Done, |
| 76999 | /* 217470 */ // Label 5040: @217470 |
| 77000 | /* 217470 */ GIM_Try, /*On fail goto*//*Label 5041*/ GIMT_Encode4(217493), // Rule ID 6494 // |
| 77001 | /* 217475 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77002 | /* 217478 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77003 | /* 217482 */ // (strict_fsub:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VSUBPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 77004 | /* 217482 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPSZrr), |
| 77005 | /* 217487 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77006 | /* 217491 */ GIR_RootConstrainSelectedInstOperands, |
| 77007 | /* 217492 */ // GIR_Coverage, 6494, |
| 77008 | /* 217492 */ GIR_Done, |
| 77009 | /* 217493 */ // Label 5041: @217493 |
| 77010 | /* 217493 */ GIM_Reject, |
| 77011 | /* 217494 */ // Label 5039: @217494 |
| 77012 | /* 217494 */ GIM_Reject, |
| 77013 | /* 217495 */ // Label 4963: @217495 |
| 77014 | /* 217495 */ GIM_Try, /*On fail goto*//*Label 5042*/ GIMT_Encode4(217592), |
| 77015 | /* 217500 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 77016 | /* 217503 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 77017 | /* 217506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77018 | /* 217510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77019 | /* 217514 */ GIM_Try, /*On fail goto*//*Label 5043*/ GIMT_Encode4(217568), // Rule ID 6570 // |
| 77020 | /* 217519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77021 | /* 217522 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77022 | /* 217526 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77023 | /* 217530 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77024 | /* 217533 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77025 | /* 217537 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77026 | /* 217541 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77027 | /* 217543 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77028 | /* 217550 */ // (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) |
| 77029 | /* 217550 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSUBPHZrm), |
| 77030 | /* 217553 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77031 | /* 217555 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77032 | /* 217557 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77033 | /* 217561 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77034 | /* 217566 */ GIR_RootConstrainSelectedInstOperands, |
| 77035 | /* 217567 */ // GIR_Coverage, 6570, |
| 77036 | /* 217567 */ GIR_EraseRootFromParent_Done, |
| 77037 | /* 217568 */ // Label 5043: @217568 |
| 77038 | /* 217568 */ GIM_Try, /*On fail goto*//*Label 5044*/ GIMT_Encode4(217591), // Rule ID 6566 // |
| 77039 | /* 217573 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77040 | /* 217576 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 77041 | /* 217580 */ // (strict_fsub:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VSUBPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 77042 | /* 217580 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSUBPHZrr), |
| 77043 | /* 217585 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77044 | /* 217589 */ GIR_RootConstrainSelectedInstOperands, |
| 77045 | /* 217590 */ // GIR_Coverage, 6566, |
| 77046 | /* 217590 */ GIR_Done, |
| 77047 | /* 217591 */ // Label 5044: @217591 |
| 77048 | /* 217591 */ GIM_Reject, |
| 77049 | /* 217592 */ // Label 5042: @217592 |
| 77050 | /* 217592 */ GIM_Reject, |
| 77051 | /* 217593 */ // Label 4964: @217593 |
| 77052 | /* 217593 */ GIM_Reject, |
| 77053 | /* 217594 */ // Label 71: @217594 |
| 77054 | /* 217594 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 5058*/ GIMT_Encode4(222523), |
| 77055 | /* 217605 */ /*GILLT_s16*//*Label 5045*/ GIMT_Encode4(217689), |
| 77056 | /* 217609 */ /*GILLT_s32*//*Label 5046*/ GIMT_Encode4(217849), |
| 77057 | /* 217613 */ /*GILLT_s64*//*Label 5047*/ GIMT_Encode4(218754), |
| 77058 | /* 217617 */ /*GILLT_s80*//*Label 5048*/ GIMT_Encode4(219803), GIMT_Encode4(0), GIMT_Encode4(0), |
| 77059 | /* 217629 */ /*GILLT_v2s64*//*Label 5049*/ GIMT_Encode4(220369), GIMT_Encode4(0), |
| 77060 | /* 217637 */ /*GILLT_v4s32*//*Label 5050*/ GIMT_Encode4(220723), |
| 77061 | /* 217641 */ /*GILLT_v4s64*//*Label 5051*/ GIMT_Encode4(221077), GIMT_Encode4(0), |
| 77062 | /* 217649 */ /*GILLT_v8s16*//*Label 5052*/ GIMT_Encode4(221400), |
| 77063 | /* 217653 */ /*GILLT_v8s32*//*Label 5053*/ GIMT_Encode4(221560), |
| 77064 | /* 217657 */ /*GILLT_v8s64*//*Label 5054*/ GIMT_Encode4(221883), GIMT_Encode4(0), GIMT_Encode4(0), |
| 77065 | /* 217669 */ /*GILLT_v16s16*//*Label 5055*/ GIMT_Encode4(222043), |
| 77066 | /* 217673 */ /*GILLT_v16s32*//*Label 5056*/ GIMT_Encode4(222203), GIMT_Encode4(0), GIMT_Encode4(0), |
| 77067 | /* 217685 */ /*GILLT_v32s16*//*Label 5057*/ GIMT_Encode4(222363), |
| 77068 | /* 217689 */ // Label 5045: @217689 |
| 77069 | /* 217689 */ GIM_Try, /*On fail goto*//*Label 5059*/ GIMT_Encode4(217848), |
| 77070 | /* 217694 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 77071 | /* 217697 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 77072 | /* 217700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77073 | /* 217704 */ GIM_Try, /*On fail goto*//*Label 5060*/ GIMT_Encode4(217762), // Rule ID 24337 // |
| 77074 | /* 217709 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77075 | /* 217712 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77076 | /* 217716 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77077 | /* 217720 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77078 | /* 217723 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77079 | /* 217727 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77080 | /* 217731 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77081 | /* 217735 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77082 | /* 217737 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77083 | /* 217744 */ // (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) |
| 77084 | /* 217744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSHZrm), |
| 77085 | /* 217747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77086 | /* 217749 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77087 | /* 217751 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77088 | /* 217755 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77089 | /* 217760 */ GIR_RootConstrainSelectedInstOperands, |
| 77090 | /* 217761 */ // GIR_Coverage, 24337, |
| 77091 | /* 217761 */ GIR_EraseRootFromParent_Done, |
| 77092 | /* 217762 */ // Label 5060: @217762 |
| 77093 | /* 217762 */ GIM_Try, /*On fail goto*//*Label 5061*/ GIMT_Encode4(217820), // Rule ID 6015 // |
| 77094 | /* 217767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77095 | /* 217770 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77096 | /* 217774 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77097 | /* 217778 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77098 | /* 217782 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77099 | /* 217785 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77100 | /* 217789 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77101 | /* 217793 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77102 | /* 217795 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77103 | /* 217802 */ // (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) |
| 77104 | /* 217802 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSHZrm), |
| 77105 | /* 217805 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77106 | /* 217807 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77107 | /* 217809 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77108 | /* 217813 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77109 | /* 217818 */ GIR_RootConstrainSelectedInstOperands, |
| 77110 | /* 217819 */ // GIR_Coverage, 6015, |
| 77111 | /* 217819 */ GIR_EraseRootFromParent_Done, |
| 77112 | /* 217820 */ // Label 5061: @217820 |
| 77113 | /* 217820 */ GIM_Try, /*On fail goto*//*Label 5062*/ GIMT_Encode4(217847), // Rule ID 6013 // |
| 77114 | /* 217825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 77115 | /* 217828 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77116 | /* 217832 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 77117 | /* 217836 */ // (strict_fmul:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VMULSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 77118 | /* 217836 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSHZrr), |
| 77119 | /* 217841 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77120 | /* 217845 */ GIR_RootConstrainSelectedInstOperands, |
| 77121 | /* 217846 */ // GIR_Coverage, 6013, |
| 77122 | /* 217846 */ GIR_Done, |
| 77123 | /* 217847 */ // Label 5062: @217847 |
| 77124 | /* 217847 */ GIM_Reject, |
| 77125 | /* 217848 */ // Label 5059: @217848 |
| 77126 | /* 217848 */ GIM_Reject, |
| 77127 | /* 217849 */ // Label 5046: @217849 |
| 77128 | /* 217849 */ GIM_Try, /*On fail goto*//*Label 5063*/ GIMT_Encode4(218753), |
| 77129 | /* 217854 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 77130 | /* 217857 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 77131 | /* 217860 */ GIM_Try, /*On fail goto*//*Label 5064*/ GIMT_Encode4(217925), // Rule ID 23350 // |
| 77132 | /* 217865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77133 | /* 217868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77134 | /* 217872 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77135 | /* 217876 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77136 | /* 217880 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77137 | /* 217887 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77138 | /* 217891 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77139 | /* 217895 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77140 | /* 217897 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77141 | /* 217904 */ // (strict_fmul:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (MUL_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77142 | /* 217904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m32), |
| 77143 | /* 217907 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77144 | /* 217909 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77145 | /* 217911 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77146 | /* 217915 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77147 | /* 217918 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77148 | /* 217923 */ GIR_RootConstrainSelectedInstOperands, |
| 77149 | /* 217924 */ // GIR_Coverage, 23350, |
| 77150 | /* 217924 */ GIR_EraseRootFromParent_Done, |
| 77151 | /* 217925 */ // Label 5064: @217925 |
| 77152 | /* 217925 */ GIM_Try, /*On fail goto*//*Label 5065*/ GIMT_Encode4(217990), // Rule ID 23352 // |
| 77153 | /* 217930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77154 | /* 217933 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77155 | /* 217937 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77156 | /* 217941 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77157 | /* 217945 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77158 | /* 217952 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77159 | /* 217956 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77160 | /* 217960 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77161 | /* 217962 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77162 | /* 217969 */ // (strict_fmul:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (MUL_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77163 | /* 217969 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m32), |
| 77164 | /* 217972 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77165 | /* 217974 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77166 | /* 217976 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77167 | /* 217980 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77168 | /* 217983 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77169 | /* 217988 */ GIR_RootConstrainSelectedInstOperands, |
| 77170 | /* 217989 */ // GIR_Coverage, 23352, |
| 77171 | /* 217989 */ GIR_EraseRootFromParent_Done, |
| 77172 | /* 217990 */ // Label 5065: @217990 |
| 77173 | /* 217990 */ GIM_Try, /*On fail goto*//*Label 5066*/ GIMT_Encode4(218055), // Rule ID 23340 // |
| 77174 | /* 217995 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77175 | /* 217998 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77176 | /* 218002 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77177 | /* 218006 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77178 | /* 218010 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77179 | /* 218013 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77180 | /* 218017 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77181 | /* 218021 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77182 | /* 218025 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77183 | /* 218027 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77184 | /* 218034 */ // (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) |
| 77185 | /* 218034 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32m), |
| 77186 | /* 218037 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77187 | /* 218039 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77188 | /* 218041 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77189 | /* 218045 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77190 | /* 218048 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77191 | /* 218053 */ GIR_RootConstrainSelectedInstOperands, |
| 77192 | /* 218054 */ // GIR_Coverage, 23340, |
| 77193 | /* 218054 */ GIR_EraseRootFromParent_Done, |
| 77194 | /* 218055 */ // Label 5066: @218055 |
| 77195 | /* 218055 */ GIM_Try, /*On fail goto*//*Label 5067*/ GIMT_Encode4(218117), // Rule ID 23483 // |
| 77196 | /* 218060 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77197 | /* 218063 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77198 | /* 218067 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77199 | /* 218071 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77200 | /* 218075 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77201 | /* 218078 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77202 | /* 218082 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77203 | /* 218086 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77204 | /* 218090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77205 | /* 218092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77206 | /* 218099 */ // (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) |
| 77207 | /* 218099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 77208 | /* 218102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77209 | /* 218104 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77210 | /* 218106 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77211 | /* 218110 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77212 | /* 218115 */ GIR_RootConstrainSelectedInstOperands, |
| 77213 | /* 218116 */ // GIR_Coverage, 23483, |
| 77214 | /* 218116 */ GIR_EraseRootFromParent_Done, |
| 77215 | /* 218117 */ // Label 5067: @218117 |
| 77216 | /* 218117 */ GIM_Try, /*On fail goto*//*Label 5068*/ GIMT_Encode4(218179), // Rule ID 23487 // |
| 77217 | /* 218122 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 77218 | /* 218125 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77219 | /* 218129 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77220 | /* 218133 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77221 | /* 218137 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77222 | /* 218140 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77223 | /* 218144 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77224 | /* 218148 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77225 | /* 218152 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77226 | /* 218154 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77227 | /* 218161 */ // (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) |
| 77228 | /* 218161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 77229 | /* 218164 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77230 | /* 218166 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77231 | /* 218168 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77232 | /* 218172 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77233 | /* 218177 */ GIR_RootConstrainSelectedInstOperands, |
| 77234 | /* 218178 */ // GIR_Coverage, 23487, |
| 77235 | /* 218178 */ GIR_EraseRootFromParent_Done, |
| 77236 | /* 218179 */ // Label 5068: @218179 |
| 77237 | /* 218179 */ GIM_Try, /*On fail goto*//*Label 5069*/ GIMT_Encode4(218241), // Rule ID 24333 // |
| 77238 | /* 218184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77239 | /* 218187 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77240 | /* 218191 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77241 | /* 218195 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77242 | /* 218199 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77243 | /* 218202 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77244 | /* 218206 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77245 | /* 218210 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77246 | /* 218214 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77247 | /* 218216 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77248 | /* 218223 */ // (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) |
| 77249 | /* 218223 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 77250 | /* 218226 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77251 | /* 218228 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77252 | /* 218230 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77253 | /* 218234 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77254 | /* 218239 */ GIR_RootConstrainSelectedInstOperands, |
| 77255 | /* 218240 */ // GIR_Coverage, 24333, |
| 77256 | /* 218240 */ GIR_EraseRootFromParent_Done, |
| 77257 | /* 218241 */ // Label 5069: @218241 |
| 77258 | /* 218241 */ GIM_Try, /*On fail goto*//*Label 5070*/ GIMT_Encode4(218306), // Rule ID 986 // |
| 77259 | /* 218246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77260 | /* 218249 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77261 | /* 218253 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77262 | /* 218257 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77263 | /* 218261 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77264 | /* 218265 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77265 | /* 218272 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77266 | /* 218276 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77267 | /* 218278 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77268 | /* 218285 */ // (strict_fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77269 | /* 218285 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m32), |
| 77270 | /* 218288 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77271 | /* 218290 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77272 | /* 218292 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77273 | /* 218296 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77274 | /* 218299 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77275 | /* 218304 */ GIR_RootConstrainSelectedInstOperands, |
| 77276 | /* 218305 */ // GIR_Coverage, 986, |
| 77277 | /* 218305 */ GIR_EraseRootFromParent_Done, |
| 77278 | /* 218306 */ // Label 5070: @218306 |
| 77279 | /* 218306 */ GIM_Try, /*On fail goto*//*Label 5071*/ GIMT_Encode4(218371), // Rule ID 988 // |
| 77280 | /* 218311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77281 | /* 218314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77282 | /* 218318 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77283 | /* 218322 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77284 | /* 218326 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77285 | /* 218330 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77286 | /* 218337 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77287 | /* 218341 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77288 | /* 218343 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77289 | /* 218350 */ // (strict_fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77290 | /* 218350 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m32), |
| 77291 | /* 218353 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77292 | /* 218355 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77293 | /* 218357 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77294 | /* 218361 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77295 | /* 218364 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77296 | /* 218369 */ GIR_RootConstrainSelectedInstOperands, |
| 77297 | /* 218370 */ // GIR_Coverage, 988, |
| 77298 | /* 218370 */ GIR_EraseRootFromParent_Done, |
| 77299 | /* 218371 */ // Label 5071: @218371 |
| 77300 | /* 218371 */ GIM_Try, /*On fail goto*//*Label 5072*/ GIMT_Encode4(218436), // Rule ID 976 // |
| 77301 | /* 218376 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77302 | /* 218379 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77303 | /* 218383 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77304 | /* 218387 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77305 | /* 218391 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77306 | /* 218395 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77307 | /* 218398 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77308 | /* 218402 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77309 | /* 218406 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77310 | /* 218408 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77311 | /* 218415 */ // (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) |
| 77312 | /* 218415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32m), |
| 77313 | /* 218418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77314 | /* 218420 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77315 | /* 218422 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77316 | /* 218426 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77317 | /* 218429 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77318 | /* 218434 */ GIR_RootConstrainSelectedInstOperands, |
| 77319 | /* 218435 */ // GIR_Coverage, 976, |
| 77320 | /* 218435 */ GIR_EraseRootFromParent_Done, |
| 77321 | /* 218436 */ // Label 5072: @218436 |
| 77322 | /* 218436 */ GIM_Try, /*On fail goto*//*Label 5073*/ GIMT_Encode4(218498), // Rule ID 2200 // |
| 77323 | /* 218441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77324 | /* 218444 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77325 | /* 218448 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77326 | /* 218452 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77327 | /* 218456 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77328 | /* 218460 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77329 | /* 218463 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77330 | /* 218467 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77331 | /* 218471 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77332 | /* 218473 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77333 | /* 218480 */ // (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) |
| 77334 | /* 218480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSrm), |
| 77335 | /* 218483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77336 | /* 218485 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77337 | /* 218487 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77338 | /* 218491 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77339 | /* 218496 */ GIR_RootConstrainSelectedInstOperands, |
| 77340 | /* 218497 */ // GIR_Coverage, 2200, |
| 77341 | /* 218497 */ GIR_EraseRootFromParent_Done, |
| 77342 | /* 218498 */ // Label 5073: @218498 |
| 77343 | /* 218498 */ GIM_Try, /*On fail goto*//*Label 5074*/ GIMT_Encode4(218560), // Rule ID 2208 // |
| 77344 | /* 218503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 77345 | /* 218506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77346 | /* 218510 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77347 | /* 218514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77348 | /* 218518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77349 | /* 218522 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77350 | /* 218525 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77351 | /* 218529 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77352 | /* 218533 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77353 | /* 218535 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77354 | /* 218542 */ // (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) |
| 77355 | /* 218542 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSSrm), |
| 77356 | /* 218545 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77357 | /* 218547 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77358 | /* 218549 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77359 | /* 218553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77360 | /* 218558 */ GIR_RootConstrainSelectedInstOperands, |
| 77361 | /* 218559 */ // GIR_Coverage, 2208, |
| 77362 | /* 218559 */ GIR_EraseRootFromParent_Done, |
| 77363 | /* 218560 */ // Label 5074: @218560 |
| 77364 | /* 218560 */ GIM_Try, /*On fail goto*//*Label 5075*/ GIMT_Encode4(218622), // Rule ID 5977 // |
| 77365 | /* 218565 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77366 | /* 218568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77367 | /* 218572 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77368 | /* 218576 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77369 | /* 218580 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77370 | /* 218584 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77371 | /* 218587 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77372 | /* 218591 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77373 | /* 218595 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77374 | /* 218597 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77375 | /* 218604 */ // (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) |
| 77376 | /* 218604 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSSZrm), |
| 77377 | /* 218607 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77378 | /* 218609 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77379 | /* 218611 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77380 | /* 218615 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77381 | /* 218620 */ GIR_RootConstrainSelectedInstOperands, |
| 77382 | /* 218621 */ // GIR_Coverage, 5977, |
| 77383 | /* 218621 */ GIR_EraseRootFromParent_Done, |
| 77384 | /* 218622 */ // Label 5075: @218622 |
| 77385 | /* 218622 */ GIM_Try, /*On fail goto*//*Label 5076*/ GIMT_Encode4(218659), // Rule ID 898 // |
| 77386 | /* 218627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 77387 | /* 218630 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77388 | /* 218634 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77389 | /* 218638 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 77390 | /* 218642 */ // (strict_fmul:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (MUL_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 77391 | /* 218642 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp32), |
| 77392 | /* 218647 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 77393 | /* 218653 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 77394 | /* 218657 */ GIR_RootConstrainSelectedInstOperands, |
| 77395 | /* 218658 */ // GIR_Coverage, 898, |
| 77396 | /* 218658 */ GIR_Done, |
| 77397 | /* 218659 */ // Label 5076: @218659 |
| 77398 | /* 218659 */ GIM_Try, /*On fail goto*//*Label 5077*/ GIMT_Encode4(218690), // Rule ID 2198 // |
| 77399 | /* 218664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77400 | /* 218667 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77401 | /* 218671 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77402 | /* 218675 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77403 | /* 218679 */ // (strict_fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VMULSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 77404 | /* 218679 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSSrr), |
| 77405 | /* 218684 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77406 | /* 218688 */ GIR_RootConstrainSelectedInstOperands, |
| 77407 | /* 218689 */ // GIR_Coverage, 2198, |
| 77408 | /* 218689 */ GIR_Done, |
| 77409 | /* 218690 */ // Label 5077: @218690 |
| 77410 | /* 218690 */ GIM_Try, /*On fail goto*//*Label 5078*/ GIMT_Encode4(218721), // Rule ID 2206 // |
| 77411 | /* 218695 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 77412 | /* 218698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77413 | /* 218702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77414 | /* 218706 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 77415 | /* 218710 */ // (strict_fmul:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (MULSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 77416 | /* 218710 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULSSrr), |
| 77417 | /* 218715 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77418 | /* 218719 */ GIR_RootConstrainSelectedInstOperands, |
| 77419 | /* 218720 */ // GIR_Coverage, 2206, |
| 77420 | /* 218720 */ GIR_Done, |
| 77421 | /* 218721 */ // Label 5078: @218721 |
| 77422 | /* 218721 */ GIM_Try, /*On fail goto*//*Label 5079*/ GIMT_Encode4(218752), // Rule ID 5975 // |
| 77423 | /* 218726 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77424 | /* 218729 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77425 | /* 218733 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77426 | /* 218737 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 77427 | /* 218741 */ // (strict_fmul:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VMULSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 77428 | /* 218741 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSSZrr), |
| 77429 | /* 218746 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77430 | /* 218750 */ GIR_RootConstrainSelectedInstOperands, |
| 77431 | /* 218751 */ // GIR_Coverage, 5975, |
| 77432 | /* 218751 */ GIR_Done, |
| 77433 | /* 218752 */ // Label 5079: @218752 |
| 77434 | /* 218752 */ GIM_Reject, |
| 77435 | /* 218753 */ // Label 5063: @218753 |
| 77436 | /* 218753 */ GIM_Reject, |
| 77437 | /* 218754 */ // Label 5047: @218754 |
| 77438 | /* 218754 */ GIM_Try, /*On fail goto*//*Label 5080*/ GIMT_Encode4(219802), |
| 77439 | /* 218759 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 77440 | /* 218762 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 77441 | /* 218765 */ GIM_Try, /*On fail goto*//*Label 5081*/ GIMT_Encode4(218830), // Rule ID 23354 // |
| 77442 | /* 218770 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77443 | /* 218773 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77444 | /* 218777 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77445 | /* 218781 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77446 | /* 218785 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77447 | /* 218792 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77448 | /* 218796 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77449 | /* 218800 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77450 | /* 218802 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77451 | /* 218809 */ // (strict_fmul:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (MUL_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77452 | /* 218809 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m64), |
| 77453 | /* 218812 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77454 | /* 218814 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77455 | /* 218816 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77456 | /* 218820 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77457 | /* 218823 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77458 | /* 218828 */ GIR_RootConstrainSelectedInstOperands, |
| 77459 | /* 218829 */ // GIR_Coverage, 23354, |
| 77460 | /* 218829 */ GIR_EraseRootFromParent_Done, |
| 77461 | /* 218830 */ // Label 5081: @218830 |
| 77462 | /* 218830 */ GIM_Try, /*On fail goto*//*Label 5082*/ GIMT_Encode4(218895), // Rule ID 23356 // |
| 77463 | /* 218835 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77464 | /* 218838 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77465 | /* 218842 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77466 | /* 218846 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77467 | /* 218850 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77468 | /* 218857 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77469 | /* 218861 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77470 | /* 218865 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77471 | /* 218867 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77472 | /* 218874 */ // (strict_fmul:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (MUL_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77473 | /* 218874 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m64), |
| 77474 | /* 218877 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77475 | /* 218879 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77476 | /* 218881 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77477 | /* 218885 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77478 | /* 218888 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77479 | /* 218893 */ GIR_RootConstrainSelectedInstOperands, |
| 77480 | /* 218894 */ // GIR_Coverage, 23356, |
| 77481 | /* 218894 */ GIR_EraseRootFromParent_Done, |
| 77482 | /* 218895 */ // Label 5082: @218895 |
| 77483 | /* 218895 */ GIM_Try, /*On fail goto*//*Label 5083*/ GIMT_Encode4(218960), // Rule ID 23342 // |
| 77484 | /* 218900 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77485 | /* 218903 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77486 | /* 218907 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77487 | /* 218911 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77488 | /* 218915 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77489 | /* 218918 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77490 | /* 218922 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77491 | /* 218926 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77492 | /* 218930 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77493 | /* 218932 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77494 | /* 218939 */ // (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) |
| 77495 | /* 218939 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m), |
| 77496 | /* 218942 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77497 | /* 218944 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77498 | /* 218946 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77499 | /* 218950 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77500 | /* 218953 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77501 | /* 218958 */ GIR_RootConstrainSelectedInstOperands, |
| 77502 | /* 218959 */ // GIR_Coverage, 23342, |
| 77503 | /* 218959 */ GIR_EraseRootFromParent_Done, |
| 77504 | /* 218960 */ // Label 5083: @218960 |
| 77505 | /* 218960 */ GIM_Try, /*On fail goto*//*Label 5084*/ GIMT_Encode4(219032), // Rule ID 23344 // |
| 77506 | /* 218965 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77507 | /* 218968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77508 | /* 218972 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77509 | /* 218976 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77510 | /* 218980 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77511 | /* 218983 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77512 | /* 218987 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77513 | /* 218994 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77514 | /* 218998 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77515 | /* 219002 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77516 | /* 219004 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77517 | /* 219011 */ // (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) |
| 77518 | /* 219011 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m32), |
| 77519 | /* 219014 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77520 | /* 219016 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77521 | /* 219018 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77522 | /* 219022 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77523 | /* 219025 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77524 | /* 219030 */ GIR_RootConstrainSelectedInstOperands, |
| 77525 | /* 219031 */ // GIR_Coverage, 23344, |
| 77526 | /* 219031 */ GIR_EraseRootFromParent_Done, |
| 77527 | /* 219032 */ // Label 5084: @219032 |
| 77528 | /* 219032 */ GIM_Try, /*On fail goto*//*Label 5085*/ GIMT_Encode4(219094), // Rule ID 23485 // |
| 77529 | /* 219037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77530 | /* 219040 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77531 | /* 219044 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77532 | /* 219048 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77533 | /* 219052 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77534 | /* 219055 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77535 | /* 219059 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77536 | /* 219063 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77537 | /* 219067 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77538 | /* 219069 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77539 | /* 219076 */ // (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) |
| 77540 | /* 219076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 77541 | /* 219079 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77542 | /* 219081 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77543 | /* 219083 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77544 | /* 219087 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77545 | /* 219092 */ GIR_RootConstrainSelectedInstOperands, |
| 77546 | /* 219093 */ // GIR_Coverage, 23485, |
| 77547 | /* 219093 */ GIR_EraseRootFromParent_Done, |
| 77548 | /* 219094 */ // Label 5085: @219094 |
| 77549 | /* 219094 */ GIM_Try, /*On fail goto*//*Label 5086*/ GIMT_Encode4(219156), // Rule ID 23489 // |
| 77550 | /* 219099 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 77551 | /* 219102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77552 | /* 219106 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77553 | /* 219110 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77554 | /* 219114 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77555 | /* 219117 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77556 | /* 219121 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77557 | /* 219125 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77558 | /* 219129 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77559 | /* 219131 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77560 | /* 219138 */ // (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) |
| 77561 | /* 219138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 77562 | /* 219141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77563 | /* 219143 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77564 | /* 219145 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77565 | /* 219149 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77566 | /* 219154 */ GIR_RootConstrainSelectedInstOperands, |
| 77567 | /* 219155 */ // GIR_Coverage, 23489, |
| 77568 | /* 219155 */ GIR_EraseRootFromParent_Done, |
| 77569 | /* 219156 */ // Label 5086: @219156 |
| 77570 | /* 219156 */ GIM_Try, /*On fail goto*//*Label 5087*/ GIMT_Encode4(219218), // Rule ID 24335 // |
| 77571 | /* 219161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77572 | /* 219164 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 77573 | /* 219168 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77574 | /* 219172 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77575 | /* 219176 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77576 | /* 219179 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77577 | /* 219183 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77578 | /* 219187 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 77579 | /* 219191 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77580 | /* 219193 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77581 | /* 219200 */ // (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) |
| 77582 | /* 219200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 77583 | /* 219203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77584 | /* 219205 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77585 | /* 219207 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77586 | /* 219211 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77587 | /* 219216 */ GIR_RootConstrainSelectedInstOperands, |
| 77588 | /* 219217 */ // GIR_Coverage, 24335, |
| 77589 | /* 219217 */ GIR_EraseRootFromParent_Done, |
| 77590 | /* 219218 */ // Label 5087: @219218 |
| 77591 | /* 219218 */ GIM_Try, /*On fail goto*//*Label 5088*/ GIMT_Encode4(219283), // Rule ID 990 // |
| 77592 | /* 219223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77593 | /* 219226 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77594 | /* 219230 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77595 | /* 219234 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77596 | /* 219238 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77597 | /* 219242 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77598 | /* 219249 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77599 | /* 219253 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77600 | /* 219255 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77601 | /* 219262 */ // (strict_fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77602 | /* 219262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m64), |
| 77603 | /* 219265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77604 | /* 219267 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77605 | /* 219269 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77606 | /* 219273 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77607 | /* 219276 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77608 | /* 219281 */ GIR_RootConstrainSelectedInstOperands, |
| 77609 | /* 219282 */ // GIR_Coverage, 990, |
| 77610 | /* 219282 */ GIR_EraseRootFromParent_Done, |
| 77611 | /* 219283 */ // Label 5088: @219283 |
| 77612 | /* 219283 */ GIM_Try, /*On fail goto*//*Label 5089*/ GIMT_Encode4(219348), // Rule ID 992 // |
| 77613 | /* 219288 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77614 | /* 219291 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77615 | /* 219295 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77616 | /* 219299 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77617 | /* 219303 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77618 | /* 219307 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77619 | /* 219314 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77620 | /* 219318 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77621 | /* 219320 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77622 | /* 219327 */ // (strict_fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77623 | /* 219327 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m64), |
| 77624 | /* 219330 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77625 | /* 219332 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77626 | /* 219334 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77627 | /* 219338 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77628 | /* 219341 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77629 | /* 219346 */ GIR_RootConstrainSelectedInstOperands, |
| 77630 | /* 219347 */ // GIR_Coverage, 992, |
| 77631 | /* 219347 */ GIR_EraseRootFromParent_Done, |
| 77632 | /* 219348 */ // Label 5089: @219348 |
| 77633 | /* 219348 */ GIM_Try, /*On fail goto*//*Label 5090*/ GIMT_Encode4(219413), // Rule ID 978 // |
| 77634 | /* 219353 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77635 | /* 219356 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77636 | /* 219360 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77637 | /* 219364 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77638 | /* 219368 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77639 | /* 219372 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77640 | /* 219375 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77641 | /* 219379 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77642 | /* 219383 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77643 | /* 219385 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77644 | /* 219392 */ // (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) |
| 77645 | /* 219392 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m), |
| 77646 | /* 219395 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77647 | /* 219397 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77648 | /* 219399 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77649 | /* 219403 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77650 | /* 219406 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77651 | /* 219411 */ GIR_RootConstrainSelectedInstOperands, |
| 77652 | /* 219412 */ // GIR_Coverage, 978, |
| 77653 | /* 219412 */ GIR_EraseRootFromParent_Done, |
| 77654 | /* 219413 */ // Label 5090: @219413 |
| 77655 | /* 219413 */ GIM_Try, /*On fail goto*//*Label 5091*/ GIMT_Encode4(219485), // Rule ID 980 // |
| 77656 | /* 219418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77657 | /* 219421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77658 | /* 219425 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77659 | /* 219429 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77660 | /* 219433 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77661 | /* 219437 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77662 | /* 219440 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77663 | /* 219444 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77664 | /* 219451 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77665 | /* 219455 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77666 | /* 219457 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77667 | /* 219464 */ // (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) |
| 77668 | /* 219464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64m32), |
| 77669 | /* 219467 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77670 | /* 219469 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77671 | /* 219471 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77672 | /* 219475 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77673 | /* 219478 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77674 | /* 219483 */ GIR_RootConstrainSelectedInstOperands, |
| 77675 | /* 219484 */ // GIR_Coverage, 980, |
| 77676 | /* 219484 */ GIR_EraseRootFromParent_Done, |
| 77677 | /* 219485 */ // Label 5091: @219485 |
| 77678 | /* 219485 */ GIM_Try, /*On fail goto*//*Label 5092*/ GIMT_Encode4(219547), // Rule ID 2204 // |
| 77679 | /* 219490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77680 | /* 219493 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77681 | /* 219497 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77682 | /* 219501 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77683 | /* 219505 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77684 | /* 219509 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77685 | /* 219512 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77686 | /* 219516 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77687 | /* 219520 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77688 | /* 219522 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77689 | /* 219529 */ // (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) |
| 77690 | /* 219529 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDrm), |
| 77691 | /* 219532 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77692 | /* 219534 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77693 | /* 219536 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77694 | /* 219540 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77695 | /* 219545 */ GIR_RootConstrainSelectedInstOperands, |
| 77696 | /* 219546 */ // GIR_Coverage, 2204, |
| 77697 | /* 219546 */ GIR_EraseRootFromParent_Done, |
| 77698 | /* 219547 */ // Label 5092: @219547 |
| 77699 | /* 219547 */ GIM_Try, /*On fail goto*//*Label 5093*/ GIMT_Encode4(219609), // Rule ID 2212 // |
| 77700 | /* 219552 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 77701 | /* 219555 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77702 | /* 219559 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77703 | /* 219563 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77704 | /* 219567 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77705 | /* 219571 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77706 | /* 219574 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77707 | /* 219578 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77708 | /* 219582 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77709 | /* 219584 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77710 | /* 219591 */ // (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) |
| 77711 | /* 219591 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MULSDrm), |
| 77712 | /* 219594 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77713 | /* 219596 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77714 | /* 219598 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77715 | /* 219602 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77716 | /* 219607 */ GIR_RootConstrainSelectedInstOperands, |
| 77717 | /* 219608 */ // GIR_Coverage, 2212, |
| 77718 | /* 219608 */ GIR_EraseRootFromParent_Done, |
| 77719 | /* 219609 */ // Label 5093: @219609 |
| 77720 | /* 219609 */ GIM_Try, /*On fail goto*//*Label 5094*/ GIMT_Encode4(219671), // Rule ID 5996 // |
| 77721 | /* 219614 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77722 | /* 219617 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 77723 | /* 219621 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 77724 | /* 219625 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77725 | /* 219629 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77726 | /* 219633 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77727 | /* 219636 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77728 | /* 219640 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77729 | /* 219644 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77730 | /* 219646 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77731 | /* 219653 */ // (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) |
| 77732 | /* 219653 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULSDZrm), |
| 77733 | /* 219656 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77734 | /* 219658 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77735 | /* 219660 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77736 | /* 219664 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77737 | /* 219669 */ GIR_RootConstrainSelectedInstOperands, |
| 77738 | /* 219670 */ // GIR_Coverage, 5996, |
| 77739 | /* 219670 */ GIR_EraseRootFromParent_Done, |
| 77740 | /* 219671 */ // Label 5094: @219671 |
| 77741 | /* 219671 */ GIM_Try, /*On fail goto*//*Label 5095*/ GIMT_Encode4(219708), // Rule ID 900 // |
| 77742 | /* 219676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 77743 | /* 219679 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77744 | /* 219683 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77745 | /* 219687 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 77746 | /* 219691 */ // (strict_fmul:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (MUL_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 77747 | /* 219691 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp64), |
| 77748 | /* 219696 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 77749 | /* 219702 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 77750 | /* 219706 */ GIR_RootConstrainSelectedInstOperands, |
| 77751 | /* 219707 */ // GIR_Coverage, 900, |
| 77752 | /* 219707 */ GIR_Done, |
| 77753 | /* 219708 */ // Label 5095: @219708 |
| 77754 | /* 219708 */ GIM_Try, /*On fail goto*//*Label 5096*/ GIMT_Encode4(219739), // Rule ID 2202 // |
| 77755 | /* 219713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 77756 | /* 219716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77757 | /* 219720 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77758 | /* 219724 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77759 | /* 219728 */ // (strict_fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VMULSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 77760 | /* 219728 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSDrr), |
| 77761 | /* 219733 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77762 | /* 219737 */ GIR_RootConstrainSelectedInstOperands, |
| 77763 | /* 219738 */ // GIR_Coverage, 2202, |
| 77764 | /* 219738 */ GIR_Done, |
| 77765 | /* 219739 */ // Label 5096: @219739 |
| 77766 | /* 219739 */ GIM_Try, /*On fail goto*//*Label 5097*/ GIMT_Encode4(219770), // Rule ID 2210 // |
| 77767 | /* 219744 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 77768 | /* 219747 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77769 | /* 219751 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77770 | /* 219755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 77771 | /* 219759 */ // (strict_fmul:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (MULSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 77772 | /* 219759 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULSDrr), |
| 77773 | /* 219764 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77774 | /* 219768 */ GIR_RootConstrainSelectedInstOperands, |
| 77775 | /* 219769 */ // GIR_Coverage, 2210, |
| 77776 | /* 219769 */ GIR_Done, |
| 77777 | /* 219770 */ // Label 5097: @219770 |
| 77778 | /* 219770 */ GIM_Try, /*On fail goto*//*Label 5098*/ GIMT_Encode4(219801), // Rule ID 5994 // |
| 77779 | /* 219775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 77780 | /* 219778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 77781 | /* 219782 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 77782 | /* 219786 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 77783 | /* 219790 */ // (strict_fmul:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VMULSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 77784 | /* 219790 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULSDZrr), |
| 77785 | /* 219795 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 77786 | /* 219799 */ GIR_RootConstrainSelectedInstOperands, |
| 77787 | /* 219800 */ // GIR_Coverage, 5994, |
| 77788 | /* 219800 */ GIR_Done, |
| 77789 | /* 219801 */ // Label 5098: @219801 |
| 77790 | /* 219801 */ GIM_Reject, |
| 77791 | /* 219802 */ // Label 5080: @219802 |
| 77792 | /* 219802 */ GIM_Reject, |
| 77793 | /* 219803 */ // Label 5048: @219803 |
| 77794 | /* 219803 */ GIM_Try, /*On fail goto*//*Label 5099*/ GIMT_Encode4(220368), |
| 77795 | /* 219808 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 77796 | /* 219811 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 77797 | /* 219814 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77798 | /* 219818 */ GIM_Try, /*On fail goto*//*Label 5100*/ GIMT_Encode4(219879), // Rule ID 23358 // |
| 77799 | /* 219823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77800 | /* 219826 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77801 | /* 219830 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77802 | /* 219834 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77803 | /* 219841 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77804 | /* 219845 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77805 | /* 219849 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77806 | /* 219851 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77807 | /* 219858 */ // (strict_fmul:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (MUL_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77808 | /* 219858 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m80), |
| 77809 | /* 219861 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77810 | /* 219863 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77811 | /* 219865 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77812 | /* 219869 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77813 | /* 219872 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77814 | /* 219877 */ GIR_RootConstrainSelectedInstOperands, |
| 77815 | /* 219878 */ // GIR_Coverage, 23358, |
| 77816 | /* 219878 */ GIR_EraseRootFromParent_Done, |
| 77817 | /* 219879 */ // Label 5100: @219879 |
| 77818 | /* 219879 */ GIM_Try, /*On fail goto*//*Label 5101*/ GIMT_Encode4(219940), // Rule ID 23360 // |
| 77819 | /* 219884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77820 | /* 219887 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77821 | /* 219891 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77822 | /* 219895 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77823 | /* 219902 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77824 | /* 219906 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77825 | /* 219910 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77826 | /* 219912 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77827 | /* 219919 */ // (strict_fmul:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (MUL_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77828 | /* 219919 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m80), |
| 77829 | /* 219922 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77830 | /* 219924 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77831 | /* 219926 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77832 | /* 219930 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77833 | /* 219933 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77834 | /* 219938 */ GIR_RootConstrainSelectedInstOperands, |
| 77835 | /* 219939 */ // GIR_Coverage, 23360, |
| 77836 | /* 219939 */ GIR_EraseRootFromParent_Done, |
| 77837 | /* 219940 */ // Label 5101: @219940 |
| 77838 | /* 219940 */ GIM_Try, /*On fail goto*//*Label 5102*/ GIMT_Encode4(220008), // Rule ID 23346 // |
| 77839 | /* 219945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77840 | /* 219948 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77841 | /* 219952 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77842 | /* 219956 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77843 | /* 219959 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77844 | /* 219963 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77845 | /* 219970 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77846 | /* 219974 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77847 | /* 219978 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77848 | /* 219980 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77849 | /* 219987 */ // (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) |
| 77850 | /* 219987 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m32), |
| 77851 | /* 219990 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77852 | /* 219992 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77853 | /* 219994 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77854 | /* 219998 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77855 | /* 220001 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77856 | /* 220006 */ GIR_RootConstrainSelectedInstOperands, |
| 77857 | /* 220007 */ // GIR_Coverage, 23346, |
| 77858 | /* 220007 */ GIR_EraseRootFromParent_Done, |
| 77859 | /* 220008 */ // Label 5102: @220008 |
| 77860 | /* 220008 */ GIM_Try, /*On fail goto*//*Label 5103*/ GIMT_Encode4(220076), // Rule ID 23348 // |
| 77861 | /* 220013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77862 | /* 220016 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77863 | /* 220020 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77864 | /* 220024 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77865 | /* 220027 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77866 | /* 220031 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 77867 | /* 220038 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77868 | /* 220042 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77869 | /* 220046 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77870 | /* 220048 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77871 | /* 220055 */ // (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) |
| 77872 | /* 220055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m64), |
| 77873 | /* 220058 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77874 | /* 220060 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 77875 | /* 220062 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77876 | /* 220066 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77877 | /* 220069 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77878 | /* 220074 */ GIR_RootConstrainSelectedInstOperands, |
| 77879 | /* 220075 */ // GIR_Coverage, 23348, |
| 77880 | /* 220075 */ GIR_EraseRootFromParent_Done, |
| 77881 | /* 220076 */ // Label 5103: @220076 |
| 77882 | /* 220076 */ GIM_Try, /*On fail goto*//*Label 5104*/ GIMT_Encode4(220137), // Rule ID 994 // |
| 77883 | /* 220081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77884 | /* 220084 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77885 | /* 220088 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77886 | /* 220092 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77887 | /* 220096 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 77888 | /* 220103 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77889 | /* 220107 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77890 | /* 220109 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77891 | /* 220116 */ // (strict_fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (MUL_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77892 | /* 220116 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI16m80), |
| 77893 | /* 220119 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77894 | /* 220121 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77895 | /* 220123 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77896 | /* 220127 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77897 | /* 220130 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77898 | /* 220135 */ GIR_RootConstrainSelectedInstOperands, |
| 77899 | /* 220136 */ // GIR_Coverage, 994, |
| 77900 | /* 220136 */ GIR_EraseRootFromParent_Done, |
| 77901 | /* 220137 */ // Label 5104: @220137 |
| 77902 | /* 220137 */ GIM_Try, /*On fail goto*//*Label 5105*/ GIMT_Encode4(220198), // Rule ID 996 // |
| 77903 | /* 220142 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77904 | /* 220145 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77905 | /* 220149 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77906 | /* 220153 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 77907 | /* 220157 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77908 | /* 220164 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77909 | /* 220168 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77910 | /* 220170 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77911 | /* 220177 */ // (strict_fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (MUL_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 77912 | /* 220177 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_FpI32m80), |
| 77913 | /* 220180 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77914 | /* 220182 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77915 | /* 220184 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77916 | /* 220188 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77917 | /* 220191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77918 | /* 220196 */ GIR_RootConstrainSelectedInstOperands, |
| 77919 | /* 220197 */ // GIR_Coverage, 996, |
| 77920 | /* 220197 */ GIR_EraseRootFromParent_Done, |
| 77921 | /* 220198 */ // Label 5105: @220198 |
| 77922 | /* 220198 */ GIM_Try, /*On fail goto*//*Label 5106*/ GIMT_Encode4(220266), // Rule ID 982 // |
| 77923 | /* 220203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77924 | /* 220206 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77925 | /* 220210 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77926 | /* 220214 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77927 | /* 220218 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77928 | /* 220221 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77929 | /* 220225 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 77930 | /* 220232 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77931 | /* 220236 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77932 | /* 220238 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77933 | /* 220245 */ // (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) |
| 77934 | /* 220245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m32), |
| 77935 | /* 220248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77936 | /* 220250 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77937 | /* 220252 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77938 | /* 220256 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77939 | /* 220259 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77940 | /* 220264 */ GIR_RootConstrainSelectedInstOperands, |
| 77941 | /* 220265 */ // GIR_Coverage, 982, |
| 77942 | /* 220265 */ GIR_EraseRootFromParent_Done, |
| 77943 | /* 220266 */ // Label 5106: @220266 |
| 77944 | /* 220266 */ GIM_Try, /*On fail goto*//*Label 5107*/ GIMT_Encode4(220334), // Rule ID 984 // |
| 77945 | /* 220271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77946 | /* 220274 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77947 | /* 220278 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 77948 | /* 220282 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77949 | /* 220286 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77950 | /* 220289 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77951 | /* 220293 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 77952 | /* 220300 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77953 | /* 220304 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77954 | /* 220306 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77955 | /* 220313 */ // (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) |
| 77956 | /* 220313 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80m64), |
| 77957 | /* 220316 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77958 | /* 220318 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 77959 | /* 220320 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 77960 | /* 220324 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 77961 | /* 220327 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 77962 | /* 220332 */ GIR_RootConstrainSelectedInstOperands, |
| 77963 | /* 220333 */ // GIR_Coverage, 984, |
| 77964 | /* 220333 */ GIR_EraseRootFromParent_Done, |
| 77965 | /* 220334 */ // Label 5107: @220334 |
| 77966 | /* 220334 */ GIM_Try, /*On fail goto*//*Label 5108*/ GIMT_Encode4(220367), // Rule ID 902 // |
| 77967 | /* 220339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 77968 | /* 220342 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77969 | /* 220346 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 77970 | /* 220350 */ // (strict_fmul:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (MUL_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 77971 | /* 220350 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MUL_Fp80), |
| 77972 | /* 220355 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 77973 | /* 220361 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 77974 | /* 220365 */ GIR_RootConstrainSelectedInstOperands, |
| 77975 | /* 220366 */ // GIR_Coverage, 902, |
| 77976 | /* 220366 */ GIR_Done, |
| 77977 | /* 220367 */ // Label 5108: @220367 |
| 77978 | /* 220367 */ GIM_Reject, |
| 77979 | /* 220368 */ // Label 5099: @220368 |
| 77980 | /* 220368 */ GIM_Reject, |
| 77981 | /* 220369 */ // Label 5049: @220369 |
| 77982 | /* 220369 */ GIM_Try, /*On fail goto*//*Label 5109*/ GIMT_Encode4(220722), |
| 77983 | /* 220374 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 77984 | /* 220377 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 77985 | /* 220380 */ GIM_Try, /*On fail goto*//*Label 5110*/ GIMT_Encode4(220442), // Rule ID 23473 // |
| 77986 | /* 220385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 77987 | /* 220388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77988 | /* 220392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 77989 | /* 220396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 77990 | /* 220400 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 77991 | /* 220403 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 77992 | /* 220407 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 77993 | /* 220411 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 77994 | /* 220415 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 77995 | /* 220417 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 77996 | /* 220424 */ // (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) |
| 77997 | /* 220424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDrm), |
| 77998 | /* 220427 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 77999 | /* 220429 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78000 | /* 220431 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78001 | /* 220435 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78002 | /* 220440 */ GIR_RootConstrainSelectedInstOperands, |
| 78003 | /* 220441 */ // GIR_Coverage, 23473, |
| 78004 | /* 220441 */ GIR_EraseRootFromParent_Done, |
| 78005 | /* 220442 */ // Label 5110: @220442 |
| 78006 | /* 220442 */ GIM_Try, /*On fail goto*//*Label 5111*/ GIMT_Encode4(220504), // Rule ID 24449 // |
| 78007 | /* 220447 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78008 | /* 220450 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78009 | /* 220454 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78010 | /* 220458 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78011 | /* 220462 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78012 | /* 220465 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78013 | /* 220469 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78014 | /* 220473 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78015 | /* 220477 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78016 | /* 220479 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78017 | /* 220486 */ // (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) |
| 78018 | /* 220486 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rm), |
| 78019 | /* 220489 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78020 | /* 220491 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78021 | /* 220493 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78022 | /* 220497 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78023 | /* 220502 */ GIR_RootConstrainSelectedInstOperands, |
| 78024 | /* 220503 */ // GIR_Coverage, 24449, |
| 78025 | /* 220503 */ GIR_EraseRootFromParent_Done, |
| 78026 | /* 220504 */ // Label 5111: @220504 |
| 78027 | /* 220504 */ GIM_Try, /*On fail goto*//*Label 5112*/ GIMT_Encode4(220566), // Rule ID 2180 // |
| 78028 | /* 220509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78029 | /* 220512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78030 | /* 220516 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78031 | /* 220520 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78032 | /* 220524 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78033 | /* 220528 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78034 | /* 220531 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78035 | /* 220535 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78036 | /* 220539 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78037 | /* 220541 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78038 | /* 220548 */ // (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) |
| 78039 | /* 220548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDrm), |
| 78040 | /* 220551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78041 | /* 220553 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78042 | /* 220555 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78043 | /* 220559 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78044 | /* 220564 */ GIR_RootConstrainSelectedInstOperands, |
| 78045 | /* 220565 */ // GIR_Coverage, 2180, |
| 78046 | /* 220565 */ GIR_EraseRootFromParent_Done, |
| 78047 | /* 220566 */ // Label 5112: @220566 |
| 78048 | /* 220566 */ GIM_Try, /*On fail goto*//*Label 5113*/ GIMT_Encode4(220628), // Rule ID 6429 // |
| 78049 | /* 220571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78050 | /* 220574 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78051 | /* 220578 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78052 | /* 220582 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78053 | /* 220586 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78054 | /* 220590 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78055 | /* 220593 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78056 | /* 220597 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78057 | /* 220601 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78058 | /* 220603 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78059 | /* 220610 */ // (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) |
| 78060 | /* 220610 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rm), |
| 78061 | /* 220613 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78062 | /* 220615 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78063 | /* 220617 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78064 | /* 220621 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78065 | /* 220626 */ GIR_RootConstrainSelectedInstOperands, |
| 78066 | /* 220627 */ // GIR_Coverage, 6429, |
| 78067 | /* 220627 */ GIR_EraseRootFromParent_Done, |
| 78068 | /* 220628 */ // Label 5113: @220628 |
| 78069 | /* 220628 */ GIM_Try, /*On fail goto*//*Label 5114*/ GIMT_Encode4(220659), // Rule ID 2178 // |
| 78070 | /* 220633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78071 | /* 220636 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78072 | /* 220640 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78073 | /* 220644 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78074 | /* 220648 */ // (strict_fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VMULPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 78075 | /* 220648 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDrr), |
| 78076 | /* 220653 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78077 | /* 220657 */ GIR_RootConstrainSelectedInstOperands, |
| 78078 | /* 220658 */ // GIR_Coverage, 2178, |
| 78079 | /* 220658 */ GIR_Done, |
| 78080 | /* 220659 */ // Label 5114: @220659 |
| 78081 | /* 220659 */ GIM_Try, /*On fail goto*//*Label 5115*/ GIMT_Encode4(220690), // Rule ID 2194 // |
| 78082 | /* 220664 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 78083 | /* 220667 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78084 | /* 220671 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78085 | /* 220675 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78086 | /* 220679 */ // (strict_fmul:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (MULPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 78087 | /* 220679 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULPDrr), |
| 78088 | /* 220684 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78089 | /* 220688 */ GIR_RootConstrainSelectedInstOperands, |
| 78090 | /* 220689 */ // GIR_Coverage, 2194, |
| 78091 | /* 220689 */ GIR_Done, |
| 78092 | /* 220690 */ // Label 5115: @220690 |
| 78093 | /* 220690 */ GIM_Try, /*On fail goto*//*Label 5116*/ GIMT_Encode4(220721), // Rule ID 6425 // |
| 78094 | /* 220695 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78095 | /* 220698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78096 | /* 220702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78097 | /* 220706 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78098 | /* 220710 */ // (strict_fmul:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VMULPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 78099 | /* 220710 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZ128rr), |
| 78100 | /* 220715 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78101 | /* 220719 */ GIR_RootConstrainSelectedInstOperands, |
| 78102 | /* 220720 */ // GIR_Coverage, 6425, |
| 78103 | /* 220720 */ GIR_Done, |
| 78104 | /* 220721 */ // Label 5116: @220721 |
| 78105 | /* 220721 */ GIM_Reject, |
| 78106 | /* 220722 */ // Label 5109: @220722 |
| 78107 | /* 220722 */ GIM_Reject, |
| 78108 | /* 220723 */ // Label 5050: @220723 |
| 78109 | /* 220723 */ GIM_Try, /*On fail goto*//*Label 5117*/ GIMT_Encode4(221076), |
| 78110 | /* 220728 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 78111 | /* 220731 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 78112 | /* 220734 */ GIM_Try, /*On fail goto*//*Label 5118*/ GIMT_Encode4(220796), // Rule ID 23471 // |
| 78113 | /* 220739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78114 | /* 220742 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78115 | /* 220746 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78116 | /* 220750 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78117 | /* 220754 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78118 | /* 220757 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78119 | /* 220761 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78120 | /* 220765 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78121 | /* 220769 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78122 | /* 220771 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78123 | /* 220778 */ // (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) |
| 78124 | /* 220778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSrm), |
| 78125 | /* 220781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78126 | /* 220783 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78127 | /* 220785 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78128 | /* 220789 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78129 | /* 220794 */ GIR_RootConstrainSelectedInstOperands, |
| 78130 | /* 220795 */ // GIR_Coverage, 23471, |
| 78131 | /* 220795 */ GIR_EraseRootFromParent_Done, |
| 78132 | /* 220796 */ // Label 5118: @220796 |
| 78133 | /* 220796 */ GIM_Try, /*On fail goto*//*Label 5119*/ GIMT_Encode4(220858), // Rule ID 24433 // |
| 78134 | /* 220801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78135 | /* 220804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78136 | /* 220808 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78137 | /* 220812 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78138 | /* 220816 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78139 | /* 220819 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78140 | /* 220823 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78141 | /* 220827 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78142 | /* 220831 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78143 | /* 220833 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78144 | /* 220840 */ // (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) |
| 78145 | /* 220840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rm), |
| 78146 | /* 220843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78147 | /* 220845 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78148 | /* 220847 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78149 | /* 220851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78150 | /* 220856 */ GIR_RootConstrainSelectedInstOperands, |
| 78151 | /* 220857 */ // GIR_Coverage, 24433, |
| 78152 | /* 220857 */ GIR_EraseRootFromParent_Done, |
| 78153 | /* 220858 */ // Label 5119: @220858 |
| 78154 | /* 220858 */ GIM_Try, /*On fail goto*//*Label 5120*/ GIMT_Encode4(220920), // Rule ID 2176 // |
| 78155 | /* 220863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78156 | /* 220866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78157 | /* 220870 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78158 | /* 220874 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78159 | /* 220878 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78160 | /* 220882 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78161 | /* 220885 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78162 | /* 220889 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78163 | /* 220893 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78164 | /* 220895 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78165 | /* 220902 */ // (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) |
| 78166 | /* 220902 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSrm), |
| 78167 | /* 220905 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78168 | /* 220907 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78169 | /* 220909 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78170 | /* 220913 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78171 | /* 220918 */ GIR_RootConstrainSelectedInstOperands, |
| 78172 | /* 220919 */ // GIR_Coverage, 2176, |
| 78173 | /* 220919 */ GIR_EraseRootFromParent_Done, |
| 78174 | /* 220920 */ // Label 5120: @220920 |
| 78175 | /* 220920 */ GIM_Try, /*On fail goto*//*Label 5121*/ GIMT_Encode4(220982), // Rule ID 6405 // |
| 78176 | /* 220925 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78177 | /* 220928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78178 | /* 220932 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78179 | /* 220936 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78180 | /* 220940 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78181 | /* 220944 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78182 | /* 220947 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78183 | /* 220951 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78184 | /* 220955 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78185 | /* 220957 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78186 | /* 220964 */ // (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) |
| 78187 | /* 220964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rm), |
| 78188 | /* 220967 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78189 | /* 220969 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78190 | /* 220971 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78191 | /* 220975 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78192 | /* 220980 */ GIR_RootConstrainSelectedInstOperands, |
| 78193 | /* 220981 */ // GIR_Coverage, 6405, |
| 78194 | /* 220981 */ GIR_EraseRootFromParent_Done, |
| 78195 | /* 220982 */ // Label 5121: @220982 |
| 78196 | /* 220982 */ GIM_Try, /*On fail goto*//*Label 5122*/ GIMT_Encode4(221013), // Rule ID 2174 // |
| 78197 | /* 220987 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78198 | /* 220990 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78199 | /* 220994 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78200 | /* 220998 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78201 | /* 221002 */ // (strict_fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VMULPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 78202 | /* 221002 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSrr), |
| 78203 | /* 221007 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78204 | /* 221011 */ GIR_RootConstrainSelectedInstOperands, |
| 78205 | /* 221012 */ // GIR_Coverage, 2174, |
| 78206 | /* 221012 */ GIR_Done, |
| 78207 | /* 221013 */ // Label 5122: @221013 |
| 78208 | /* 221013 */ GIM_Try, /*On fail goto*//*Label 5123*/ GIMT_Encode4(221044), // Rule ID 2190 // |
| 78209 | /* 221018 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 78210 | /* 221021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78211 | /* 221025 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78212 | /* 221029 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 78213 | /* 221033 */ // (strict_fmul:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (MULPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 78214 | /* 221033 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::MULPSrr), |
| 78215 | /* 221038 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78216 | /* 221042 */ GIR_RootConstrainSelectedInstOperands, |
| 78217 | /* 221043 */ // GIR_Coverage, 2190, |
| 78218 | /* 221043 */ GIR_Done, |
| 78219 | /* 221044 */ // Label 5123: @221044 |
| 78220 | /* 221044 */ GIM_Try, /*On fail goto*//*Label 5124*/ GIMT_Encode4(221075), // Rule ID 6401 // |
| 78221 | /* 221049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78222 | /* 221052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78223 | /* 221056 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78224 | /* 221060 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78225 | /* 221064 */ // (strict_fmul:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VMULPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 78226 | /* 221064 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZ128rr), |
| 78227 | /* 221069 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78228 | /* 221073 */ GIR_RootConstrainSelectedInstOperands, |
| 78229 | /* 221074 */ // GIR_Coverage, 6401, |
| 78230 | /* 221074 */ GIR_Done, |
| 78231 | /* 221075 */ // Label 5124: @221075 |
| 78232 | /* 221075 */ GIM_Reject, |
| 78233 | /* 221076 */ // Label 5117: @221076 |
| 78234 | /* 221076 */ GIM_Reject, |
| 78235 | /* 221077 */ // Label 5051: @221077 |
| 78236 | /* 221077 */ GIM_Try, /*On fail goto*//*Label 5125*/ GIMT_Encode4(221399), |
| 78237 | /* 221082 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 78238 | /* 221085 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 78239 | /* 221088 */ GIM_Try, /*On fail goto*//*Label 5126*/ GIMT_Encode4(221150), // Rule ID 23477 // |
| 78240 | /* 221093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78241 | /* 221096 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78242 | /* 221100 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78243 | /* 221104 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78244 | /* 221108 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78245 | /* 221111 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78246 | /* 221115 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78247 | /* 221119 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78248 | /* 221123 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78249 | /* 221125 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78250 | /* 221132 */ // (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) |
| 78251 | /* 221132 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDYrm), |
| 78252 | /* 221135 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78253 | /* 221137 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78254 | /* 221139 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78255 | /* 221143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78256 | /* 221148 */ GIR_RootConstrainSelectedInstOperands, |
| 78257 | /* 221149 */ // GIR_Coverage, 23477, |
| 78258 | /* 221149 */ GIR_EraseRootFromParent_Done, |
| 78259 | /* 221150 */ // Label 5126: @221150 |
| 78260 | /* 221150 */ GIM_Try, /*On fail goto*//*Label 5127*/ GIMT_Encode4(221212), // Rule ID 24457 // |
| 78261 | /* 221155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78262 | /* 221158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78263 | /* 221162 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78264 | /* 221166 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78265 | /* 221170 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78266 | /* 221173 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78267 | /* 221177 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78268 | /* 221181 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78269 | /* 221185 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78270 | /* 221187 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78271 | /* 221194 */ // (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) |
| 78272 | /* 221194 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rm), |
| 78273 | /* 221197 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78274 | /* 221199 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78275 | /* 221201 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78276 | /* 221205 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78277 | /* 221210 */ GIR_RootConstrainSelectedInstOperands, |
| 78278 | /* 221211 */ // GIR_Coverage, 24457, |
| 78279 | /* 221211 */ GIR_EraseRootFromParent_Done, |
| 78280 | /* 221212 */ // Label 5127: @221212 |
| 78281 | /* 221212 */ GIM_Try, /*On fail goto*//*Label 5128*/ GIMT_Encode4(221274), // Rule ID 2188 // |
| 78282 | /* 221217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78283 | /* 221220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78284 | /* 221224 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78285 | /* 221228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78286 | /* 221232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78287 | /* 221236 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78288 | /* 221239 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78289 | /* 221243 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78290 | /* 221247 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78291 | /* 221249 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78292 | /* 221256 */ // (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) |
| 78293 | /* 221256 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDYrm), |
| 78294 | /* 221259 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78295 | /* 221261 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78296 | /* 221263 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78297 | /* 221267 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78298 | /* 221272 */ GIR_RootConstrainSelectedInstOperands, |
| 78299 | /* 221273 */ // GIR_Coverage, 2188, |
| 78300 | /* 221273 */ GIR_EraseRootFromParent_Done, |
| 78301 | /* 221274 */ // Label 5128: @221274 |
| 78302 | /* 221274 */ GIM_Try, /*On fail goto*//*Label 5129*/ GIMT_Encode4(221336), // Rule ID 6441 // |
| 78303 | /* 221279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78304 | /* 221282 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78305 | /* 221286 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78306 | /* 221290 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78307 | /* 221294 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78308 | /* 221298 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78309 | /* 221301 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78310 | /* 221305 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78311 | /* 221309 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78312 | /* 221311 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78313 | /* 221318 */ // (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) |
| 78314 | /* 221318 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rm), |
| 78315 | /* 221321 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78316 | /* 221323 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78317 | /* 221325 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78318 | /* 221329 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78319 | /* 221334 */ GIR_RootConstrainSelectedInstOperands, |
| 78320 | /* 221335 */ // GIR_Coverage, 6441, |
| 78321 | /* 221335 */ GIR_EraseRootFromParent_Done, |
| 78322 | /* 221336 */ // Label 5129: @221336 |
| 78323 | /* 221336 */ GIM_Try, /*On fail goto*//*Label 5130*/ GIMT_Encode4(221367), // Rule ID 2186 // |
| 78324 | /* 221341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78325 | /* 221344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78326 | /* 221348 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78327 | /* 221352 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78328 | /* 221356 */ // (strict_fmul:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VMULPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 78329 | /* 221356 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDYrr), |
| 78330 | /* 221361 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78331 | /* 221365 */ GIR_RootConstrainSelectedInstOperands, |
| 78332 | /* 221366 */ // GIR_Coverage, 2186, |
| 78333 | /* 221366 */ GIR_Done, |
| 78334 | /* 221367 */ // Label 5130: @221367 |
| 78335 | /* 221367 */ GIM_Try, /*On fail goto*//*Label 5131*/ GIMT_Encode4(221398), // Rule ID 6437 // |
| 78336 | /* 221372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78337 | /* 221375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78338 | /* 221379 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78339 | /* 221383 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78340 | /* 221387 */ // (strict_fmul:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VMULPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 78341 | /* 221387 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZ256rr), |
| 78342 | /* 221392 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78343 | /* 221396 */ GIR_RootConstrainSelectedInstOperands, |
| 78344 | /* 221397 */ // GIR_Coverage, 6437, |
| 78345 | /* 221397 */ GIR_Done, |
| 78346 | /* 221398 */ // Label 5131: @221398 |
| 78347 | /* 221398 */ GIM_Reject, |
| 78348 | /* 221399 */ // Label 5125: @221399 |
| 78349 | /* 221399 */ GIM_Reject, |
| 78350 | /* 221400 */ // Label 5052: @221400 |
| 78351 | /* 221400 */ GIM_Try, /*On fail goto*//*Label 5132*/ GIMT_Encode4(221559), |
| 78352 | /* 221405 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 78353 | /* 221408 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 78354 | /* 221411 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78355 | /* 221415 */ GIM_Try, /*On fail goto*//*Label 5133*/ GIMT_Encode4(221473), // Rule ID 24473 // |
| 78356 | /* 221420 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78357 | /* 221423 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78358 | /* 221427 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78359 | /* 221431 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78360 | /* 221434 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78361 | /* 221438 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78362 | /* 221442 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78363 | /* 221446 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78364 | /* 221448 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78365 | /* 221455 */ // (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) |
| 78366 | /* 221455 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rm), |
| 78367 | /* 221458 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78368 | /* 221460 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78369 | /* 221462 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78370 | /* 221466 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78371 | /* 221471 */ GIR_RootConstrainSelectedInstOperands, |
| 78372 | /* 221472 */ // GIR_Coverage, 24473, |
| 78373 | /* 221472 */ GIR_EraseRootFromParent_Done, |
| 78374 | /* 221473 */ // Label 5133: @221473 |
| 78375 | /* 221473 */ GIM_Try, /*On fail goto*//*Label 5134*/ GIMT_Encode4(221531), // Rule ID 6465 // |
| 78376 | /* 221478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78377 | /* 221481 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78378 | /* 221485 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78379 | /* 221489 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78380 | /* 221493 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78381 | /* 221496 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78382 | /* 221500 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78383 | /* 221504 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78384 | /* 221506 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78385 | /* 221513 */ // (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) |
| 78386 | /* 221513 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rm), |
| 78387 | /* 221516 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78388 | /* 221518 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78389 | /* 221520 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78390 | /* 221524 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78391 | /* 221529 */ GIR_RootConstrainSelectedInstOperands, |
| 78392 | /* 221530 */ // GIR_Coverage, 6465, |
| 78393 | /* 221530 */ GIR_EraseRootFromParent_Done, |
| 78394 | /* 221531 */ // Label 5134: @221531 |
| 78395 | /* 221531 */ GIM_Try, /*On fail goto*//*Label 5135*/ GIMT_Encode4(221558), // Rule ID 6461 // |
| 78396 | /* 221536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78397 | /* 221539 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78398 | /* 221543 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 78399 | /* 221547 */ // (strict_fmul:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VMULPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 78400 | /* 221547 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZ128rr), |
| 78401 | /* 221552 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78402 | /* 221556 */ GIR_RootConstrainSelectedInstOperands, |
| 78403 | /* 221557 */ // GIR_Coverage, 6461, |
| 78404 | /* 221557 */ GIR_Done, |
| 78405 | /* 221558 */ // Label 5135: @221558 |
| 78406 | /* 221558 */ GIM_Reject, |
| 78407 | /* 221559 */ // Label 5132: @221559 |
| 78408 | /* 221559 */ GIM_Reject, |
| 78409 | /* 221560 */ // Label 5053: @221560 |
| 78410 | /* 221560 */ GIM_Try, /*On fail goto*//*Label 5136*/ GIMT_Encode4(221882), |
| 78411 | /* 221565 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 78412 | /* 221568 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 78413 | /* 221571 */ GIM_Try, /*On fail goto*//*Label 5137*/ GIMT_Encode4(221633), // Rule ID 23475 // |
| 78414 | /* 221576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78415 | /* 221579 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78416 | /* 221583 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78417 | /* 221587 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78418 | /* 221591 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78419 | /* 221594 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78420 | /* 221598 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78421 | /* 221602 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78422 | /* 221606 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78423 | /* 221608 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78424 | /* 221615 */ // (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) |
| 78425 | /* 221615 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSYrm), |
| 78426 | /* 221618 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78427 | /* 221620 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78428 | /* 221622 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78429 | /* 221626 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78430 | /* 221631 */ GIR_RootConstrainSelectedInstOperands, |
| 78431 | /* 221632 */ // GIR_Coverage, 23475, |
| 78432 | /* 221632 */ GIR_EraseRootFromParent_Done, |
| 78433 | /* 221633 */ // Label 5137: @221633 |
| 78434 | /* 221633 */ GIM_Try, /*On fail goto*//*Label 5138*/ GIMT_Encode4(221695), // Rule ID 24441 // |
| 78435 | /* 221638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78436 | /* 221641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78437 | /* 221645 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78438 | /* 221649 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78439 | /* 221653 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78440 | /* 221656 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78441 | /* 221660 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78442 | /* 221664 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78443 | /* 221668 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78444 | /* 221670 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78445 | /* 221677 */ // (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) |
| 78446 | /* 221677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rm), |
| 78447 | /* 221680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78448 | /* 221682 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78449 | /* 221684 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78450 | /* 221688 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78451 | /* 221693 */ GIR_RootConstrainSelectedInstOperands, |
| 78452 | /* 221694 */ // GIR_Coverage, 24441, |
| 78453 | /* 221694 */ GIR_EraseRootFromParent_Done, |
| 78454 | /* 221695 */ // Label 5138: @221695 |
| 78455 | /* 221695 */ GIM_Try, /*On fail goto*//*Label 5139*/ GIMT_Encode4(221757), // Rule ID 2184 // |
| 78456 | /* 221700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78457 | /* 221703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78458 | /* 221707 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78459 | /* 221711 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78460 | /* 221715 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78461 | /* 221719 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78462 | /* 221722 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78463 | /* 221726 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78464 | /* 221730 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78465 | /* 221732 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78466 | /* 221739 */ // (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) |
| 78467 | /* 221739 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSYrm), |
| 78468 | /* 221742 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78469 | /* 221744 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78470 | /* 221746 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78471 | /* 221750 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78472 | /* 221755 */ GIR_RootConstrainSelectedInstOperands, |
| 78473 | /* 221756 */ // GIR_Coverage, 2184, |
| 78474 | /* 221756 */ GIR_EraseRootFromParent_Done, |
| 78475 | /* 221757 */ // Label 5139: @221757 |
| 78476 | /* 221757 */ GIM_Try, /*On fail goto*//*Label 5140*/ GIMT_Encode4(221819), // Rule ID 6417 // |
| 78477 | /* 221762 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78478 | /* 221765 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78479 | /* 221769 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78480 | /* 221773 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78481 | /* 221777 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78482 | /* 221781 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78483 | /* 221784 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78484 | /* 221788 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78485 | /* 221792 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78486 | /* 221794 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78487 | /* 221801 */ // (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) |
| 78488 | /* 221801 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rm), |
| 78489 | /* 221804 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78490 | /* 221806 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78491 | /* 221808 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78492 | /* 221812 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78493 | /* 221817 */ GIR_RootConstrainSelectedInstOperands, |
| 78494 | /* 221818 */ // GIR_Coverage, 6417, |
| 78495 | /* 221818 */ GIR_EraseRootFromParent_Done, |
| 78496 | /* 221819 */ // Label 5140: @221819 |
| 78497 | /* 221819 */ GIM_Try, /*On fail goto*//*Label 5141*/ GIMT_Encode4(221850), // Rule ID 2182 // |
| 78498 | /* 221824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 78499 | /* 221827 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78500 | /* 221831 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78501 | /* 221835 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 78502 | /* 221839 */ // (strict_fmul:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VMULPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 78503 | /* 221839 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSYrr), |
| 78504 | /* 221844 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78505 | /* 221848 */ GIR_RootConstrainSelectedInstOperands, |
| 78506 | /* 221849 */ // GIR_Coverage, 2182, |
| 78507 | /* 221849 */ GIR_Done, |
| 78508 | /* 221850 */ // Label 5141: @221850 |
| 78509 | /* 221850 */ GIM_Try, /*On fail goto*//*Label 5142*/ GIMT_Encode4(221881), // Rule ID 6413 // |
| 78510 | /* 221855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 78511 | /* 221858 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78512 | /* 221862 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78513 | /* 221866 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78514 | /* 221870 */ // (strict_fmul:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VMULPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 78515 | /* 221870 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZ256rr), |
| 78516 | /* 221875 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78517 | /* 221879 */ GIR_RootConstrainSelectedInstOperands, |
| 78518 | /* 221880 */ // GIR_Coverage, 6413, |
| 78519 | /* 221880 */ GIR_Done, |
| 78520 | /* 221881 */ // Label 5142: @221881 |
| 78521 | /* 221881 */ GIM_Reject, |
| 78522 | /* 221882 */ // Label 5136: @221882 |
| 78523 | /* 221882 */ GIM_Reject, |
| 78524 | /* 221883 */ // Label 5054: @221883 |
| 78525 | /* 221883 */ GIM_Try, /*On fail goto*//*Label 5143*/ GIMT_Encode4(222042), |
| 78526 | /* 221888 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 78527 | /* 221891 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 78528 | /* 221894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78529 | /* 221898 */ GIM_Try, /*On fail goto*//*Label 5144*/ GIMT_Encode4(221956), // Rule ID 24425 // |
| 78530 | /* 221903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78531 | /* 221906 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78532 | /* 221910 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78533 | /* 221914 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78534 | /* 221917 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78535 | /* 221921 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78536 | /* 221925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78537 | /* 221929 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78538 | /* 221931 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78539 | /* 221938 */ // (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) |
| 78540 | /* 221938 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZrm), |
| 78541 | /* 221941 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78542 | /* 221943 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78543 | /* 221945 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78544 | /* 221949 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78545 | /* 221954 */ GIR_RootConstrainSelectedInstOperands, |
| 78546 | /* 221955 */ // GIR_Coverage, 24425, |
| 78547 | /* 221955 */ GIR_EraseRootFromParent_Done, |
| 78548 | /* 221956 */ // Label 5144: @221956 |
| 78549 | /* 221956 */ GIM_Try, /*On fail goto*//*Label 5145*/ GIMT_Encode4(222014), // Rule ID 6393 // |
| 78550 | /* 221961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78551 | /* 221964 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78552 | /* 221968 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78553 | /* 221972 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78554 | /* 221976 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78555 | /* 221979 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78556 | /* 221983 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78557 | /* 221987 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78558 | /* 221989 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78559 | /* 221996 */ // (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) |
| 78560 | /* 221996 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPDZrm), |
| 78561 | /* 221999 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78562 | /* 222001 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78563 | /* 222003 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78564 | /* 222007 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78565 | /* 222012 */ GIR_RootConstrainSelectedInstOperands, |
| 78566 | /* 222013 */ // GIR_Coverage, 6393, |
| 78567 | /* 222013 */ GIR_EraseRootFromParent_Done, |
| 78568 | /* 222014 */ // Label 5145: @222014 |
| 78569 | /* 222014 */ GIM_Try, /*On fail goto*//*Label 5146*/ GIMT_Encode4(222041), // Rule ID 6389 // |
| 78570 | /* 222019 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78571 | /* 222022 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78572 | /* 222026 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78573 | /* 222030 */ // (strict_fmul:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VMULPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 78574 | /* 222030 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPDZrr), |
| 78575 | /* 222035 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78576 | /* 222039 */ GIR_RootConstrainSelectedInstOperands, |
| 78577 | /* 222040 */ // GIR_Coverage, 6389, |
| 78578 | /* 222040 */ GIR_Done, |
| 78579 | /* 222041 */ // Label 5146: @222041 |
| 78580 | /* 222041 */ GIM_Reject, |
| 78581 | /* 222042 */ // Label 5143: @222042 |
| 78582 | /* 222042 */ GIM_Reject, |
| 78583 | /* 222043 */ // Label 5055: @222043 |
| 78584 | /* 222043 */ GIM_Try, /*On fail goto*//*Label 5147*/ GIMT_Encode4(222202), |
| 78585 | /* 222048 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 78586 | /* 222051 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 78587 | /* 222054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78588 | /* 222058 */ GIM_Try, /*On fail goto*//*Label 5148*/ GIMT_Encode4(222116), // Rule ID 24481 // |
| 78589 | /* 222063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78590 | /* 222066 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78591 | /* 222070 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78592 | /* 222074 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78593 | /* 222077 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78594 | /* 222081 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78595 | /* 222085 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78596 | /* 222089 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78597 | /* 222091 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78598 | /* 222098 */ // (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) |
| 78599 | /* 222098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rm), |
| 78600 | /* 222101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78601 | /* 222103 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78602 | /* 222105 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78603 | /* 222109 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78604 | /* 222114 */ GIR_RootConstrainSelectedInstOperands, |
| 78605 | /* 222115 */ // GIR_Coverage, 24481, |
| 78606 | /* 222115 */ GIR_EraseRootFromParent_Done, |
| 78607 | /* 222116 */ // Label 5148: @222116 |
| 78608 | /* 222116 */ GIM_Try, /*On fail goto*//*Label 5149*/ GIMT_Encode4(222174), // Rule ID 6477 // |
| 78609 | /* 222121 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78610 | /* 222124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78611 | /* 222128 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78612 | /* 222132 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78613 | /* 222136 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78614 | /* 222139 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78615 | /* 222143 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78616 | /* 222147 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78617 | /* 222149 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78618 | /* 222156 */ // (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) |
| 78619 | /* 222156 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rm), |
| 78620 | /* 222159 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78621 | /* 222161 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78622 | /* 222163 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78623 | /* 222167 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78624 | /* 222172 */ GIR_RootConstrainSelectedInstOperands, |
| 78625 | /* 222173 */ // GIR_Coverage, 6477, |
| 78626 | /* 222173 */ GIR_EraseRootFromParent_Done, |
| 78627 | /* 222174 */ // Label 5149: @222174 |
| 78628 | /* 222174 */ GIM_Try, /*On fail goto*//*Label 5150*/ GIMT_Encode4(222201), // Rule ID 6473 // |
| 78629 | /* 222179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 78630 | /* 222182 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78631 | /* 222186 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 78632 | /* 222190 */ // (strict_fmul:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VMULPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 78633 | /* 222190 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZ256rr), |
| 78634 | /* 222195 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78635 | /* 222199 */ GIR_RootConstrainSelectedInstOperands, |
| 78636 | /* 222200 */ // GIR_Coverage, 6473, |
| 78637 | /* 222200 */ GIR_Done, |
| 78638 | /* 222201 */ // Label 5150: @222201 |
| 78639 | /* 222201 */ GIM_Reject, |
| 78640 | /* 222202 */ // Label 5147: @222202 |
| 78641 | /* 222202 */ GIM_Reject, |
| 78642 | /* 222203 */ // Label 5056: @222203 |
| 78643 | /* 222203 */ GIM_Try, /*On fail goto*//*Label 5151*/ GIMT_Encode4(222362), |
| 78644 | /* 222208 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 78645 | /* 222211 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 78646 | /* 222214 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78647 | /* 222218 */ GIM_Try, /*On fail goto*//*Label 5152*/ GIMT_Encode4(222276), // Rule ID 24417 // |
| 78648 | /* 222223 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78649 | /* 222226 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78650 | /* 222230 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78651 | /* 222234 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78652 | /* 222237 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78653 | /* 222241 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78654 | /* 222245 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78655 | /* 222249 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78656 | /* 222251 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78657 | /* 222258 */ // (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) |
| 78658 | /* 222258 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZrm), |
| 78659 | /* 222261 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78660 | /* 222263 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78661 | /* 222265 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78662 | /* 222269 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78663 | /* 222274 */ GIR_RootConstrainSelectedInstOperands, |
| 78664 | /* 222275 */ // GIR_Coverage, 24417, |
| 78665 | /* 222275 */ GIR_EraseRootFromParent_Done, |
| 78666 | /* 222276 */ // Label 5152: @222276 |
| 78667 | /* 222276 */ GIM_Try, /*On fail goto*//*Label 5153*/ GIMT_Encode4(222334), // Rule ID 6381 // |
| 78668 | /* 222281 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78669 | /* 222284 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78670 | /* 222288 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78671 | /* 222292 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78672 | /* 222296 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78673 | /* 222299 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78674 | /* 222303 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78675 | /* 222307 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78676 | /* 222309 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78677 | /* 222316 */ // (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) |
| 78678 | /* 222316 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPSZrm), |
| 78679 | /* 222319 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78680 | /* 222321 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78681 | /* 222323 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78682 | /* 222327 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78683 | /* 222332 */ GIR_RootConstrainSelectedInstOperands, |
| 78684 | /* 222333 */ // GIR_Coverage, 6381, |
| 78685 | /* 222333 */ GIR_EraseRootFromParent_Done, |
| 78686 | /* 222334 */ // Label 5153: @222334 |
| 78687 | /* 222334 */ GIM_Try, /*On fail goto*//*Label 5154*/ GIMT_Encode4(222361), // Rule ID 6377 // |
| 78688 | /* 222339 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78689 | /* 222342 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78690 | /* 222346 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78691 | /* 222350 */ // (strict_fmul:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VMULPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 78692 | /* 222350 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPSZrr), |
| 78693 | /* 222355 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78694 | /* 222359 */ GIR_RootConstrainSelectedInstOperands, |
| 78695 | /* 222360 */ // GIR_Coverage, 6377, |
| 78696 | /* 222360 */ GIR_Done, |
| 78697 | /* 222361 */ // Label 5154: @222361 |
| 78698 | /* 222361 */ GIM_Reject, |
| 78699 | /* 222362 */ // Label 5151: @222362 |
| 78700 | /* 222362 */ GIM_Reject, |
| 78701 | /* 222363 */ // Label 5057: @222363 |
| 78702 | /* 222363 */ GIM_Try, /*On fail goto*//*Label 5155*/ GIMT_Encode4(222522), |
| 78703 | /* 222368 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 78704 | /* 222371 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 78705 | /* 222374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78706 | /* 222378 */ GIM_Try, /*On fail goto*//*Label 5156*/ GIMT_Encode4(222436), // Rule ID 24465 // |
| 78707 | /* 222383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 78708 | /* 222386 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78709 | /* 222390 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78710 | /* 222394 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78711 | /* 222397 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78712 | /* 222401 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78713 | /* 222405 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78714 | /* 222409 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78715 | /* 222411 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78716 | /* 222418 */ // (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) |
| 78717 | /* 222418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZrm), |
| 78718 | /* 222421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78719 | /* 222423 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78720 | /* 222425 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78721 | /* 222429 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78722 | /* 222434 */ GIR_RootConstrainSelectedInstOperands, |
| 78723 | /* 222435 */ // GIR_Coverage, 24465, |
| 78724 | /* 222435 */ GIR_EraseRootFromParent_Done, |
| 78725 | /* 222436 */ // Label 5156: @222436 |
| 78726 | /* 222436 */ GIM_Try, /*On fail goto*//*Label 5157*/ GIMT_Encode4(222494), // Rule ID 6453 // |
| 78727 | /* 222441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 78728 | /* 222444 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78729 | /* 222448 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78730 | /* 222452 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78731 | /* 222456 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78732 | /* 222459 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78733 | /* 222463 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78734 | /* 222467 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78735 | /* 222469 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78736 | /* 222476 */ // (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) |
| 78737 | /* 222476 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VMULPHZrm), |
| 78738 | /* 222479 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78739 | /* 222481 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78740 | /* 222483 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78741 | /* 222487 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78742 | /* 222492 */ GIR_RootConstrainSelectedInstOperands, |
| 78743 | /* 222493 */ // GIR_Coverage, 6453, |
| 78744 | /* 222493 */ GIR_EraseRootFromParent_Done, |
| 78745 | /* 222494 */ // Label 5157: @222494 |
| 78746 | /* 222494 */ GIM_Try, /*On fail goto*//*Label 5158*/ GIMT_Encode4(222521), // Rule ID 6449 // |
| 78747 | /* 222499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 78748 | /* 222502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78749 | /* 222506 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 78750 | /* 222510 */ // (strict_fmul:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VMULPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 78751 | /* 222510 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VMULPHZrr), |
| 78752 | /* 222515 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78753 | /* 222519 */ GIR_RootConstrainSelectedInstOperands, |
| 78754 | /* 222520 */ // GIR_Coverage, 6449, |
| 78755 | /* 222520 */ GIR_Done, |
| 78756 | /* 222521 */ // Label 5158: @222521 |
| 78757 | /* 222521 */ GIM_Reject, |
| 78758 | /* 222522 */ // Label 5155: @222522 |
| 78759 | /* 222522 */ GIM_Reject, |
| 78760 | /* 222523 */ // Label 5058: @222523 |
| 78761 | /* 222523 */ GIM_Reject, |
| 78762 | /* 222524 */ // Label 72: @222524 |
| 78763 | /* 222524 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 5172*/ GIMT_Encode4(226213), |
| 78764 | /* 222535 */ /*GILLT_s16*//*Label 5159*/ GIMT_Encode4(222619), |
| 78765 | /* 222539 */ /*GILLT_s32*//*Label 5160*/ GIMT_Encode4(222717), |
| 78766 | /* 222543 */ /*GILLT_s64*//*Label 5161*/ GIMT_Encode4(223436), |
| 78767 | /* 222547 */ /*GILLT_s80*//*Label 5162*/ GIMT_Encode4(224299), GIMT_Encode4(0), GIMT_Encode4(0), |
| 78768 | /* 222559 */ /*GILLT_v2s64*//*Label 5163*/ GIMT_Encode4(224865), GIMT_Encode4(0), |
| 78769 | /* 222567 */ /*GILLT_v4s32*//*Label 5164*/ GIMT_Encode4(225095), |
| 78770 | /* 222571 */ /*GILLT_v4s64*//*Label 5165*/ GIMT_Encode4(225325), GIMT_Encode4(0), |
| 78771 | /* 222579 */ /*GILLT_v8s16*//*Label 5166*/ GIMT_Encode4(225524), |
| 78772 | /* 222583 */ /*GILLT_v8s32*//*Label 5167*/ GIMT_Encode4(225622), |
| 78773 | /* 222587 */ /*GILLT_v8s64*//*Label 5168*/ GIMT_Encode4(225821), GIMT_Encode4(0), GIMT_Encode4(0), |
| 78774 | /* 222599 */ /*GILLT_v16s16*//*Label 5169*/ GIMT_Encode4(225919), |
| 78775 | /* 222603 */ /*GILLT_v16s32*//*Label 5170*/ GIMT_Encode4(226017), GIMT_Encode4(0), GIMT_Encode4(0), |
| 78776 | /* 222615 */ /*GILLT_v32s16*//*Label 5171*/ GIMT_Encode4(226115), |
| 78777 | /* 222619 */ // Label 5159: @222619 |
| 78778 | /* 222619 */ GIM_Try, /*On fail goto*//*Label 5173*/ GIMT_Encode4(222716), |
| 78779 | /* 222624 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 78780 | /* 222627 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 78781 | /* 222630 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 78782 | /* 222634 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 78783 | /* 222638 */ GIM_Try, /*On fail goto*//*Label 5174*/ GIMT_Encode4(222692), // Rule ID 6129 // |
| 78784 | /* 222643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 78785 | /* 222646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78786 | /* 222650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78787 | /* 222654 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78788 | /* 222657 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78789 | /* 222661 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78790 | /* 222665 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78791 | /* 222667 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78792 | /* 222674 */ // (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) |
| 78793 | /* 222674 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSHZrm), |
| 78794 | /* 222677 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78795 | /* 222679 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78796 | /* 222681 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78797 | /* 222685 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78798 | /* 222690 */ GIR_RootConstrainSelectedInstOperands, |
| 78799 | /* 222691 */ // GIR_Coverage, 6129, |
| 78800 | /* 222691 */ GIR_EraseRootFromParent_Done, |
| 78801 | /* 222692 */ // Label 5174: @222692 |
| 78802 | /* 222692 */ GIM_Try, /*On fail goto*//*Label 5175*/ GIMT_Encode4(222715), // Rule ID 6127 // |
| 78803 | /* 222697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 78804 | /* 222700 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 78805 | /* 222704 */ // (strict_fdiv:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) => (VDIVSHZrr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2) |
| 78806 | /* 222704 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSHZrr), |
| 78807 | /* 222709 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 78808 | /* 222713 */ GIR_RootConstrainSelectedInstOperands, |
| 78809 | /* 222714 */ // GIR_Coverage, 6127, |
| 78810 | /* 222714 */ GIR_Done, |
| 78811 | /* 222715 */ // Label 5175: @222715 |
| 78812 | /* 222715 */ GIM_Reject, |
| 78813 | /* 222716 */ // Label 5173: @222716 |
| 78814 | /* 222716 */ GIM_Reject, |
| 78815 | /* 222717 */ // Label 5160: @222717 |
| 78816 | /* 222717 */ GIM_Try, /*On fail goto*//*Label 5176*/ GIMT_Encode4(223435), |
| 78817 | /* 222722 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 78818 | /* 222725 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 78819 | /* 222728 */ GIM_Try, /*On fail goto*//*Label 5177*/ GIMT_Encode4(222793), // Rule ID 1030 // |
| 78820 | /* 222733 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 78821 | /* 222736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78822 | /* 222740 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78823 | /* 222744 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78824 | /* 222748 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 78825 | /* 222755 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78826 | /* 222759 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78827 | /* 222763 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78828 | /* 222765 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78829 | /* 222772 */ // (strict_fdiv:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP32:{ *:[f32] }:$src1) => (DIVR_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78830 | /* 222772 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m32), |
| 78831 | /* 222775 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78832 | /* 222777 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78833 | /* 222779 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78834 | /* 222783 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78835 | /* 222786 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78836 | /* 222791 */ GIR_RootConstrainSelectedInstOperands, |
| 78837 | /* 222792 */ // GIR_Coverage, 1030, |
| 78838 | /* 222792 */ GIR_EraseRootFromParent_Done, |
| 78839 | /* 222793 */ // Label 5177: @222793 |
| 78840 | /* 222793 */ GIM_Try, /*On fail goto*//*Label 5178*/ GIMT_Encode4(222858), // Rule ID 1032 // |
| 78841 | /* 222798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 78842 | /* 222801 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78843 | /* 222805 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78844 | /* 222809 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78845 | /* 222813 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 78846 | /* 222820 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78847 | /* 222824 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78848 | /* 222828 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78849 | /* 222830 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78850 | /* 222837 */ // (strict_fdiv:{ *:[f32] } (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP32:{ *:[f32] }:$src1) => (DIVR_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78851 | /* 222837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m32), |
| 78852 | /* 222840 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78853 | /* 222842 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78854 | /* 222844 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78855 | /* 222848 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78856 | /* 222851 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78857 | /* 222856 */ GIR_RootConstrainSelectedInstOperands, |
| 78858 | /* 222857 */ // GIR_Coverage, 1032, |
| 78859 | /* 222857 */ GIR_EraseRootFromParent_Done, |
| 78860 | /* 222858 */ // Label 5178: @222858 |
| 78861 | /* 222858 */ GIM_Try, /*On fail goto*//*Label 5179*/ GIMT_Encode4(222923), // Rule ID 1020 // |
| 78862 | /* 222863 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 78863 | /* 222866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78864 | /* 222870 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 78865 | /* 222874 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78866 | /* 222878 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78867 | /* 222881 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78868 | /* 222885 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78869 | /* 222889 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78870 | /* 222893 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78871 | /* 222895 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78872 | /* 222902 */ // (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) |
| 78873 | /* 222902 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp32m), |
| 78874 | /* 222905 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78875 | /* 222907 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 78876 | /* 222909 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78877 | /* 222913 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78878 | /* 222916 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78879 | /* 222921 */ GIR_RootConstrainSelectedInstOperands, |
| 78880 | /* 222922 */ // GIR_Coverage, 1020, |
| 78881 | /* 222922 */ GIR_EraseRootFromParent_Done, |
| 78882 | /* 222923 */ // Label 5179: @222923 |
| 78883 | /* 222923 */ GIM_Try, /*On fail goto*//*Label 5180*/ GIMT_Encode4(222988), // Rule ID 1008 // |
| 78884 | /* 222928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 78885 | /* 222931 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78886 | /* 222935 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78887 | /* 222939 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78888 | /* 222943 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78889 | /* 222947 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 78890 | /* 222954 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78891 | /* 222958 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78892 | /* 222960 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78893 | /* 222967 */ // (strict_fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78894 | /* 222967 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m32), |
| 78895 | /* 222970 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78896 | /* 222972 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78897 | /* 222974 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78898 | /* 222978 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78899 | /* 222981 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78900 | /* 222986 */ GIR_RootConstrainSelectedInstOperands, |
| 78901 | /* 222987 */ // GIR_Coverage, 1008, |
| 78902 | /* 222987 */ GIR_EraseRootFromParent_Done, |
| 78903 | /* 222988 */ // Label 5180: @222988 |
| 78904 | /* 222988 */ GIM_Try, /*On fail goto*//*Label 5181*/ GIMT_Encode4(223053), // Rule ID 1010 // |
| 78905 | /* 222993 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 78906 | /* 222996 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78907 | /* 223000 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78908 | /* 223004 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78909 | /* 223008 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 78910 | /* 223012 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 78911 | /* 223019 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78912 | /* 223023 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78913 | /* 223025 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78914 | /* 223032 */ // (strict_fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 78915 | /* 223032 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m32), |
| 78916 | /* 223035 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78917 | /* 223037 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78918 | /* 223039 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78919 | /* 223043 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78920 | /* 223046 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78921 | /* 223051 */ GIR_RootConstrainSelectedInstOperands, |
| 78922 | /* 223052 */ // GIR_Coverage, 1010, |
| 78923 | /* 223052 */ GIR_EraseRootFromParent_Done, |
| 78924 | /* 223053 */ // Label 5181: @223053 |
| 78925 | /* 223053 */ GIM_Try, /*On fail goto*//*Label 5182*/ GIMT_Encode4(223118), // Rule ID 998 // |
| 78926 | /* 223058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 78927 | /* 223061 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78928 | /* 223065 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 78929 | /* 223069 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78930 | /* 223073 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78931 | /* 223077 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78932 | /* 223080 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78933 | /* 223084 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78934 | /* 223088 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78935 | /* 223090 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78936 | /* 223097 */ // (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) |
| 78937 | /* 223097 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp32m), |
| 78938 | /* 223100 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78939 | /* 223102 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78940 | /* 223104 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78941 | /* 223108 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 78942 | /* 223111 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78943 | /* 223116 */ GIR_RootConstrainSelectedInstOperands, |
| 78944 | /* 223117 */ // GIR_Coverage, 998, |
| 78945 | /* 223117 */ GIR_EraseRootFromParent_Done, |
| 78946 | /* 223118 */ // Label 5182: @223118 |
| 78947 | /* 223118 */ GIM_Try, /*On fail goto*//*Label 5183*/ GIMT_Encode4(223180), // Rule ID 2280 // |
| 78948 | /* 223123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 78949 | /* 223126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 78950 | /* 223130 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 78951 | /* 223134 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78952 | /* 223138 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78953 | /* 223142 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78954 | /* 223145 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78955 | /* 223149 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78956 | /* 223153 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78957 | /* 223155 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78958 | /* 223162 */ // (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) |
| 78959 | /* 223162 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSrm), |
| 78960 | /* 223165 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78961 | /* 223167 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78962 | /* 223169 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78963 | /* 223173 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78964 | /* 223178 */ GIR_RootConstrainSelectedInstOperands, |
| 78965 | /* 223179 */ // GIR_Coverage, 2280, |
| 78966 | /* 223179 */ GIR_EraseRootFromParent_Done, |
| 78967 | /* 223180 */ // Label 5183: @223180 |
| 78968 | /* 223180 */ GIM_Try, /*On fail goto*//*Label 5184*/ GIMT_Encode4(223242), // Rule ID 2288 // |
| 78969 | /* 223185 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 78970 | /* 223188 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 78971 | /* 223192 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 78972 | /* 223196 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78973 | /* 223200 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78974 | /* 223204 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78975 | /* 223207 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78976 | /* 223211 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78977 | /* 223215 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78978 | /* 223217 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 78979 | /* 223224 */ // (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) |
| 78980 | /* 223224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSSrm), |
| 78981 | /* 223227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 78982 | /* 223229 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 78983 | /* 223231 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 78984 | /* 223235 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 78985 | /* 223240 */ GIR_RootConstrainSelectedInstOperands, |
| 78986 | /* 223241 */ // GIR_Coverage, 2288, |
| 78987 | /* 223241 */ GIR_EraseRootFromParent_Done, |
| 78988 | /* 223242 */ // Label 5184: @223242 |
| 78989 | /* 223242 */ GIM_Try, /*On fail goto*//*Label 5185*/ GIMT_Encode4(223304), // Rule ID 6091 // |
| 78990 | /* 223247 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 78991 | /* 223250 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 78992 | /* 223254 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 78993 | /* 223258 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 78994 | /* 223262 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 78995 | /* 223266 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 78996 | /* 223269 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 78997 | /* 223273 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 78998 | /* 223277 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 78999 | /* 223279 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79000 | /* 223286 */ // (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) |
| 79001 | /* 223286 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrm), |
| 79002 | /* 223289 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79003 | /* 223291 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79004 | /* 223293 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79005 | /* 223297 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79006 | /* 223302 */ GIR_RootConstrainSelectedInstOperands, |
| 79007 | /* 223303 */ // GIR_Coverage, 6091, |
| 79008 | /* 223303 */ GIR_EraseRootFromParent_Done, |
| 79009 | /* 223304 */ // Label 5185: @223304 |
| 79010 | /* 223304 */ GIM_Try, /*On fail goto*//*Label 5186*/ GIMT_Encode4(223341), // Rule ID 904 // |
| 79011 | /* 223309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 79012 | /* 223312 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79013 | /* 223316 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79014 | /* 223320 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 79015 | /* 223324 */ // (strict_fdiv:{ *:[f32] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) => (DIV_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src1, RFP32:{ *:[f32] }:$src2) |
| 79016 | /* 223324 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp32), |
| 79017 | /* 223329 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 79018 | /* 223335 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 79019 | /* 223339 */ GIR_RootConstrainSelectedInstOperands, |
| 79020 | /* 223340 */ // GIR_Coverage, 904, |
| 79021 | /* 223340 */ GIR_Done, |
| 79022 | /* 223341 */ // Label 5186: @223341 |
| 79023 | /* 223341 */ GIM_Try, /*On fail goto*//*Label 5187*/ GIMT_Encode4(223372), // Rule ID 2278 // |
| 79024 | /* 223346 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 79025 | /* 223349 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79026 | /* 223353 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79027 | /* 223357 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79028 | /* 223361 */ // (strict_fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (VDIVSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 79029 | /* 223361 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSSrr), |
| 79030 | /* 223366 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79031 | /* 223370 */ GIR_RootConstrainSelectedInstOperands, |
| 79032 | /* 223371 */ // GIR_Coverage, 2278, |
| 79033 | /* 223371 */ GIR_Done, |
| 79034 | /* 223372 */ // Label 5187: @223372 |
| 79035 | /* 223372 */ GIM_Try, /*On fail goto*//*Label 5188*/ GIMT_Encode4(223403), // Rule ID 2286 // |
| 79036 | /* 223377 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 79037 | /* 223380 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79038 | /* 223384 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79039 | /* 223388 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 79040 | /* 223392 */ // (strict_fdiv:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) => (DIVSSrr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2) |
| 79041 | /* 223392 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVSSrr), |
| 79042 | /* 223397 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79043 | /* 223401 */ GIR_RootConstrainSelectedInstOperands, |
| 79044 | /* 223402 */ // GIR_Coverage, 2286, |
| 79045 | /* 223402 */ GIR_Done, |
| 79046 | /* 223403 */ // Label 5188: @223403 |
| 79047 | /* 223403 */ GIM_Try, /*On fail goto*//*Label 5189*/ GIMT_Encode4(223434), // Rule ID 6089 // |
| 79048 | /* 223408 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79049 | /* 223411 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 79050 | /* 223415 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 79051 | /* 223419 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 79052 | /* 223423 */ // (strict_fdiv:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) => (VDIVSSZrr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2) |
| 79053 | /* 223423 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSSZrr), |
| 79054 | /* 223428 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79055 | /* 223432 */ GIR_RootConstrainSelectedInstOperands, |
| 79056 | /* 223433 */ // GIR_Coverage, 6089, |
| 79057 | /* 223433 */ GIR_Done, |
| 79058 | /* 223434 */ // Label 5189: @223434 |
| 79059 | /* 223434 */ GIM_Reject, |
| 79060 | /* 223435 */ // Label 5176: @223435 |
| 79061 | /* 223435 */ GIM_Reject, |
| 79062 | /* 223436 */ // Label 5161: @223436 |
| 79063 | /* 223436 */ GIM_Try, /*On fail goto*//*Label 5190*/ GIMT_Encode4(224298), |
| 79064 | /* 223441 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 79065 | /* 223444 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 79066 | /* 223447 */ GIM_Try, /*On fail goto*//*Label 5191*/ GIMT_Encode4(223512), // Rule ID 1034 // |
| 79067 | /* 223452 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79068 | /* 223455 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79069 | /* 223459 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79070 | /* 223463 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79071 | /* 223467 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79072 | /* 223474 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79073 | /* 223478 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79074 | /* 223482 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79075 | /* 223484 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79076 | /* 223491 */ // (strict_fdiv:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP64:{ *:[f64] }:$src1) => (DIVR_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79077 | /* 223491 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m64), |
| 79078 | /* 223494 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79079 | /* 223496 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79080 | /* 223498 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79081 | /* 223502 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79082 | /* 223505 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79083 | /* 223510 */ GIR_RootConstrainSelectedInstOperands, |
| 79084 | /* 223511 */ // GIR_Coverage, 1034, |
| 79085 | /* 223511 */ GIR_EraseRootFromParent_Done, |
| 79086 | /* 223512 */ // Label 5191: @223512 |
| 79087 | /* 223512 */ GIM_Try, /*On fail goto*//*Label 5192*/ GIMT_Encode4(223577), // Rule ID 1036 // |
| 79088 | /* 223517 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79089 | /* 223520 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79090 | /* 223524 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79091 | /* 223528 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79092 | /* 223532 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79093 | /* 223539 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79094 | /* 223543 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79095 | /* 223547 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79096 | /* 223549 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79097 | /* 223556 */ // (strict_fdiv:{ *:[f64] } (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP64:{ *:[f64] }:$src1) => (DIVR_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79098 | /* 223556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m64), |
| 79099 | /* 223559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79100 | /* 223561 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79101 | /* 223563 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79102 | /* 223567 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79103 | /* 223570 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79104 | /* 223575 */ GIR_RootConstrainSelectedInstOperands, |
| 79105 | /* 223576 */ // GIR_Coverage, 1036, |
| 79106 | /* 223576 */ GIR_EraseRootFromParent_Done, |
| 79107 | /* 223577 */ // Label 5192: @223577 |
| 79108 | /* 223577 */ GIM_Try, /*On fail goto*//*Label 5193*/ GIMT_Encode4(223642), // Rule ID 1022 // |
| 79109 | /* 223582 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79110 | /* 223585 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79111 | /* 223589 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79112 | /* 223593 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79113 | /* 223597 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79114 | /* 223600 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79115 | /* 223604 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79116 | /* 223608 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79117 | /* 223612 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79118 | /* 223614 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79119 | /* 223621 */ // (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) |
| 79120 | /* 223621 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp64m), |
| 79121 | /* 223624 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79122 | /* 223626 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79123 | /* 223628 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79124 | /* 223632 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79125 | /* 223635 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79126 | /* 223640 */ GIR_RootConstrainSelectedInstOperands, |
| 79127 | /* 223641 */ // GIR_Coverage, 1022, |
| 79128 | /* 223641 */ GIR_EraseRootFromParent_Done, |
| 79129 | /* 223642 */ // Label 5193: @223642 |
| 79130 | /* 223642 */ GIM_Try, /*On fail goto*//*Label 5194*/ GIMT_Encode4(223714), // Rule ID 1024 // |
| 79131 | /* 223647 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79132 | /* 223650 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79133 | /* 223654 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79134 | /* 223658 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79135 | /* 223662 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79136 | /* 223665 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79137 | /* 223669 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79138 | /* 223676 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79139 | /* 223680 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79140 | /* 223684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79141 | /* 223686 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79142 | /* 223693 */ // (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) |
| 79143 | /* 223693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp64m32), |
| 79144 | /* 223696 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79145 | /* 223698 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79146 | /* 223700 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79147 | /* 223704 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79148 | /* 223707 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79149 | /* 223712 */ GIR_RootConstrainSelectedInstOperands, |
| 79150 | /* 223713 */ // GIR_Coverage, 1024, |
| 79151 | /* 223713 */ GIR_EraseRootFromParent_Done, |
| 79152 | /* 223714 */ // Label 5194: @223714 |
| 79153 | /* 223714 */ GIM_Try, /*On fail goto*//*Label 5195*/ GIMT_Encode4(223779), // Rule ID 1012 // |
| 79154 | /* 223719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79155 | /* 223722 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79156 | /* 223726 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79157 | /* 223730 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79158 | /* 223734 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79159 | /* 223738 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79160 | /* 223745 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79161 | /* 223749 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79162 | /* 223751 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79163 | /* 223758 */ // (strict_fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79164 | /* 223758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m64), |
| 79165 | /* 223761 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79166 | /* 223763 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79167 | /* 223765 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79168 | /* 223769 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79169 | /* 223772 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79170 | /* 223777 */ GIR_RootConstrainSelectedInstOperands, |
| 79171 | /* 223778 */ // GIR_Coverage, 1012, |
| 79172 | /* 223778 */ GIR_EraseRootFromParent_Done, |
| 79173 | /* 223779 */ // Label 5195: @223779 |
| 79174 | /* 223779 */ GIM_Try, /*On fail goto*//*Label 5196*/ GIMT_Encode4(223844), // Rule ID 1014 // |
| 79175 | /* 223784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79176 | /* 223787 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79177 | /* 223791 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79178 | /* 223795 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79179 | /* 223799 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79180 | /* 223803 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79181 | /* 223810 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79182 | /* 223814 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79183 | /* 223816 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79184 | /* 223823 */ // (strict_fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79185 | /* 223823 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m64), |
| 79186 | /* 223826 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79187 | /* 223828 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79188 | /* 223830 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79189 | /* 223834 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79190 | /* 223837 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79191 | /* 223842 */ GIR_RootConstrainSelectedInstOperands, |
| 79192 | /* 223843 */ // GIR_Coverage, 1014, |
| 79193 | /* 223843 */ GIR_EraseRootFromParent_Done, |
| 79194 | /* 223844 */ // Label 5196: @223844 |
| 79195 | /* 223844 */ GIM_Try, /*On fail goto*//*Label 5197*/ GIMT_Encode4(223909), // Rule ID 1000 // |
| 79196 | /* 223849 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79197 | /* 223852 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79198 | /* 223856 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79199 | /* 223860 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79200 | /* 223864 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79201 | /* 223868 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79202 | /* 223871 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79203 | /* 223875 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79204 | /* 223879 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79205 | /* 223881 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79206 | /* 223888 */ // (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) |
| 79207 | /* 223888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64m), |
| 79208 | /* 223891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79209 | /* 223893 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79210 | /* 223895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79211 | /* 223899 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79212 | /* 223902 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79213 | /* 223907 */ GIR_RootConstrainSelectedInstOperands, |
| 79214 | /* 223908 */ // GIR_Coverage, 1000, |
| 79215 | /* 223908 */ GIR_EraseRootFromParent_Done, |
| 79216 | /* 223909 */ // Label 5197: @223909 |
| 79217 | /* 223909 */ GIM_Try, /*On fail goto*//*Label 5198*/ GIMT_Encode4(223981), // Rule ID 1002 // |
| 79218 | /* 223914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79219 | /* 223917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79220 | /* 223921 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79221 | /* 223925 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79222 | /* 223929 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79223 | /* 223933 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79224 | /* 223936 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79225 | /* 223940 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79226 | /* 223947 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79227 | /* 223951 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79228 | /* 223953 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79229 | /* 223960 */ // (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) |
| 79230 | /* 223960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64m32), |
| 79231 | /* 223963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79232 | /* 223965 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79233 | /* 223967 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79234 | /* 223971 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79235 | /* 223974 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79236 | /* 223979 */ GIR_RootConstrainSelectedInstOperands, |
| 79237 | /* 223980 */ // GIR_Coverage, 1002, |
| 79238 | /* 223980 */ GIR_EraseRootFromParent_Done, |
| 79239 | /* 223981 */ // Label 5198: @223981 |
| 79240 | /* 223981 */ GIM_Try, /*On fail goto*//*Label 5199*/ GIMT_Encode4(224043), // Rule ID 2284 // |
| 79241 | /* 223986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 79242 | /* 223989 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79243 | /* 223993 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79244 | /* 223997 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79245 | /* 224001 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79246 | /* 224005 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79247 | /* 224008 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79248 | /* 224012 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79249 | /* 224016 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79250 | /* 224018 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79251 | /* 224025 */ // (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) |
| 79252 | /* 224025 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDrm), |
| 79253 | /* 224028 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79254 | /* 224030 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79255 | /* 224032 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79256 | /* 224036 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79257 | /* 224041 */ GIR_RootConstrainSelectedInstOperands, |
| 79258 | /* 224042 */ // GIR_Coverage, 2284, |
| 79259 | /* 224042 */ GIR_EraseRootFromParent_Done, |
| 79260 | /* 224043 */ // Label 5199: @224043 |
| 79261 | /* 224043 */ GIM_Try, /*On fail goto*//*Label 5200*/ GIMT_Encode4(224105), // Rule ID 2292 // |
| 79262 | /* 224048 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 79263 | /* 224051 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79264 | /* 224055 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79265 | /* 224059 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79266 | /* 224063 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79267 | /* 224067 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79268 | /* 224070 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79269 | /* 224074 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79270 | /* 224078 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79271 | /* 224080 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79272 | /* 224087 */ // (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) |
| 79273 | /* 224087 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVSDrm), |
| 79274 | /* 224090 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79275 | /* 224092 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79276 | /* 224094 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79277 | /* 224098 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79278 | /* 224103 */ GIR_RootConstrainSelectedInstOperands, |
| 79279 | /* 224104 */ // GIR_Coverage, 2292, |
| 79280 | /* 224104 */ GIR_EraseRootFromParent_Done, |
| 79281 | /* 224105 */ // Label 5200: @224105 |
| 79282 | /* 224105 */ GIM_Try, /*On fail goto*//*Label 5201*/ GIMT_Encode4(224167), // Rule ID 6110 // |
| 79283 | /* 224110 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79284 | /* 224113 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79285 | /* 224117 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79286 | /* 224121 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79287 | /* 224125 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79288 | /* 224129 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79289 | /* 224132 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79290 | /* 224136 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79291 | /* 224140 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79292 | /* 224142 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79293 | /* 224149 */ // (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) |
| 79294 | /* 224149 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrm), |
| 79295 | /* 224152 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79296 | /* 224154 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79297 | /* 224156 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79298 | /* 224160 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79299 | /* 224165 */ GIR_RootConstrainSelectedInstOperands, |
| 79300 | /* 224166 */ // GIR_Coverage, 6110, |
| 79301 | /* 224166 */ GIR_EraseRootFromParent_Done, |
| 79302 | /* 224167 */ // Label 5201: @224167 |
| 79303 | /* 224167 */ GIM_Try, /*On fail goto*//*Label 5202*/ GIMT_Encode4(224204), // Rule ID 906 // |
| 79304 | /* 224172 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 79305 | /* 224175 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79306 | /* 224179 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79307 | /* 224183 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 79308 | /* 224187 */ // (strict_fdiv:{ *:[f64] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) => (DIV_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src1, RFP64:{ *:[f64] }:$src2) |
| 79309 | /* 224187 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp64), |
| 79310 | /* 224192 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 79311 | /* 224198 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 79312 | /* 224202 */ GIR_RootConstrainSelectedInstOperands, |
| 79313 | /* 224203 */ // GIR_Coverage, 906, |
| 79314 | /* 224203 */ GIR_Done, |
| 79315 | /* 224204 */ // Label 5202: @224204 |
| 79316 | /* 224204 */ GIM_Try, /*On fail goto*//*Label 5203*/ GIMT_Encode4(224235), // Rule ID 2282 // |
| 79317 | /* 224209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 79318 | /* 224212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79319 | /* 224216 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79320 | /* 224220 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79321 | /* 224224 */ // (strict_fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (VDIVSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 79322 | /* 224224 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSDrr), |
| 79323 | /* 224229 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79324 | /* 224233 */ GIR_RootConstrainSelectedInstOperands, |
| 79325 | /* 224234 */ // GIR_Coverage, 2282, |
| 79326 | /* 224234 */ GIR_Done, |
| 79327 | /* 224235 */ // Label 5203: @224235 |
| 79328 | /* 224235 */ GIM_Try, /*On fail goto*//*Label 5204*/ GIMT_Encode4(224266), // Rule ID 2290 // |
| 79329 | /* 224240 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 79330 | /* 224243 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79331 | /* 224247 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79332 | /* 224251 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 79333 | /* 224255 */ // (strict_fdiv:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) => (DIVSDrr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2) |
| 79334 | /* 224255 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVSDrr), |
| 79335 | /* 224260 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79336 | /* 224264 */ GIR_RootConstrainSelectedInstOperands, |
| 79337 | /* 224265 */ // GIR_Coverage, 2290, |
| 79338 | /* 224265 */ GIR_Done, |
| 79339 | /* 224266 */ // Label 5204: @224266 |
| 79340 | /* 224266 */ GIM_Try, /*On fail goto*//*Label 5205*/ GIMT_Encode4(224297), // Rule ID 6108 // |
| 79341 | /* 224271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79342 | /* 224274 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79343 | /* 224278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79344 | /* 224282 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 79345 | /* 224286 */ // (strict_fdiv:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) => (VDIVSDZrr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2) |
| 79346 | /* 224286 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVSDZrr), |
| 79347 | /* 224291 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79348 | /* 224295 */ GIR_RootConstrainSelectedInstOperands, |
| 79349 | /* 224296 */ // GIR_Coverage, 6108, |
| 79350 | /* 224296 */ GIR_Done, |
| 79351 | /* 224297 */ // Label 5205: @224297 |
| 79352 | /* 224297 */ GIM_Reject, |
| 79353 | /* 224298 */ // Label 5190: @224298 |
| 79354 | /* 224298 */ GIM_Reject, |
| 79355 | /* 224299 */ // Label 5162: @224299 |
| 79356 | /* 224299 */ GIM_Try, /*On fail goto*//*Label 5206*/ GIMT_Encode4(224864), |
| 79357 | /* 224304 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 79358 | /* 224307 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s80, |
| 79359 | /* 224310 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79360 | /* 224314 */ GIM_Try, /*On fail goto*//*Label 5207*/ GIMT_Encode4(224375), // Rule ID 1038 // |
| 79361 | /* 224319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79362 | /* 224322 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79363 | /* 224326 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79364 | /* 224330 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79365 | /* 224337 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79366 | /* 224341 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79367 | /* 224345 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79368 | /* 224347 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79369 | /* 224354 */ // (strict_fdiv:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>, RFP80:{ *:[f80] }:$src1) => (DIVR_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79370 | /* 224354 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI16m80), |
| 79371 | /* 224357 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79372 | /* 224359 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79373 | /* 224361 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79374 | /* 224365 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79375 | /* 224368 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79376 | /* 224373 */ GIR_RootConstrainSelectedInstOperands, |
| 79377 | /* 224374 */ // GIR_Coverage, 1038, |
| 79378 | /* 224374 */ GIR_EraseRootFromParent_Done, |
| 79379 | /* 224375 */ // Label 5207: @224375 |
| 79380 | /* 224375 */ GIM_Try, /*On fail goto*//*Label 5208*/ GIMT_Encode4(224436), // Rule ID 1040 // |
| 79381 | /* 224380 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79382 | /* 224383 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79383 | /* 224387 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79384 | /* 224391 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79385 | /* 224398 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79386 | /* 224402 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79387 | /* 224406 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79388 | /* 224408 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79389 | /* 224415 */ // (strict_fdiv:{ *:[f80] } (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>, RFP80:{ *:[f80] }:$src1) => (DIVR_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79390 | /* 224415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_FpI32m80), |
| 79391 | /* 224418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79392 | /* 224420 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79393 | /* 224422 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79394 | /* 224426 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79395 | /* 224429 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79396 | /* 224434 */ GIR_RootConstrainSelectedInstOperands, |
| 79397 | /* 224435 */ // GIR_Coverage, 1040, |
| 79398 | /* 224435 */ GIR_EraseRootFromParent_Done, |
| 79399 | /* 224436 */ // Label 5208: @224436 |
| 79400 | /* 224436 */ GIM_Try, /*On fail goto*//*Label 5209*/ GIMT_Encode4(224504), // Rule ID 1026 // |
| 79401 | /* 224441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79402 | /* 224444 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79403 | /* 224448 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79404 | /* 224452 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79405 | /* 224455 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79406 | /* 224459 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79407 | /* 224466 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79408 | /* 224470 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79409 | /* 224474 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79410 | /* 224476 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79411 | /* 224483 */ // (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) |
| 79412 | /* 224483 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp80m32), |
| 79413 | /* 224486 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79414 | /* 224488 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79415 | /* 224490 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79416 | /* 224494 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79417 | /* 224497 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79418 | /* 224502 */ GIR_RootConstrainSelectedInstOperands, |
| 79419 | /* 224503 */ // GIR_Coverage, 1026, |
| 79420 | /* 224503 */ GIR_EraseRootFromParent_Done, |
| 79421 | /* 224504 */ // Label 5209: @224504 |
| 79422 | /* 224504 */ GIM_Try, /*On fail goto*//*Label 5210*/ GIMT_Encode4(224572), // Rule ID 1028 // |
| 79423 | /* 224509 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79424 | /* 224512 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 79425 | /* 224516 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79426 | /* 224520 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79427 | /* 224523 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79428 | /* 224527 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 79429 | /* 224534 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79430 | /* 224538 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79431 | /* 224542 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79432 | /* 224544 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79433 | /* 224551 */ // (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) |
| 79434 | /* 224551 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIVR_Fp80m64), |
| 79435 | /* 224554 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79436 | /* 224556 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 79437 | /* 224558 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79438 | /* 224562 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79439 | /* 224565 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79440 | /* 224570 */ GIR_RootConstrainSelectedInstOperands, |
| 79441 | /* 224571 */ // GIR_Coverage, 1028, |
| 79442 | /* 224571 */ GIR_EraseRootFromParent_Done, |
| 79443 | /* 224572 */ // Label 5210: @224572 |
| 79444 | /* 224572 */ GIM_Try, /*On fail goto*//*Label 5211*/ GIMT_Encode4(224633), // Rule ID 1016 // |
| 79445 | /* 224577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79446 | /* 224580 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79447 | /* 224584 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79448 | /* 224588 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79449 | /* 224592 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 79450 | /* 224599 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79451 | /* 224603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79452 | /* 224605 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79453 | /* 224612 */ // (strict_fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild16>>) => (DIV_FpI16m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79454 | /* 224612 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI16m80), |
| 79455 | /* 224615 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79456 | /* 224617 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79457 | /* 224619 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79458 | /* 224623 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79459 | /* 224626 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79460 | /* 224631 */ GIR_RootConstrainSelectedInstOperands, |
| 79461 | /* 224632 */ // GIR_Coverage, 1016, |
| 79462 | /* 224632 */ GIR_EraseRootFromParent_Done, |
| 79463 | /* 224633 */ // Label 5211: @224633 |
| 79464 | /* 224633 */ GIM_Try, /*On fail goto*//*Label 5212*/ GIMT_Encode4(224694), // Rule ID 1018 // |
| 79465 | /* 224638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79466 | /* 224641 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79467 | /* 224645 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79468 | /* 224649 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(X86::G_FILD), |
| 79469 | /* 224653 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79470 | /* 224660 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79471 | /* 224664 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79472 | /* 224666 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79473 | /* 224673 */ // (strict_fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src2)<<P:Predicate_X86fild32>>) => (DIV_FpI32m80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, addr:{ *:[iPTR] }:$src2) |
| 79474 | /* 224673 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_FpI32m80), |
| 79475 | /* 224676 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79476 | /* 224678 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79477 | /* 224680 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79478 | /* 224684 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79479 | /* 224687 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79480 | /* 224692 */ GIR_RootConstrainSelectedInstOperands, |
| 79481 | /* 224693 */ // GIR_Coverage, 1018, |
| 79482 | /* 224693 */ GIR_EraseRootFromParent_Done, |
| 79483 | /* 224694 */ // Label 5212: @224694 |
| 79484 | /* 224694 */ GIM_Try, /*On fail goto*//*Label 5213*/ GIMT_Encode4(224762), // Rule ID 1004 // |
| 79485 | /* 224699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79486 | /* 224702 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79487 | /* 224706 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79488 | /* 224710 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79489 | /* 224714 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79490 | /* 224717 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79491 | /* 224721 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 79492 | /* 224728 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79493 | /* 224732 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79494 | /* 224734 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79495 | /* 224741 */ // (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) |
| 79496 | /* 224741 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80m32), |
| 79497 | /* 224744 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79498 | /* 224746 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79499 | /* 224748 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79500 | /* 224752 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79501 | /* 224755 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79502 | /* 224760 */ GIR_RootConstrainSelectedInstOperands, |
| 79503 | /* 224761 */ // GIR_Coverage, 1004, |
| 79504 | /* 224761 */ GIR_EraseRootFromParent_Done, |
| 79505 | /* 224762 */ // Label 5213: @224762 |
| 79506 | /* 224762 */ GIM_Try, /*On fail goto*//*Label 5214*/ GIMT_Encode4(224830), // Rule ID 1006 // |
| 79507 | /* 224767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79508 | /* 224770 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79509 | /* 224774 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79510 | /* 224778 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79511 | /* 224782 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79512 | /* 224785 */ GIM_CheckMemorySizeLessThanLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79513 | /* 224789 */ GIM_CheckMemorySizeEqualTo, /*MI*/1, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 79514 | /* 224796 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79515 | /* 224800 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79516 | /* 224802 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79517 | /* 224809 */ // (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) |
| 79518 | /* 224809 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80m64), |
| 79519 | /* 224812 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79520 | /* 224814 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79521 | /* 224816 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79522 | /* 224820 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 79523 | /* 224823 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79524 | /* 224828 */ GIR_RootConstrainSelectedInstOperands, |
| 79525 | /* 224829 */ // GIR_Coverage, 1006, |
| 79526 | /* 224829 */ GIR_EraseRootFromParent_Done, |
| 79527 | /* 224830 */ // Label 5214: @224830 |
| 79528 | /* 224830 */ GIM_Try, /*On fail goto*//*Label 5215*/ GIMT_Encode4(224863), // Rule ID 908 // |
| 79529 | /* 224835 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 79530 | /* 224838 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79531 | /* 224842 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 79532 | /* 224846 */ // (strict_fdiv:{ *:[f80] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) => (DIV_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src1, RFP80:{ *:[f80] }:$src2) |
| 79533 | /* 224846 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIV_Fp80), |
| 79534 | /* 224851 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 79535 | /* 224857 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 79536 | /* 224861 */ GIR_RootConstrainSelectedInstOperands, |
| 79537 | /* 224862 */ // GIR_Coverage, 908, |
| 79538 | /* 224862 */ GIR_Done, |
| 79539 | /* 224863 */ // Label 5215: @224863 |
| 79540 | /* 224863 */ GIM_Reject, |
| 79541 | /* 224864 */ // Label 5206: @224864 |
| 79542 | /* 224864 */ GIM_Reject, |
| 79543 | /* 224865 */ // Label 5163: @224865 |
| 79544 | /* 224865 */ GIM_Try, /*On fail goto*//*Label 5216*/ GIMT_Encode4(225094), |
| 79545 | /* 224870 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 79546 | /* 224873 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 79547 | /* 224876 */ GIM_Try, /*On fail goto*//*Label 5217*/ GIMT_Encode4(224938), // Rule ID 2260 // |
| 79548 | /* 224881 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 79549 | /* 224884 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79550 | /* 224888 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79551 | /* 224892 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79552 | /* 224896 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79553 | /* 224900 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79554 | /* 224903 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79555 | /* 224907 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79556 | /* 224911 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79557 | /* 224913 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79558 | /* 224920 */ // (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) |
| 79559 | /* 224920 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDrm), |
| 79560 | /* 224923 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79561 | /* 224925 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79562 | /* 224927 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79563 | /* 224931 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79564 | /* 224936 */ GIR_RootConstrainSelectedInstOperands, |
| 79565 | /* 224937 */ // GIR_Coverage, 2260, |
| 79566 | /* 224937 */ GIR_EraseRootFromParent_Done, |
| 79567 | /* 224938 */ // Label 5217: @224938 |
| 79568 | /* 224938 */ GIM_Try, /*On fail goto*//*Label 5218*/ GIMT_Encode4(225000), // Rule ID 6663 // |
| 79569 | /* 224943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 79570 | /* 224946 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79571 | /* 224950 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79572 | /* 224954 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79573 | /* 224958 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79574 | /* 224962 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79575 | /* 224965 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79576 | /* 224969 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79577 | /* 224973 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79578 | /* 224975 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79579 | /* 224982 */ // (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) |
| 79580 | /* 224982 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ128rm), |
| 79581 | /* 224985 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79582 | /* 224987 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79583 | /* 224989 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79584 | /* 224993 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79585 | /* 224998 */ GIR_RootConstrainSelectedInstOperands, |
| 79586 | /* 224999 */ // GIR_Coverage, 6663, |
| 79587 | /* 224999 */ GIR_EraseRootFromParent_Done, |
| 79588 | /* 225000 */ // Label 5218: @225000 |
| 79589 | /* 225000 */ GIM_Try, /*On fail goto*//*Label 5219*/ GIMT_Encode4(225031), // Rule ID 2258 // |
| 79590 | /* 225005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 79591 | /* 225008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79592 | /* 225012 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79593 | /* 225016 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79594 | /* 225020 */ // (strict_fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (VDIVPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 79595 | /* 225020 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDrr), |
| 79596 | /* 225025 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79597 | /* 225029 */ GIR_RootConstrainSelectedInstOperands, |
| 79598 | /* 225030 */ // GIR_Coverage, 2258, |
| 79599 | /* 225030 */ GIR_Done, |
| 79600 | /* 225031 */ // Label 5219: @225031 |
| 79601 | /* 225031 */ GIM_Try, /*On fail goto*//*Label 5220*/ GIMT_Encode4(225062), // Rule ID 2274 // |
| 79602 | /* 225036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 79603 | /* 225039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79604 | /* 225043 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79605 | /* 225047 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79606 | /* 225051 */ // (strict_fdiv:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) => (DIVPDrr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2) |
| 79607 | /* 225051 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVPDrr), |
| 79608 | /* 225056 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79609 | /* 225060 */ GIR_RootConstrainSelectedInstOperands, |
| 79610 | /* 225061 */ // GIR_Coverage, 2274, |
| 79611 | /* 225061 */ GIR_Done, |
| 79612 | /* 225062 */ // Label 5220: @225062 |
| 79613 | /* 225062 */ GIM_Try, /*On fail goto*//*Label 5221*/ GIMT_Encode4(225093), // Rule ID 6659 // |
| 79614 | /* 225067 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 79615 | /* 225070 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79616 | /* 225074 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79617 | /* 225078 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79618 | /* 225082 */ // (strict_fdiv:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) => (VDIVPDZ128rr:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2) |
| 79619 | /* 225082 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ128rr), |
| 79620 | /* 225087 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79621 | /* 225091 */ GIR_RootConstrainSelectedInstOperands, |
| 79622 | /* 225092 */ // GIR_Coverage, 6659, |
| 79623 | /* 225092 */ GIR_Done, |
| 79624 | /* 225093 */ // Label 5221: @225093 |
| 79625 | /* 225093 */ GIM_Reject, |
| 79626 | /* 225094 */ // Label 5216: @225094 |
| 79627 | /* 225094 */ GIM_Reject, |
| 79628 | /* 225095 */ // Label 5164: @225095 |
| 79629 | /* 225095 */ GIM_Try, /*On fail goto*//*Label 5222*/ GIMT_Encode4(225324), |
| 79630 | /* 225100 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 79631 | /* 225103 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 79632 | /* 225106 */ GIM_Try, /*On fail goto*//*Label 5223*/ GIMT_Encode4(225168), // Rule ID 2256 // |
| 79633 | /* 225111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 79634 | /* 225114 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79635 | /* 225118 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79636 | /* 225122 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79637 | /* 225126 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79638 | /* 225130 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79639 | /* 225133 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79640 | /* 225137 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79641 | /* 225141 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79642 | /* 225143 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79643 | /* 225150 */ // (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) |
| 79644 | /* 225150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSrm), |
| 79645 | /* 225153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79646 | /* 225155 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79647 | /* 225157 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79648 | /* 225161 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79649 | /* 225166 */ GIR_RootConstrainSelectedInstOperands, |
| 79650 | /* 225167 */ // GIR_Coverage, 2256, |
| 79651 | /* 225167 */ GIR_EraseRootFromParent_Done, |
| 79652 | /* 225168 */ // Label 5223: @225168 |
| 79653 | /* 225168 */ GIM_Try, /*On fail goto*//*Label 5224*/ GIMT_Encode4(225230), // Rule ID 6639 // |
| 79654 | /* 225173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 79655 | /* 225176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79656 | /* 225180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79657 | /* 225184 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79658 | /* 225188 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79659 | /* 225192 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79660 | /* 225195 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79661 | /* 225199 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79662 | /* 225203 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79663 | /* 225205 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79664 | /* 225212 */ // (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) |
| 79665 | /* 225212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ128rm), |
| 79666 | /* 225215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79667 | /* 225217 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79668 | /* 225219 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79669 | /* 225223 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79670 | /* 225228 */ GIR_RootConstrainSelectedInstOperands, |
| 79671 | /* 225229 */ // GIR_Coverage, 6639, |
| 79672 | /* 225229 */ GIR_EraseRootFromParent_Done, |
| 79673 | /* 225230 */ // Label 5224: @225230 |
| 79674 | /* 225230 */ GIM_Try, /*On fail goto*//*Label 5225*/ GIMT_Encode4(225261), // Rule ID 2254 // |
| 79675 | /* 225235 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 79676 | /* 225238 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79677 | /* 225242 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79678 | /* 225246 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79679 | /* 225250 */ // (strict_fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (VDIVPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 79680 | /* 225250 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSrr), |
| 79681 | /* 225255 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79682 | /* 225259 */ GIR_RootConstrainSelectedInstOperands, |
| 79683 | /* 225260 */ // GIR_Coverage, 2254, |
| 79684 | /* 225260 */ GIR_Done, |
| 79685 | /* 225261 */ // Label 5225: @225261 |
| 79686 | /* 225261 */ GIM_Try, /*On fail goto*//*Label 5226*/ GIMT_Encode4(225292), // Rule ID 2270 // |
| 79687 | /* 225266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 79688 | /* 225269 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79689 | /* 225273 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79690 | /* 225277 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 79691 | /* 225281 */ // (strict_fdiv:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) => (DIVPSrr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2) |
| 79692 | /* 225281 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::DIVPSrr), |
| 79693 | /* 225286 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79694 | /* 225290 */ GIR_RootConstrainSelectedInstOperands, |
| 79695 | /* 225291 */ // GIR_Coverage, 2270, |
| 79696 | /* 225291 */ GIR_Done, |
| 79697 | /* 225292 */ // Label 5226: @225292 |
| 79698 | /* 225292 */ GIM_Try, /*On fail goto*//*Label 5227*/ GIMT_Encode4(225323), // Rule ID 6635 // |
| 79699 | /* 225297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 79700 | /* 225300 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79701 | /* 225304 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79702 | /* 225308 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79703 | /* 225312 */ // (strict_fdiv:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) => (VDIVPSZ128rr:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2) |
| 79704 | /* 225312 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ128rr), |
| 79705 | /* 225317 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79706 | /* 225321 */ GIR_RootConstrainSelectedInstOperands, |
| 79707 | /* 225322 */ // GIR_Coverage, 6635, |
| 79708 | /* 225322 */ GIR_Done, |
| 79709 | /* 225323 */ // Label 5227: @225323 |
| 79710 | /* 225323 */ GIM_Reject, |
| 79711 | /* 225324 */ // Label 5222: @225324 |
| 79712 | /* 225324 */ GIM_Reject, |
| 79713 | /* 225325 */ // Label 5165: @225325 |
| 79714 | /* 225325 */ GIM_Try, /*On fail goto*//*Label 5228*/ GIMT_Encode4(225523), |
| 79715 | /* 225330 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 79716 | /* 225333 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 79717 | /* 225336 */ GIM_Try, /*On fail goto*//*Label 5229*/ GIMT_Encode4(225398), // Rule ID 2268 // |
| 79718 | /* 225341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 79719 | /* 225344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79720 | /* 225348 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79721 | /* 225352 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79722 | /* 225356 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79723 | /* 225360 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79724 | /* 225363 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79725 | /* 225367 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79726 | /* 225371 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79727 | /* 225373 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79728 | /* 225380 */ // (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) |
| 79729 | /* 225380 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDYrm), |
| 79730 | /* 225383 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79731 | /* 225385 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79732 | /* 225387 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79733 | /* 225391 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79734 | /* 225396 */ GIR_RootConstrainSelectedInstOperands, |
| 79735 | /* 225397 */ // GIR_Coverage, 2268, |
| 79736 | /* 225397 */ GIR_EraseRootFromParent_Done, |
| 79737 | /* 225398 */ // Label 5229: @225398 |
| 79738 | /* 225398 */ GIM_Try, /*On fail goto*//*Label 5230*/ GIMT_Encode4(225460), // Rule ID 6675 // |
| 79739 | /* 225403 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 79740 | /* 225406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79741 | /* 225410 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79742 | /* 225414 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79743 | /* 225418 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79744 | /* 225422 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79745 | /* 225425 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79746 | /* 225429 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79747 | /* 225433 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79748 | /* 225435 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79749 | /* 225442 */ // (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) |
| 79750 | /* 225442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ256rm), |
| 79751 | /* 225445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79752 | /* 225447 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79753 | /* 225449 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79754 | /* 225453 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79755 | /* 225458 */ GIR_RootConstrainSelectedInstOperands, |
| 79756 | /* 225459 */ // GIR_Coverage, 6675, |
| 79757 | /* 225459 */ GIR_EraseRootFromParent_Done, |
| 79758 | /* 225460 */ // Label 5230: @225460 |
| 79759 | /* 225460 */ GIM_Try, /*On fail goto*//*Label 5231*/ GIMT_Encode4(225491), // Rule ID 2266 // |
| 79760 | /* 225465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 79761 | /* 225468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79762 | /* 225472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79763 | /* 225476 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79764 | /* 225480 */ // (strict_fdiv:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) => (VDIVPDYrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2) |
| 79765 | /* 225480 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDYrr), |
| 79766 | /* 225485 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79767 | /* 225489 */ GIR_RootConstrainSelectedInstOperands, |
| 79768 | /* 225490 */ // GIR_Coverage, 2266, |
| 79769 | /* 225490 */ GIR_Done, |
| 79770 | /* 225491 */ // Label 5231: @225491 |
| 79771 | /* 225491 */ GIM_Try, /*On fail goto*//*Label 5232*/ GIMT_Encode4(225522), // Rule ID 6671 // |
| 79772 | /* 225496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 79773 | /* 225499 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79774 | /* 225503 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79775 | /* 225507 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79776 | /* 225511 */ // (strict_fdiv:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) => (VDIVPDZ256rr:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2) |
| 79777 | /* 225511 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZ256rr), |
| 79778 | /* 225516 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79779 | /* 225520 */ GIR_RootConstrainSelectedInstOperands, |
| 79780 | /* 225521 */ // GIR_Coverage, 6671, |
| 79781 | /* 225521 */ GIR_Done, |
| 79782 | /* 225522 */ // Label 5232: @225522 |
| 79783 | /* 225522 */ GIM_Reject, |
| 79784 | /* 225523 */ // Label 5228: @225523 |
| 79785 | /* 225523 */ GIM_Reject, |
| 79786 | /* 225524 */ // Label 5166: @225524 |
| 79787 | /* 225524 */ GIM_Try, /*On fail goto*//*Label 5233*/ GIMT_Encode4(225621), |
| 79788 | /* 225529 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 79789 | /* 225532 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 79790 | /* 225535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79791 | /* 225539 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79792 | /* 225543 */ GIM_Try, /*On fail goto*//*Label 5234*/ GIMT_Encode4(225597), // Rule ID 6699 // |
| 79793 | /* 225548 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 79794 | /* 225551 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79795 | /* 225555 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79796 | /* 225559 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79797 | /* 225562 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79798 | /* 225566 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79799 | /* 225570 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79800 | /* 225572 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79801 | /* 225579 */ // (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) |
| 79802 | /* 225579 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ128rm), |
| 79803 | /* 225582 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79804 | /* 225584 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79805 | /* 225586 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79806 | /* 225590 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79807 | /* 225595 */ GIR_RootConstrainSelectedInstOperands, |
| 79808 | /* 225596 */ // GIR_Coverage, 6699, |
| 79809 | /* 225596 */ GIR_EraseRootFromParent_Done, |
| 79810 | /* 225597 */ // Label 5234: @225597 |
| 79811 | /* 225597 */ GIM_Try, /*On fail goto*//*Label 5235*/ GIMT_Encode4(225620), // Rule ID 6695 // |
| 79812 | /* 225602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 79813 | /* 225605 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 79814 | /* 225609 */ // (strict_fdiv:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) => (VDIVPHZ128rr:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2) |
| 79815 | /* 225609 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ128rr), |
| 79816 | /* 225614 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79817 | /* 225618 */ GIR_RootConstrainSelectedInstOperands, |
| 79818 | /* 225619 */ // GIR_Coverage, 6695, |
| 79819 | /* 225619 */ GIR_Done, |
| 79820 | /* 225620 */ // Label 5235: @225620 |
| 79821 | /* 225620 */ GIM_Reject, |
| 79822 | /* 225621 */ // Label 5233: @225621 |
| 79823 | /* 225621 */ GIM_Reject, |
| 79824 | /* 225622 */ // Label 5167: @225622 |
| 79825 | /* 225622 */ GIM_Try, /*On fail goto*//*Label 5236*/ GIMT_Encode4(225820), |
| 79826 | /* 225627 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 79827 | /* 225630 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 79828 | /* 225633 */ GIM_Try, /*On fail goto*//*Label 5237*/ GIMT_Encode4(225695), // Rule ID 2264 // |
| 79829 | /* 225638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 79830 | /* 225641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79831 | /* 225645 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79832 | /* 225649 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79833 | /* 225653 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79834 | /* 225657 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79835 | /* 225660 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79836 | /* 225664 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79837 | /* 225668 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79838 | /* 225670 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79839 | /* 225677 */ // (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) |
| 79840 | /* 225677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSYrm), |
| 79841 | /* 225680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79842 | /* 225682 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79843 | /* 225684 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79844 | /* 225688 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79845 | /* 225693 */ GIR_RootConstrainSelectedInstOperands, |
| 79846 | /* 225694 */ // GIR_Coverage, 2264, |
| 79847 | /* 225694 */ GIR_EraseRootFromParent_Done, |
| 79848 | /* 225695 */ // Label 5237: @225695 |
| 79849 | /* 225695 */ GIM_Try, /*On fail goto*//*Label 5238*/ GIMT_Encode4(225757), // Rule ID 6651 // |
| 79850 | /* 225700 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 79851 | /* 225703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79852 | /* 225707 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79853 | /* 225711 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79854 | /* 225715 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79855 | /* 225719 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79856 | /* 225722 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79857 | /* 225726 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79858 | /* 225730 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79859 | /* 225732 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79860 | /* 225739 */ // (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) |
| 79861 | /* 225739 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ256rm), |
| 79862 | /* 225742 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79863 | /* 225744 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79864 | /* 225746 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79865 | /* 225750 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79866 | /* 225755 */ GIR_RootConstrainSelectedInstOperands, |
| 79867 | /* 225756 */ // GIR_Coverage, 6651, |
| 79868 | /* 225756 */ GIR_EraseRootFromParent_Done, |
| 79869 | /* 225757 */ // Label 5238: @225757 |
| 79870 | /* 225757 */ GIM_Try, /*On fail goto*//*Label 5239*/ GIMT_Encode4(225788), // Rule ID 2262 // |
| 79871 | /* 225762 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 79872 | /* 225765 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79873 | /* 225769 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79874 | /* 225773 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 79875 | /* 225777 */ // (strict_fdiv:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) => (VDIVPSYrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2) |
| 79876 | /* 225777 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSYrr), |
| 79877 | /* 225782 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79878 | /* 225786 */ GIR_RootConstrainSelectedInstOperands, |
| 79879 | /* 225787 */ // GIR_Coverage, 2262, |
| 79880 | /* 225787 */ GIR_Done, |
| 79881 | /* 225788 */ // Label 5239: @225788 |
| 79882 | /* 225788 */ GIM_Try, /*On fail goto*//*Label 5240*/ GIMT_Encode4(225819), // Rule ID 6647 // |
| 79883 | /* 225793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 79884 | /* 225796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79885 | /* 225800 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79886 | /* 225804 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79887 | /* 225808 */ // (strict_fdiv:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) => (VDIVPSZ256rr:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2) |
| 79888 | /* 225808 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZ256rr), |
| 79889 | /* 225813 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79890 | /* 225817 */ GIR_RootConstrainSelectedInstOperands, |
| 79891 | /* 225818 */ // GIR_Coverage, 6647, |
| 79892 | /* 225818 */ GIR_Done, |
| 79893 | /* 225819 */ // Label 5240: @225819 |
| 79894 | /* 225819 */ GIM_Reject, |
| 79895 | /* 225820 */ // Label 5236: @225820 |
| 79896 | /* 225820 */ GIM_Reject, |
| 79897 | /* 225821 */ // Label 5168: @225821 |
| 79898 | /* 225821 */ GIM_Try, /*On fail goto*//*Label 5241*/ GIMT_Encode4(225918), |
| 79899 | /* 225826 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 79900 | /* 225829 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 79901 | /* 225832 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79902 | /* 225836 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79903 | /* 225840 */ GIM_Try, /*On fail goto*//*Label 5242*/ GIMT_Encode4(225894), // Rule ID 6627 // |
| 79904 | /* 225845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79905 | /* 225848 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79906 | /* 225852 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79907 | /* 225856 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79908 | /* 225859 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79909 | /* 225863 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79910 | /* 225867 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79911 | /* 225869 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79912 | /* 225876 */ // (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) |
| 79913 | /* 225876 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPDZrm), |
| 79914 | /* 225879 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79915 | /* 225881 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79916 | /* 225883 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79917 | /* 225887 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79918 | /* 225892 */ GIR_RootConstrainSelectedInstOperands, |
| 79919 | /* 225893 */ // GIR_Coverage, 6627, |
| 79920 | /* 225893 */ GIR_EraseRootFromParent_Done, |
| 79921 | /* 225894 */ // Label 5242: @225894 |
| 79922 | /* 225894 */ GIM_Try, /*On fail goto*//*Label 5243*/ GIMT_Encode4(225917), // Rule ID 6623 // |
| 79923 | /* 225899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79924 | /* 225902 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79925 | /* 225906 */ // (strict_fdiv:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) => (VDIVPDZrr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2) |
| 79926 | /* 225906 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPDZrr), |
| 79927 | /* 225911 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79928 | /* 225915 */ GIR_RootConstrainSelectedInstOperands, |
| 79929 | /* 225916 */ // GIR_Coverage, 6623, |
| 79930 | /* 225916 */ GIR_Done, |
| 79931 | /* 225917 */ // Label 5243: @225917 |
| 79932 | /* 225917 */ GIM_Reject, |
| 79933 | /* 225918 */ // Label 5241: @225918 |
| 79934 | /* 225918 */ GIM_Reject, |
| 79935 | /* 225919 */ // Label 5169: @225919 |
| 79936 | /* 225919 */ GIM_Try, /*On fail goto*//*Label 5244*/ GIMT_Encode4(226016), |
| 79937 | /* 225924 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 79938 | /* 225927 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 79939 | /* 225930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79940 | /* 225934 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79941 | /* 225938 */ GIM_Try, /*On fail goto*//*Label 5245*/ GIMT_Encode4(225992), // Rule ID 6711 // |
| 79942 | /* 225943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 79943 | /* 225946 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79944 | /* 225950 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79945 | /* 225954 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79946 | /* 225957 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79947 | /* 225961 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79948 | /* 225965 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79949 | /* 225967 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79950 | /* 225974 */ // (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) |
| 79951 | /* 225974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ256rm), |
| 79952 | /* 225977 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79953 | /* 225979 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79954 | /* 225981 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79955 | /* 225985 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79956 | /* 225990 */ GIR_RootConstrainSelectedInstOperands, |
| 79957 | /* 225991 */ // GIR_Coverage, 6711, |
| 79958 | /* 225991 */ GIR_EraseRootFromParent_Done, |
| 79959 | /* 225992 */ // Label 5245: @225992 |
| 79960 | /* 225992 */ GIM_Try, /*On fail goto*//*Label 5246*/ GIMT_Encode4(226015), // Rule ID 6707 // |
| 79961 | /* 225997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 79962 | /* 226000 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 79963 | /* 226004 */ // (strict_fdiv:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) => (VDIVPHZ256rr:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2) |
| 79964 | /* 226004 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZ256rr), |
| 79965 | /* 226009 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 79966 | /* 226013 */ GIR_RootConstrainSelectedInstOperands, |
| 79967 | /* 226014 */ // GIR_Coverage, 6707, |
| 79968 | /* 226014 */ GIR_Done, |
| 79969 | /* 226015 */ // Label 5246: @226015 |
| 79970 | /* 226015 */ GIM_Reject, |
| 79971 | /* 226016 */ // Label 5244: @226016 |
| 79972 | /* 226016 */ GIM_Reject, |
| 79973 | /* 226017 */ // Label 5170: @226017 |
| 79974 | /* 226017 */ GIM_Try, /*On fail goto*//*Label 5247*/ GIMT_Encode4(226114), |
| 79975 | /* 226022 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 79976 | /* 226025 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 79977 | /* 226028 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79978 | /* 226032 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 79979 | /* 226036 */ GIM_Try, /*On fail goto*//*Label 5248*/ GIMT_Encode4(226090), // Rule ID 6615 // |
| 79980 | /* 226041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 79981 | /* 226044 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 79982 | /* 226048 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 79983 | /* 226052 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 79984 | /* 226055 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 79985 | /* 226059 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 79986 | /* 226063 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 79987 | /* 226065 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 79988 | /* 226072 */ // (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) |
| 79989 | /* 226072 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPSZrm), |
| 79990 | /* 226075 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 79991 | /* 226077 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 79992 | /* 226079 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 79993 | /* 226083 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 79994 | /* 226088 */ GIR_RootConstrainSelectedInstOperands, |
| 79995 | /* 226089 */ // GIR_Coverage, 6615, |
| 79996 | /* 226089 */ GIR_EraseRootFromParent_Done, |
| 79997 | /* 226090 */ // Label 5248: @226090 |
| 79998 | /* 226090 */ GIM_Try, /*On fail goto*//*Label 5249*/ GIMT_Encode4(226113), // Rule ID 6611 // |
| 79999 | /* 226095 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80000 | /* 226098 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80001 | /* 226102 */ // (strict_fdiv:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) => (VDIVPSZrr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2) |
| 80002 | /* 226102 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPSZrr), |
| 80003 | /* 226107 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80004 | /* 226111 */ GIR_RootConstrainSelectedInstOperands, |
| 80005 | /* 226112 */ // GIR_Coverage, 6611, |
| 80006 | /* 226112 */ GIR_Done, |
| 80007 | /* 226113 */ // Label 5249: @226113 |
| 80008 | /* 226113 */ GIM_Reject, |
| 80009 | /* 226114 */ // Label 5247: @226114 |
| 80010 | /* 226114 */ GIM_Reject, |
| 80011 | /* 226115 */ // Label 5171: @226115 |
| 80012 | /* 226115 */ GIM_Try, /*On fail goto*//*Label 5250*/ GIMT_Encode4(226212), |
| 80013 | /* 226120 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 80014 | /* 226123 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 80015 | /* 226126 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80016 | /* 226130 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80017 | /* 226134 */ GIM_Try, /*On fail goto*//*Label 5251*/ GIMT_Encode4(226188), // Rule ID 6687 // |
| 80018 | /* 226139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80019 | /* 226142 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80020 | /* 226146 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80021 | /* 226150 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80022 | /* 226153 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80023 | /* 226157 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80024 | /* 226161 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80025 | /* 226163 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80026 | /* 226170 */ // (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) |
| 80027 | /* 226170 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VDIVPHZrm), |
| 80028 | /* 226173 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80029 | /* 226175 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80030 | /* 226177 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80031 | /* 226181 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80032 | /* 226186 */ GIR_RootConstrainSelectedInstOperands, |
| 80033 | /* 226187 */ // GIR_Coverage, 6687, |
| 80034 | /* 226187 */ GIR_EraseRootFromParent_Done, |
| 80035 | /* 226188 */ // Label 5251: @226188 |
| 80036 | /* 226188 */ GIM_Try, /*On fail goto*//*Label 5252*/ GIMT_Encode4(226211), // Rule ID 6683 // |
| 80037 | /* 226193 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80038 | /* 226196 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 80039 | /* 226200 */ // (strict_fdiv:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) => (VDIVPHZrr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2) |
| 80040 | /* 226200 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VDIVPHZrr), |
| 80041 | /* 226205 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80042 | /* 226209 */ GIR_RootConstrainSelectedInstOperands, |
| 80043 | /* 226210 */ // GIR_Coverage, 6683, |
| 80044 | /* 226210 */ GIR_Done, |
| 80045 | /* 226211 */ // Label 5252: @226211 |
| 80046 | /* 226211 */ GIM_Reject, |
| 80047 | /* 226212 */ // Label 5250: @226212 |
| 80048 | /* 226212 */ GIM_Reject, |
| 80049 | /* 226213 */ // Label 5172: @226213 |
| 80050 | /* 226213 */ GIM_Reject, |
| 80051 | /* 226214 */ // Label 73: @226214 |
| 80052 | /* 226214 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 5265*/ GIMT_Encode4(232201), |
| 80053 | /* 226225 */ /*GILLT_s16*//*Label 5253*/ GIMT_Encode4(226309), |
| 80054 | /* 226229 */ /*GILLT_s32*//*Label 5254*/ GIMT_Encode4(226554), |
| 80055 | /* 226233 */ /*GILLT_s64*//*Label 5255*/ GIMT_Encode4(227291), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 80056 | /* 226249 */ /*GILLT_v2s64*//*Label 5256*/ GIMT_Encode4(228028), GIMT_Encode4(0), |
| 80057 | /* 226257 */ /*GILLT_v4s32*//*Label 5257*/ GIMT_Encode4(228765), |
| 80058 | /* 226261 */ /*GILLT_v4s64*//*Label 5258*/ GIMT_Encode4(229502), GIMT_Encode4(0), |
| 80059 | /* 226269 */ /*GILLT_v8s16*//*Label 5259*/ GIMT_Encode4(230239), |
| 80060 | /* 226273 */ /*GILLT_v8s32*//*Label 5260*/ GIMT_Encode4(230484), |
| 80061 | /* 226277 */ /*GILLT_v8s64*//*Label 5261*/ GIMT_Encode4(231221), GIMT_Encode4(0), GIMT_Encode4(0), |
| 80062 | /* 226289 */ /*GILLT_v16s16*//*Label 5262*/ GIMT_Encode4(231466), |
| 80063 | /* 226293 */ /*GILLT_v16s32*//*Label 5263*/ GIMT_Encode4(231711), GIMT_Encode4(0), GIMT_Encode4(0), |
| 80064 | /* 226305 */ /*GILLT_v32s16*//*Label 5264*/ GIMT_Encode4(231956), |
| 80065 | /* 226309 */ // Label 5253: @226309 |
| 80066 | /* 226309 */ GIM_Try, /*On fail goto*//*Label 5266*/ GIMT_Encode4(226553), |
| 80067 | /* 226314 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 80068 | /* 226317 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s16, |
| 80069 | /* 226320 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s16, |
| 80070 | /* 226323 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80071 | /* 226327 */ GIM_Try, /*On fail goto*//*Label 5267*/ GIMT_Encode4(226391), // Rule ID 10161 // |
| 80072 | /* 226332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80073 | /* 226335 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80074 | /* 226339 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80075 | /* 226343 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80076 | /* 226346 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80077 | /* 226350 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80078 | /* 226354 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80079 | /* 226358 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80080 | /* 226362 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80081 | /* 226364 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80082 | /* 226371 */ // (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) |
| 80083 | /* 226371 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SHZm), |
| 80084 | /* 226374 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80085 | /* 226376 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80086 | /* 226378 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80087 | /* 226380 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80088 | /* 226384 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80089 | /* 226389 */ GIR_RootConstrainSelectedInstOperands, |
| 80090 | /* 226390 */ // GIR_Coverage, 10161, |
| 80091 | /* 226390 */ GIR_EraseRootFromParent_Done, |
| 80092 | /* 226391 */ // Label 5267: @226391 |
| 80093 | /* 226391 */ GIM_Try, /*On fail goto*//*Label 5268*/ GIMT_Encode4(226455), // Rule ID 10159 // |
| 80094 | /* 226396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80095 | /* 226399 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80096 | /* 226403 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80097 | /* 226407 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80098 | /* 226411 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80099 | /* 226414 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80100 | /* 226418 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80101 | /* 226422 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80102 | /* 226426 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80103 | /* 226428 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80104 | /* 226435 */ // (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) |
| 80105 | /* 226435 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SHZm), |
| 80106 | /* 226438 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80107 | /* 226440 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80108 | /* 226442 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80109 | /* 226444 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80110 | /* 226448 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80111 | /* 226453 */ GIR_RootConstrainSelectedInstOperands, |
| 80112 | /* 226454 */ // GIR_Coverage, 10159, |
| 80113 | /* 226454 */ GIR_EraseRootFromParent_Done, |
| 80114 | /* 226455 */ // Label 5268: @226455 |
| 80115 | /* 226455 */ GIM_Try, /*On fail goto*//*Label 5269*/ GIMT_Encode4(226519), // Rule ID 10156 // |
| 80116 | /* 226460 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80117 | /* 226463 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80118 | /* 226467 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80119 | /* 226471 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80120 | /* 226475 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80121 | /* 226479 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80122 | /* 226482 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80123 | /* 226486 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80124 | /* 226490 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80125 | /* 226492 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80126 | /* 226499 */ // (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) |
| 80127 | /* 226499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SHZm), |
| 80128 | /* 226502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80129 | /* 226504 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80130 | /* 226506 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80131 | /* 226508 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80132 | /* 226512 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80133 | /* 226517 */ GIR_RootConstrainSelectedInstOperands, |
| 80134 | /* 226518 */ // GIR_Coverage, 10156, |
| 80135 | /* 226518 */ GIR_EraseRootFromParent_Done, |
| 80136 | /* 226519 */ // Label 5269: @226519 |
| 80137 | /* 226519 */ GIM_Try, /*On fail goto*//*Label 5270*/ GIMT_Encode4(226552), // Rule ID 10154 // |
| 80138 | /* 226524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 80139 | /* 226527 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80140 | /* 226531 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80141 | /* 226535 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 80142 | /* 226539 */ // (strict_fma:{ *:[f16] } FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src3) => (VFMADD213SHZr:{ *:[f16] } FR16X:{ *:[f16] }:$src1, FR16X:{ *:[f16] }:$src2, FR16X:{ *:[f16] }:$src3) |
| 80143 | /* 226539 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SHZr), |
| 80144 | /* 226542 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80145 | /* 226544 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80146 | /* 226546 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80147 | /* 226548 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80148 | /* 226550 */ GIR_RootConstrainSelectedInstOperands, |
| 80149 | /* 226551 */ // GIR_Coverage, 10154, |
| 80150 | /* 226551 */ GIR_EraseRootFromParent_Done, |
| 80151 | /* 226552 */ // Label 5270: @226552 |
| 80152 | /* 226552 */ GIM_Reject, |
| 80153 | /* 226553 */ // Label 5266: @226553 |
| 80154 | /* 226553 */ GIM_Reject, |
| 80155 | /* 226554 */ // Label 5254: @226554 |
| 80156 | /* 226554 */ GIM_Try, /*On fail goto*//*Label 5271*/ GIMT_Encode4(227290), |
| 80157 | /* 226559 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 80158 | /* 226562 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 80159 | /* 226565 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 80160 | /* 226568 */ GIM_Try, /*On fail goto*//*Label 5272*/ GIMT_Encode4(226636), // Rule ID 1303 // |
| 80161 | /* 226573 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80162 | /* 226576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80163 | /* 226580 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80164 | /* 226584 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80165 | /* 226588 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80166 | /* 226591 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80167 | /* 226595 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80168 | /* 226599 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80169 | /* 226603 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80170 | /* 226607 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80171 | /* 226609 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80172 | /* 226616 */ // (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) |
| 80173 | /* 226616 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SSm), |
| 80174 | /* 226619 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80175 | /* 226621 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80176 | /* 226623 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80177 | /* 226625 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80178 | /* 226629 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80179 | /* 226634 */ GIR_RootConstrainSelectedInstOperands, |
| 80180 | /* 226635 */ // GIR_Coverage, 1303, |
| 80181 | /* 226635 */ GIR_EraseRootFromParent_Done, |
| 80182 | /* 226636 */ // Label 5272: @226636 |
| 80183 | /* 226636 */ GIM_Try, /*On fail goto*//*Label 5273*/ GIMT_Encode4(226704), // Rule ID 10143 // |
| 80184 | /* 226641 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80185 | /* 226644 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80186 | /* 226648 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80187 | /* 226652 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80188 | /* 226656 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80189 | /* 226659 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80190 | /* 226663 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80191 | /* 226667 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80192 | /* 226671 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80193 | /* 226675 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80194 | /* 226677 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80195 | /* 226684 */ // (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) |
| 80196 | /* 226684 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SSZm), |
| 80197 | /* 226687 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80198 | /* 226689 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80199 | /* 226691 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80200 | /* 226693 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80201 | /* 226697 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80202 | /* 226702 */ GIR_RootConstrainSelectedInstOperands, |
| 80203 | /* 226703 */ // GIR_Coverage, 10143, |
| 80204 | /* 226703 */ GIR_EraseRootFromParent_Done, |
| 80205 | /* 226704 */ // Label 5273: @226704 |
| 80206 | /* 226704 */ GIM_Try, /*On fail goto*//*Label 5274*/ GIMT_Encode4(226772), // Rule ID 23362 // |
| 80207 | /* 226709 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80208 | /* 226712 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80209 | /* 226716 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80210 | /* 226720 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80211 | /* 226724 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80212 | /* 226727 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80213 | /* 226731 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80214 | /* 226735 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80215 | /* 226739 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80216 | /* 226743 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80217 | /* 226745 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80218 | /* 226752 */ // (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) |
| 80219 | /* 226752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4mr), |
| 80220 | /* 226755 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80221 | /* 226757 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80222 | /* 226759 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80223 | /* 226763 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80224 | /* 226765 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80225 | /* 226770 */ GIR_RootConstrainSelectedInstOperands, |
| 80226 | /* 226771 */ // GIR_Coverage, 23362, |
| 80227 | /* 226771 */ GIR_EraseRootFromParent_Done, |
| 80228 | /* 226772 */ // Label 5274: @226772 |
| 80229 | /* 226772 */ GIM_Try, /*On fail goto*//*Label 5275*/ GIMT_Encode4(226840), // Rule ID 1301 // |
| 80230 | /* 226777 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80231 | /* 226780 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80232 | /* 226784 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80233 | /* 226788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80234 | /* 226792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80235 | /* 226796 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80236 | /* 226799 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80237 | /* 226803 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80238 | /* 226807 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80239 | /* 226811 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80240 | /* 226813 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80241 | /* 226820 */ // (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) |
| 80242 | /* 226820 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SSm), |
| 80243 | /* 226823 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80244 | /* 226825 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80245 | /* 226827 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80246 | /* 226829 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80247 | /* 226833 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80248 | /* 226838 */ GIR_RootConstrainSelectedInstOperands, |
| 80249 | /* 226839 */ // GIR_Coverage, 1301, |
| 80250 | /* 226839 */ GIR_EraseRootFromParent_Done, |
| 80251 | /* 226840 */ // Label 5275: @226840 |
| 80252 | /* 226840 */ GIM_Try, /*On fail goto*//*Label 5276*/ GIMT_Encode4(226908), // Rule ID 1365 // |
| 80253 | /* 226845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80254 | /* 226848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80255 | /* 226852 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80256 | /* 226856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80257 | /* 226860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80258 | /* 226864 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80259 | /* 226867 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80260 | /* 226871 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80261 | /* 226875 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80262 | /* 226879 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80263 | /* 226881 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80264 | /* 226888 */ // (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) |
| 80265 | /* 226888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4mr), |
| 80266 | /* 226891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80267 | /* 226893 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80268 | /* 226895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80269 | /* 226899 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80270 | /* 226901 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80271 | /* 226906 */ GIR_RootConstrainSelectedInstOperands, |
| 80272 | /* 226907 */ // GIR_Coverage, 1365, |
| 80273 | /* 226907 */ GIR_EraseRootFromParent_Done, |
| 80274 | /* 226908 */ // Label 5276: @226908 |
| 80275 | /* 226908 */ GIM_Try, /*On fail goto*//*Label 5277*/ GIMT_Encode4(226976), // Rule ID 10141 // |
| 80276 | /* 226913 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80277 | /* 226916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80278 | /* 226920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80279 | /* 226924 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80280 | /* 226928 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80281 | /* 226932 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80282 | /* 226935 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80283 | /* 226939 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80284 | /* 226943 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80285 | /* 226947 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80286 | /* 226949 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80287 | /* 226956 */ // (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) |
| 80288 | /* 226956 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SSZm), |
| 80289 | /* 226959 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80290 | /* 226961 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80291 | /* 226963 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80292 | /* 226965 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80293 | /* 226969 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80294 | /* 226974 */ GIR_RootConstrainSelectedInstOperands, |
| 80295 | /* 226975 */ // GIR_Coverage, 10141, |
| 80296 | /* 226975 */ GIR_EraseRootFromParent_Done, |
| 80297 | /* 226976 */ // Label 5277: @226976 |
| 80298 | /* 226976 */ GIM_Try, /*On fail goto*//*Label 5278*/ GIMT_Encode4(227044), // Rule ID 1299 // |
| 80299 | /* 226981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80300 | /* 226984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80301 | /* 226988 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80302 | /* 226992 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80303 | /* 226996 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80304 | /* 227000 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80305 | /* 227004 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80306 | /* 227007 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80307 | /* 227011 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80308 | /* 227015 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80309 | /* 227017 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80310 | /* 227024 */ // (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) |
| 80311 | /* 227024 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSm), |
| 80312 | /* 227027 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80313 | /* 227029 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80314 | /* 227031 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80315 | /* 227033 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80316 | /* 227037 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80317 | /* 227042 */ GIR_RootConstrainSelectedInstOperands, |
| 80318 | /* 227043 */ // GIR_Coverage, 1299, |
| 80319 | /* 227043 */ GIR_EraseRootFromParent_Done, |
| 80320 | /* 227044 */ // Label 5278: @227044 |
| 80321 | /* 227044 */ GIM_Try, /*On fail goto*//*Label 5279*/ GIMT_Encode4(227112), // Rule ID 1363 // |
| 80322 | /* 227049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80323 | /* 227052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80324 | /* 227056 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80325 | /* 227060 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80326 | /* 227064 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80327 | /* 227068 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80328 | /* 227072 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80329 | /* 227075 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80330 | /* 227079 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80331 | /* 227083 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80332 | /* 227085 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80333 | /* 227092 */ // (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) |
| 80334 | /* 227092 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4rm), |
| 80335 | /* 227095 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80336 | /* 227097 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80337 | /* 227099 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 80338 | /* 227101 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80339 | /* 227105 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80340 | /* 227110 */ GIR_RootConstrainSelectedInstOperands, |
| 80341 | /* 227111 */ // GIR_Coverage, 1363, |
| 80342 | /* 227111 */ GIR_EraseRootFromParent_Done, |
| 80343 | /* 227112 */ // Label 5279: @227112 |
| 80344 | /* 227112 */ GIM_Try, /*On fail goto*//*Label 5280*/ GIMT_Encode4(227180), // Rule ID 10138 // |
| 80345 | /* 227117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80346 | /* 227120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80347 | /* 227124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80348 | /* 227128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80349 | /* 227132 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80350 | /* 227136 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80351 | /* 227140 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80352 | /* 227143 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80353 | /* 227147 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80354 | /* 227151 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80355 | /* 227153 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80356 | /* 227160 */ // (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) |
| 80357 | /* 227160 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSZm), |
| 80358 | /* 227163 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80359 | /* 227165 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80360 | /* 227167 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80361 | /* 227169 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80362 | /* 227173 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80363 | /* 227178 */ GIR_RootConstrainSelectedInstOperands, |
| 80364 | /* 227179 */ // GIR_Coverage, 10138, |
| 80365 | /* 227179 */ GIR_EraseRootFromParent_Done, |
| 80366 | /* 227180 */ // Label 5280: @227180 |
| 80367 | /* 227180 */ GIM_Try, /*On fail goto*//*Label 5281*/ GIMT_Encode4(227217), // Rule ID 1297 // |
| 80368 | /* 227185 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80369 | /* 227188 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80370 | /* 227192 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80371 | /* 227196 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80372 | /* 227200 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80373 | /* 227204 */ // (strict_fma:{ *:[f32] } FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src3) => (VFMADD213SSr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) |
| 80374 | /* 227204 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSr), |
| 80375 | /* 227207 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80376 | /* 227209 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80377 | /* 227211 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80378 | /* 227213 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80379 | /* 227215 */ GIR_RootConstrainSelectedInstOperands, |
| 80380 | /* 227216 */ // GIR_Coverage, 1297, |
| 80381 | /* 227216 */ GIR_EraseRootFromParent_Done, |
| 80382 | /* 227217 */ // Label 5281: @227217 |
| 80383 | /* 227217 */ GIM_Try, /*On fail goto*//*Label 5282*/ GIMT_Encode4(227252), // Rule ID 1361 // |
| 80384 | /* 227222 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80385 | /* 227225 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80386 | /* 227229 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80387 | /* 227233 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80388 | /* 227237 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 80389 | /* 227241 */ // (strict_fma:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) => (VFMADDSS4rr:{ *:[f32] } FR32:{ *:[f32] }:$src1, FR32:{ *:[f32] }:$src2, FR32:{ *:[f32] }:$src3) |
| 80390 | /* 227241 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDSS4rr), |
| 80391 | /* 227246 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80392 | /* 227250 */ GIR_RootConstrainSelectedInstOperands, |
| 80393 | /* 227251 */ // GIR_Coverage, 1361, |
| 80394 | /* 227251 */ GIR_Done, |
| 80395 | /* 227252 */ // Label 5282: @227252 |
| 80396 | /* 227252 */ GIM_Try, /*On fail goto*//*Label 5283*/ GIMT_Encode4(227289), // Rule ID 10136 // |
| 80397 | /* 227257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80398 | /* 227260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80399 | /* 227264 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80400 | /* 227268 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80401 | /* 227272 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 80402 | /* 227276 */ // (strict_fma:{ *:[f32] } FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src3) => (VFMADD213SSZr:{ *:[f32] } FR32X:{ *:[f32] }:$src1, FR32X:{ *:[f32] }:$src2, FR32X:{ *:[f32] }:$src3) |
| 80403 | /* 227276 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SSZr), |
| 80404 | /* 227279 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80405 | /* 227281 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80406 | /* 227283 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80407 | /* 227285 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80408 | /* 227287 */ GIR_RootConstrainSelectedInstOperands, |
| 80409 | /* 227288 */ // GIR_Coverage, 10136, |
| 80410 | /* 227288 */ GIR_EraseRootFromParent_Done, |
| 80411 | /* 227289 */ // Label 5283: @227289 |
| 80412 | /* 227289 */ GIM_Reject, |
| 80413 | /* 227290 */ // Label 5271: @227290 |
| 80414 | /* 227290 */ GIM_Reject, |
| 80415 | /* 227291 */ // Label 5255: @227291 |
| 80416 | /* 227291 */ GIM_Try, /*On fail goto*//*Label 5284*/ GIMT_Encode4(228027), |
| 80417 | /* 227296 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 80418 | /* 227299 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 80419 | /* 227302 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 80420 | /* 227305 */ GIM_Try, /*On fail goto*//*Label 5285*/ GIMT_Encode4(227373), // Rule ID 1311 // |
| 80421 | /* 227310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80422 | /* 227313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80423 | /* 227317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80424 | /* 227321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80425 | /* 227325 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80426 | /* 227328 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80427 | /* 227332 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80428 | /* 227336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80429 | /* 227340 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80430 | /* 227344 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80431 | /* 227346 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80432 | /* 227353 */ // (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) |
| 80433 | /* 227353 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SDm), |
| 80434 | /* 227356 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80435 | /* 227358 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80436 | /* 227360 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80437 | /* 227362 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80438 | /* 227366 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80439 | /* 227371 */ GIR_RootConstrainSelectedInstOperands, |
| 80440 | /* 227372 */ // GIR_Coverage, 1311, |
| 80441 | /* 227372 */ GIR_EraseRootFromParent_Done, |
| 80442 | /* 227373 */ // Label 5285: @227373 |
| 80443 | /* 227373 */ GIM_Try, /*On fail goto*//*Label 5286*/ GIMT_Encode4(227441), // Rule ID 10152 // |
| 80444 | /* 227378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80445 | /* 227381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80446 | /* 227385 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80447 | /* 227389 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80448 | /* 227393 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80449 | /* 227396 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80450 | /* 227400 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80451 | /* 227404 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80452 | /* 227408 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80453 | /* 227412 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80454 | /* 227414 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80455 | /* 227421 */ // (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) |
| 80456 | /* 227421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132SDZm), |
| 80457 | /* 227424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80458 | /* 227426 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80459 | /* 227428 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80460 | /* 227430 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80461 | /* 227434 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80462 | /* 227439 */ GIR_RootConstrainSelectedInstOperands, |
| 80463 | /* 227440 */ // GIR_Coverage, 10152, |
| 80464 | /* 227440 */ GIR_EraseRootFromParent_Done, |
| 80465 | /* 227441 */ // Label 5286: @227441 |
| 80466 | /* 227441 */ GIM_Try, /*On fail goto*//*Label 5287*/ GIMT_Encode4(227509), // Rule ID 23390 // |
| 80467 | /* 227446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80468 | /* 227449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80469 | /* 227453 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80470 | /* 227457 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80471 | /* 227461 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80472 | /* 227464 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80473 | /* 227468 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80474 | /* 227472 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80475 | /* 227476 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80476 | /* 227480 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80477 | /* 227482 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80478 | /* 227489 */ // (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) |
| 80479 | /* 227489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4mr), |
| 80480 | /* 227492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80481 | /* 227494 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80482 | /* 227496 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80483 | /* 227500 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80484 | /* 227502 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80485 | /* 227507 */ GIR_RootConstrainSelectedInstOperands, |
| 80486 | /* 227508 */ // GIR_Coverage, 23390, |
| 80487 | /* 227508 */ GIR_EraseRootFromParent_Done, |
| 80488 | /* 227509 */ // Label 5287: @227509 |
| 80489 | /* 227509 */ GIM_Try, /*On fail goto*//*Label 5288*/ GIMT_Encode4(227577), // Rule ID 1309 // |
| 80490 | /* 227514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80491 | /* 227517 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80492 | /* 227521 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80493 | /* 227525 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80494 | /* 227529 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80495 | /* 227533 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80496 | /* 227536 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80497 | /* 227540 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80498 | /* 227544 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80499 | /* 227548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80500 | /* 227550 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80501 | /* 227557 */ // (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) |
| 80502 | /* 227557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SDm), |
| 80503 | /* 227560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80504 | /* 227562 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80505 | /* 227564 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80506 | /* 227566 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80507 | /* 227570 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80508 | /* 227575 */ GIR_RootConstrainSelectedInstOperands, |
| 80509 | /* 227576 */ // GIR_Coverage, 1309, |
| 80510 | /* 227576 */ GIR_EraseRootFromParent_Done, |
| 80511 | /* 227577 */ // Label 5288: @227577 |
| 80512 | /* 227577 */ GIM_Try, /*On fail goto*//*Label 5289*/ GIMT_Encode4(227645), // Rule ID 1449 // |
| 80513 | /* 227582 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80514 | /* 227585 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80515 | /* 227589 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80516 | /* 227593 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80517 | /* 227597 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80518 | /* 227601 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80519 | /* 227604 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80520 | /* 227608 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80521 | /* 227612 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80522 | /* 227616 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80523 | /* 227618 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80524 | /* 227625 */ // (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) |
| 80525 | /* 227625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4mr), |
| 80526 | /* 227628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80527 | /* 227630 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80528 | /* 227632 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80529 | /* 227636 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80530 | /* 227638 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80531 | /* 227643 */ GIR_RootConstrainSelectedInstOperands, |
| 80532 | /* 227644 */ // GIR_Coverage, 1449, |
| 80533 | /* 227644 */ GIR_EraseRootFromParent_Done, |
| 80534 | /* 227645 */ // Label 5289: @227645 |
| 80535 | /* 227645 */ GIM_Try, /*On fail goto*//*Label 5290*/ GIMT_Encode4(227713), // Rule ID 10150 // |
| 80536 | /* 227650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80537 | /* 227653 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80538 | /* 227657 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80539 | /* 227661 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80540 | /* 227665 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80541 | /* 227669 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80542 | /* 227672 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80543 | /* 227676 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80544 | /* 227680 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80545 | /* 227684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80546 | /* 227686 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80547 | /* 227693 */ // (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) |
| 80548 | /* 227693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231SDZm), |
| 80549 | /* 227696 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80550 | /* 227698 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80551 | /* 227700 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80552 | /* 227702 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80553 | /* 227706 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80554 | /* 227711 */ GIR_RootConstrainSelectedInstOperands, |
| 80555 | /* 227712 */ // GIR_Coverage, 10150, |
| 80556 | /* 227712 */ GIR_EraseRootFromParent_Done, |
| 80557 | /* 227713 */ // Label 5290: @227713 |
| 80558 | /* 227713 */ GIM_Try, /*On fail goto*//*Label 5291*/ GIMT_Encode4(227781), // Rule ID 1307 // |
| 80559 | /* 227718 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80560 | /* 227721 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80561 | /* 227725 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80562 | /* 227729 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80563 | /* 227733 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80564 | /* 227737 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80565 | /* 227741 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80566 | /* 227744 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80567 | /* 227748 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80568 | /* 227752 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80569 | /* 227754 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80570 | /* 227761 */ // (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) |
| 80571 | /* 227761 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDm), |
| 80572 | /* 227764 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80573 | /* 227766 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80574 | /* 227768 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80575 | /* 227770 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80576 | /* 227774 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80577 | /* 227779 */ GIR_RootConstrainSelectedInstOperands, |
| 80578 | /* 227780 */ // GIR_Coverage, 1307, |
| 80579 | /* 227780 */ GIR_EraseRootFromParent_Done, |
| 80580 | /* 227781 */ // Label 5291: @227781 |
| 80581 | /* 227781 */ GIM_Try, /*On fail goto*//*Label 5292*/ GIMT_Encode4(227849), // Rule ID 1447 // |
| 80582 | /* 227786 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80583 | /* 227789 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80584 | /* 227793 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80585 | /* 227797 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80586 | /* 227801 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80587 | /* 227805 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80588 | /* 227809 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80589 | /* 227812 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80590 | /* 227816 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80591 | /* 227820 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80592 | /* 227822 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80593 | /* 227829 */ // (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) |
| 80594 | /* 227829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4rm), |
| 80595 | /* 227832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80596 | /* 227834 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80597 | /* 227836 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 80598 | /* 227838 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80599 | /* 227842 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80600 | /* 227847 */ GIR_RootConstrainSelectedInstOperands, |
| 80601 | /* 227848 */ // GIR_Coverage, 1447, |
| 80602 | /* 227848 */ GIR_EraseRootFromParent_Done, |
| 80603 | /* 227849 */ // Label 5292: @227849 |
| 80604 | /* 227849 */ GIM_Try, /*On fail goto*//*Label 5293*/ GIMT_Encode4(227917), // Rule ID 10147 // |
| 80605 | /* 227854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80606 | /* 227857 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80607 | /* 227861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80608 | /* 227865 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80609 | /* 227869 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80610 | /* 227873 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80611 | /* 227877 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80612 | /* 227880 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80613 | /* 227884 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80614 | /* 227888 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80615 | /* 227890 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80616 | /* 227897 */ // (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) |
| 80617 | /* 227897 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDZm), |
| 80618 | /* 227900 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80619 | /* 227902 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80620 | /* 227904 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80621 | /* 227906 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80622 | /* 227910 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80623 | /* 227915 */ GIR_RootConstrainSelectedInstOperands, |
| 80624 | /* 227916 */ // GIR_Coverage, 10147, |
| 80625 | /* 227916 */ GIR_EraseRootFromParent_Done, |
| 80626 | /* 227917 */ // Label 5293: @227917 |
| 80627 | /* 227917 */ GIM_Try, /*On fail goto*//*Label 5294*/ GIMT_Encode4(227954), // Rule ID 1305 // |
| 80628 | /* 227922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoAVX512_NoFMA4), |
| 80629 | /* 227925 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80630 | /* 227929 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80631 | /* 227933 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80632 | /* 227937 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80633 | /* 227941 */ // (strict_fma:{ *:[f64] } FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src3) => (VFMADD213SDr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) |
| 80634 | /* 227941 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDr), |
| 80635 | /* 227944 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80636 | /* 227946 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80637 | /* 227948 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80638 | /* 227950 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80639 | /* 227952 */ GIR_RootConstrainSelectedInstOperands, |
| 80640 | /* 227953 */ // GIR_Coverage, 1305, |
| 80641 | /* 227953 */ GIR_EraseRootFromParent_Done, |
| 80642 | /* 227954 */ // Label 5294: @227954 |
| 80643 | /* 227954 */ GIM_Try, /*On fail goto*//*Label 5295*/ GIMT_Encode4(227989), // Rule ID 1445 // |
| 80644 | /* 227959 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoAVX512), |
| 80645 | /* 227962 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80646 | /* 227966 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80647 | /* 227970 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80648 | /* 227974 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 80649 | /* 227978 */ // (strict_fma:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) => (VFMADDSD4rr:{ *:[f64] } FR64:{ *:[f64] }:$src1, FR64:{ *:[f64] }:$src2, FR64:{ *:[f64] }:$src3) |
| 80650 | /* 227978 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDSD4rr), |
| 80651 | /* 227983 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80652 | /* 227987 */ GIR_RootConstrainSelectedInstOperands, |
| 80653 | /* 227988 */ // GIR_Coverage, 1445, |
| 80654 | /* 227988 */ GIR_Done, |
| 80655 | /* 227989 */ // Label 5295: @227989 |
| 80656 | /* 227989 */ GIM_Try, /*On fail goto*//*Label 5296*/ GIMT_Encode4(228026), // Rule ID 10145 // |
| 80657 | /* 227994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 80658 | /* 227997 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80659 | /* 228001 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80660 | /* 228005 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80661 | /* 228009 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 80662 | /* 228013 */ // (strict_fma:{ *:[f64] } FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src3) => (VFMADD213SDZr:{ *:[f64] } FR64X:{ *:[f64] }:$src1, FR64X:{ *:[f64] }:$src2, FR64X:{ *:[f64] }:$src3) |
| 80663 | /* 228013 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213SDZr), |
| 80664 | /* 228016 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80665 | /* 228018 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80666 | /* 228020 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80667 | /* 228022 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80668 | /* 228024 */ GIR_RootConstrainSelectedInstOperands, |
| 80669 | /* 228025 */ // GIR_Coverage, 10145, |
| 80670 | /* 228025 */ GIR_EraseRootFromParent_Done, |
| 80671 | /* 228026 */ // Label 5296: @228026 |
| 80672 | /* 228026 */ GIM_Reject, |
| 80673 | /* 228027 */ // Label 5284: @228027 |
| 80674 | /* 228027 */ GIM_Reject, |
| 80675 | /* 228028 */ // Label 5256: @228028 |
| 80676 | /* 228028 */ GIM_Try, /*On fail goto*//*Label 5297*/ GIMT_Encode4(228764), |
| 80677 | /* 228033 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 80678 | /* 228036 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 80679 | /* 228039 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 80680 | /* 228042 */ GIM_Try, /*On fail goto*//*Label 5298*/ GIMT_Encode4(228110), // Rule ID 1191 // |
| 80681 | /* 228047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 80682 | /* 228050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80683 | /* 228054 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80684 | /* 228058 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80685 | /* 228062 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80686 | /* 228065 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80687 | /* 228069 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80688 | /* 228073 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80689 | /* 228077 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80690 | /* 228081 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80691 | /* 228083 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80692 | /* 228090 */ // (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) |
| 80693 | /* 228090 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDm), |
| 80694 | /* 228093 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80695 | /* 228095 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80696 | /* 228097 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80697 | /* 228099 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80698 | /* 228103 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80699 | /* 228108 */ GIR_RootConstrainSelectedInstOperands, |
| 80700 | /* 228109 */ // GIR_Coverage, 1191, |
| 80701 | /* 228109 */ GIR_EraseRootFromParent_Done, |
| 80702 | /* 228110 */ // Label 5298: @228110 |
| 80703 | /* 228110 */ GIM_Try, /*On fail goto*//*Label 5299*/ GIMT_Encode4(228178), // Rule ID 9684 // |
| 80704 | /* 228115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80705 | /* 228118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80706 | /* 228122 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80707 | /* 228126 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80708 | /* 228130 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80709 | /* 228133 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80710 | /* 228137 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80711 | /* 228141 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80712 | /* 228145 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80713 | /* 228149 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80714 | /* 228151 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80715 | /* 228158 */ // (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) |
| 80716 | /* 228158 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZ128m), |
| 80717 | /* 228161 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80718 | /* 228163 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80719 | /* 228165 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80720 | /* 228167 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80721 | /* 228171 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80722 | /* 228176 */ GIR_RootConstrainSelectedInstOperands, |
| 80723 | /* 228177 */ // GIR_Coverage, 9684, |
| 80724 | /* 228177 */ GIR_EraseRootFromParent_Done, |
| 80725 | /* 228178 */ // Label 5299: @228178 |
| 80726 | /* 228178 */ GIM_Try, /*On fail goto*//*Label 5300*/ GIMT_Encode4(228246), // Rule ID 23398 // |
| 80727 | /* 228183 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 80728 | /* 228186 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80729 | /* 228190 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80730 | /* 228194 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80731 | /* 228198 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80732 | /* 228201 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80733 | /* 228205 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80734 | /* 228209 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80735 | /* 228213 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80736 | /* 228217 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80737 | /* 228219 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80738 | /* 228226 */ // (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) |
| 80739 | /* 228226 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4mr), |
| 80740 | /* 228229 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80741 | /* 228231 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80742 | /* 228233 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80743 | /* 228237 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80744 | /* 228239 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80745 | /* 228244 */ GIR_RootConstrainSelectedInstOperands, |
| 80746 | /* 228245 */ // GIR_Coverage, 23398, |
| 80747 | /* 228245 */ GIR_EraseRootFromParent_Done, |
| 80748 | /* 228246 */ // Label 5300: @228246 |
| 80749 | /* 228246 */ GIM_Try, /*On fail goto*//*Label 5301*/ GIMT_Encode4(228314), // Rule ID 1189 // |
| 80750 | /* 228251 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 80751 | /* 228254 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80752 | /* 228258 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80753 | /* 228262 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80754 | /* 228266 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80755 | /* 228270 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80756 | /* 228273 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80757 | /* 228277 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80758 | /* 228281 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80759 | /* 228285 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80760 | /* 228287 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80761 | /* 228294 */ // (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) |
| 80762 | /* 228294 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDm), |
| 80763 | /* 228297 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80764 | /* 228299 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80765 | /* 228301 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80766 | /* 228303 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80767 | /* 228307 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80768 | /* 228312 */ GIR_RootConstrainSelectedInstOperands, |
| 80769 | /* 228313 */ // GIR_Coverage, 1189, |
| 80770 | /* 228313 */ GIR_EraseRootFromParent_Done, |
| 80771 | /* 228314 */ // Label 5301: @228314 |
| 80772 | /* 228314 */ GIM_Try, /*On fail goto*//*Label 5302*/ GIMT_Encode4(228382), // Rule ID 1473 // |
| 80773 | /* 228319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 80774 | /* 228322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80775 | /* 228326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80776 | /* 228330 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80777 | /* 228334 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80778 | /* 228338 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80779 | /* 228341 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80780 | /* 228345 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80781 | /* 228349 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80782 | /* 228353 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80783 | /* 228355 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80784 | /* 228362 */ // (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) |
| 80785 | /* 228362 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4mr), |
| 80786 | /* 228365 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80787 | /* 228367 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80788 | /* 228369 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 80789 | /* 228373 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80790 | /* 228375 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80791 | /* 228380 */ GIR_RootConstrainSelectedInstOperands, |
| 80792 | /* 228381 */ // GIR_Coverage, 1473, |
| 80793 | /* 228381 */ GIR_EraseRootFromParent_Done, |
| 80794 | /* 228382 */ // Label 5302: @228382 |
| 80795 | /* 228382 */ GIM_Try, /*On fail goto*//*Label 5303*/ GIMT_Encode4(228450), // Rule ID 9144 // |
| 80796 | /* 228387 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80797 | /* 228390 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80798 | /* 228394 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80799 | /* 228398 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 80800 | /* 228402 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80801 | /* 228406 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80802 | /* 228409 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80803 | /* 228413 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80804 | /* 228417 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80805 | /* 228421 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80806 | /* 228423 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80807 | /* 228430 */ // (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) |
| 80808 | /* 228430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZ128m), |
| 80809 | /* 228433 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80810 | /* 228435 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 80811 | /* 228437 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80812 | /* 228439 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80813 | /* 228443 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80814 | /* 228448 */ GIR_RootConstrainSelectedInstOperands, |
| 80815 | /* 228449 */ // GIR_Coverage, 9144, |
| 80816 | /* 228449 */ GIR_EraseRootFromParent_Done, |
| 80817 | /* 228450 */ // Label 5303: @228450 |
| 80818 | /* 228450 */ GIM_Try, /*On fail goto*//*Label 5304*/ GIMT_Encode4(228518), // Rule ID 1187 // |
| 80819 | /* 228455 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 80820 | /* 228458 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80821 | /* 228462 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80822 | /* 228466 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80823 | /* 228470 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80824 | /* 228474 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80825 | /* 228478 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80826 | /* 228481 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80827 | /* 228485 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80828 | /* 228489 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80829 | /* 228491 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80830 | /* 228498 */ // (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) |
| 80831 | /* 228498 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDm), |
| 80832 | /* 228501 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80833 | /* 228503 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80834 | /* 228505 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80835 | /* 228507 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80836 | /* 228511 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80837 | /* 228516 */ GIR_RootConstrainSelectedInstOperands, |
| 80838 | /* 228517 */ // GIR_Coverage, 1187, |
| 80839 | /* 228517 */ GIR_EraseRootFromParent_Done, |
| 80840 | /* 228518 */ // Label 5304: @228518 |
| 80841 | /* 228518 */ GIM_Try, /*On fail goto*//*Label 5305*/ GIMT_Encode4(228586), // Rule ID 1471 // |
| 80842 | /* 228523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 80843 | /* 228526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80844 | /* 228530 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80845 | /* 228534 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80846 | /* 228538 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80847 | /* 228542 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80848 | /* 228546 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80849 | /* 228549 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80850 | /* 228553 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80851 | /* 228557 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80852 | /* 228559 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80853 | /* 228566 */ // (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) |
| 80854 | /* 228566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4rm), |
| 80855 | /* 228569 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80856 | /* 228571 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 80857 | /* 228573 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 80858 | /* 228575 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80859 | /* 228579 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80860 | /* 228584 */ GIR_RootConstrainSelectedInstOperands, |
| 80861 | /* 228585 */ // GIR_Coverage, 1471, |
| 80862 | /* 228585 */ GIR_EraseRootFromParent_Done, |
| 80863 | /* 228586 */ // Label 5305: @228586 |
| 80864 | /* 228586 */ GIM_Try, /*On fail goto*//*Label 5306*/ GIMT_Encode4(228654), // Rule ID 8517 // |
| 80865 | /* 228591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80866 | /* 228594 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80867 | /* 228598 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80868 | /* 228602 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80869 | /* 228606 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 80870 | /* 228610 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80871 | /* 228614 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80872 | /* 228617 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80873 | /* 228621 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80874 | /* 228625 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80875 | /* 228627 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80876 | /* 228634 */ // (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) |
| 80877 | /* 228634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ128m), |
| 80878 | /* 228637 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80879 | /* 228639 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80880 | /* 228641 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80881 | /* 228643 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80882 | /* 228647 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80883 | /* 228652 */ GIR_RootConstrainSelectedInstOperands, |
| 80884 | /* 228653 */ // GIR_Coverage, 8517, |
| 80885 | /* 228653 */ GIR_EraseRootFromParent_Done, |
| 80886 | /* 228654 */ // Label 5306: @228654 |
| 80887 | /* 228654 */ GIM_Try, /*On fail goto*//*Label 5307*/ GIMT_Encode4(228691), // Rule ID 1185 // |
| 80888 | /* 228659 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 80889 | /* 228662 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80890 | /* 228666 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80891 | /* 228670 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80892 | /* 228674 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80893 | /* 228678 */ // (strict_fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src3) => (VFMADD213PDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 80894 | /* 228678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDr), |
| 80895 | /* 228681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80896 | /* 228683 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80897 | /* 228685 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80898 | /* 228687 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80899 | /* 228689 */ GIR_RootConstrainSelectedInstOperands, |
| 80900 | /* 228690 */ // GIR_Coverage, 1185, |
| 80901 | /* 228690 */ GIR_EraseRootFromParent_Done, |
| 80902 | /* 228691 */ // Label 5307: @228691 |
| 80903 | /* 228691 */ GIM_Try, /*On fail goto*//*Label 5308*/ GIMT_Encode4(228726), // Rule ID 1469 // |
| 80904 | /* 228696 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 80905 | /* 228699 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80906 | /* 228703 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80907 | /* 228707 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80908 | /* 228711 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80909 | /* 228715 */ // (strict_fma:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) => (VFMADDPD4rr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src1, VR128:{ *:[v2f64] }:$src2, VR128:{ *:[v2f64] }:$src3) |
| 80910 | /* 228715 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4rr), |
| 80911 | /* 228720 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 80912 | /* 228724 */ GIR_RootConstrainSelectedInstOperands, |
| 80913 | /* 228725 */ // GIR_Coverage, 1469, |
| 80914 | /* 228725 */ GIR_Done, |
| 80915 | /* 228726 */ // Label 5308: @228726 |
| 80916 | /* 228726 */ GIM_Try, /*On fail goto*//*Label 5309*/ GIMT_Encode4(228763), // Rule ID 8513 // |
| 80917 | /* 228731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80918 | /* 228734 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80919 | /* 228738 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80920 | /* 228742 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80921 | /* 228746 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80922 | /* 228750 */ // (strict_fma:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src3) => (VFMADD213PDZ128r:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src1, VR128X:{ *:[v2f64] }:$src2, VR128X:{ *:[v2f64] }:$src3) |
| 80923 | /* 228750 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ128r), |
| 80924 | /* 228753 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80925 | /* 228755 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80926 | /* 228757 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 80927 | /* 228759 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 80928 | /* 228761 */ GIR_RootConstrainSelectedInstOperands, |
| 80929 | /* 228762 */ // GIR_Coverage, 8513, |
| 80930 | /* 228762 */ GIR_EraseRootFromParent_Done, |
| 80931 | /* 228763 */ // Label 5309: @228763 |
| 80932 | /* 228763 */ GIM_Reject, |
| 80933 | /* 228764 */ // Label 5297: @228764 |
| 80934 | /* 228764 */ GIM_Reject, |
| 80935 | /* 228765 */ // Label 5257: @228765 |
| 80936 | /* 228765 */ GIM_Try, /*On fail goto*//*Label 5310*/ GIMT_Encode4(229501), |
| 80937 | /* 228770 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 80938 | /* 228773 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 80939 | /* 228776 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 80940 | /* 228779 */ GIM_Try, /*On fail goto*//*Label 5311*/ GIMT_Encode4(228847), // Rule ID 1143 // |
| 80941 | /* 228784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 80942 | /* 228787 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80943 | /* 228791 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80944 | /* 228795 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80945 | /* 228799 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80946 | /* 228802 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80947 | /* 228806 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80948 | /* 228810 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80949 | /* 228814 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80950 | /* 228818 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80951 | /* 228820 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80952 | /* 228827 */ // (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) |
| 80953 | /* 228827 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSm), |
| 80954 | /* 228830 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80955 | /* 228832 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80956 | /* 228834 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80957 | /* 228836 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80958 | /* 228840 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80959 | /* 228845 */ GIR_RootConstrainSelectedInstOperands, |
| 80960 | /* 228846 */ // GIR_Coverage, 1143, |
| 80961 | /* 228846 */ GIR_EraseRootFromParent_Done, |
| 80962 | /* 228847 */ // Label 5311: @228847 |
| 80963 | /* 228847 */ GIM_Try, /*On fail goto*//*Label 5312*/ GIMT_Encode4(228915), // Rule ID 9652 // |
| 80964 | /* 228852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 80965 | /* 228855 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80966 | /* 228859 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80967 | /* 228863 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80968 | /* 228867 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80969 | /* 228870 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80970 | /* 228874 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80971 | /* 228878 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80972 | /* 228882 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 80973 | /* 228886 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80974 | /* 228888 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80975 | /* 228895 */ // (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) |
| 80976 | /* 228895 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZ128m), |
| 80977 | /* 228898 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 80978 | /* 228900 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 80979 | /* 228902 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 80980 | /* 228904 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 80981 | /* 228908 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 80982 | /* 228913 */ GIR_RootConstrainSelectedInstOperands, |
| 80983 | /* 228914 */ // GIR_Coverage, 9652, |
| 80984 | /* 228914 */ GIR_EraseRootFromParent_Done, |
| 80985 | /* 228915 */ // Label 5312: @228915 |
| 80986 | /* 228915 */ GIM_Try, /*On fail goto*//*Label 5313*/ GIMT_Encode4(228983), // Rule ID 23370 // |
| 80987 | /* 228920 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 80988 | /* 228923 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80989 | /* 228927 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 80990 | /* 228931 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 80991 | /* 228935 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 80992 | /* 228938 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 80993 | /* 228942 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 80994 | /* 228946 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80995 | /* 228950 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 80996 | /* 228954 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 80997 | /* 228956 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 80998 | /* 228963 */ // (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) |
| 80999 | /* 228963 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4mr), |
| 81000 | /* 228966 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81001 | /* 228968 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81002 | /* 228970 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81003 | /* 228974 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81004 | /* 228976 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81005 | /* 228981 */ GIR_RootConstrainSelectedInstOperands, |
| 81006 | /* 228982 */ // GIR_Coverage, 23370, |
| 81007 | /* 228982 */ GIR_EraseRootFromParent_Done, |
| 81008 | /* 228983 */ // Label 5313: @228983 |
| 81009 | /* 228983 */ GIM_Try, /*On fail goto*//*Label 5314*/ GIMT_Encode4(229051), // Rule ID 1141 // |
| 81010 | /* 228988 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81011 | /* 228991 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81012 | /* 228995 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81013 | /* 228999 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81014 | /* 229003 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81015 | /* 229007 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81016 | /* 229010 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81017 | /* 229014 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81018 | /* 229018 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81019 | /* 229022 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81020 | /* 229024 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81021 | /* 229031 */ // (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) |
| 81022 | /* 229031 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSm), |
| 81023 | /* 229034 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81024 | /* 229036 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81025 | /* 229038 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81026 | /* 229040 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81027 | /* 229044 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81028 | /* 229049 */ GIR_RootConstrainSelectedInstOperands, |
| 81029 | /* 229050 */ // GIR_Coverage, 1141, |
| 81030 | /* 229050 */ GIR_EraseRootFromParent_Done, |
| 81031 | /* 229051 */ // Label 5314: @229051 |
| 81032 | /* 229051 */ GIM_Try, /*On fail goto*//*Label 5315*/ GIMT_Encode4(229119), // Rule ID 1389 // |
| 81033 | /* 229056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81034 | /* 229059 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81035 | /* 229063 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81036 | /* 229067 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81037 | /* 229071 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81038 | /* 229075 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81039 | /* 229078 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81040 | /* 229082 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81041 | /* 229086 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81042 | /* 229090 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81043 | /* 229092 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81044 | /* 229099 */ // (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) |
| 81045 | /* 229099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4mr), |
| 81046 | /* 229102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81047 | /* 229104 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81048 | /* 229106 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81049 | /* 229110 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81050 | /* 229112 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81051 | /* 229117 */ GIR_RootConstrainSelectedInstOperands, |
| 81052 | /* 229118 */ // GIR_Coverage, 1389, |
| 81053 | /* 229118 */ GIR_EraseRootFromParent_Done, |
| 81054 | /* 229119 */ // Label 5315: @229119 |
| 81055 | /* 229119 */ GIM_Try, /*On fail goto*//*Label 5316*/ GIMT_Encode4(229187), // Rule ID 9112 // |
| 81056 | /* 229124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81057 | /* 229127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81058 | /* 229131 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81059 | /* 229135 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81060 | /* 229139 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81061 | /* 229143 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81062 | /* 229146 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81063 | /* 229150 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81064 | /* 229154 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81065 | /* 229158 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81066 | /* 229160 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81067 | /* 229167 */ // (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) |
| 81068 | /* 229167 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZ128m), |
| 81069 | /* 229170 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81070 | /* 229172 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81071 | /* 229174 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81072 | /* 229176 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81073 | /* 229180 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81074 | /* 229185 */ GIR_RootConstrainSelectedInstOperands, |
| 81075 | /* 229186 */ // GIR_Coverage, 9112, |
| 81076 | /* 229186 */ GIR_EraseRootFromParent_Done, |
| 81077 | /* 229187 */ // Label 5316: @229187 |
| 81078 | /* 229187 */ GIM_Try, /*On fail goto*//*Label 5317*/ GIMT_Encode4(229255), // Rule ID 1139 // |
| 81079 | /* 229192 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81080 | /* 229195 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81081 | /* 229199 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81082 | /* 229203 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81083 | /* 229207 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81084 | /* 229211 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81085 | /* 229215 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81086 | /* 229218 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81087 | /* 229222 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81088 | /* 229226 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81089 | /* 229228 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81090 | /* 229235 */ // (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) |
| 81091 | /* 229235 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSm), |
| 81092 | /* 229238 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81093 | /* 229240 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81094 | /* 229242 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81095 | /* 229244 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81096 | /* 229248 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81097 | /* 229253 */ GIR_RootConstrainSelectedInstOperands, |
| 81098 | /* 229254 */ // GIR_Coverage, 1139, |
| 81099 | /* 229254 */ GIR_EraseRootFromParent_Done, |
| 81100 | /* 229255 */ // Label 5317: @229255 |
| 81101 | /* 229255 */ GIM_Try, /*On fail goto*//*Label 5318*/ GIMT_Encode4(229323), // Rule ID 1387 // |
| 81102 | /* 229260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81103 | /* 229263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81104 | /* 229267 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81105 | /* 229271 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81106 | /* 229275 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81107 | /* 229279 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81108 | /* 229283 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81109 | /* 229286 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81110 | /* 229290 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81111 | /* 229294 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81112 | /* 229296 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81113 | /* 229303 */ // (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) |
| 81114 | /* 229303 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4rm), |
| 81115 | /* 229306 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81116 | /* 229308 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81117 | /* 229310 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 81118 | /* 229312 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81119 | /* 229316 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81120 | /* 229321 */ GIR_RootConstrainSelectedInstOperands, |
| 81121 | /* 229322 */ // GIR_Coverage, 1387, |
| 81122 | /* 229322 */ GIR_EraseRootFromParent_Done, |
| 81123 | /* 229323 */ // Label 5318: @229323 |
| 81124 | /* 229323 */ GIM_Try, /*On fail goto*//*Label 5319*/ GIMT_Encode4(229391), // Rule ID 8478 // |
| 81125 | /* 229328 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81126 | /* 229331 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81127 | /* 229335 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81128 | /* 229339 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81129 | /* 229343 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81130 | /* 229347 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81131 | /* 229351 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81132 | /* 229354 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81133 | /* 229358 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81134 | /* 229362 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81135 | /* 229364 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81136 | /* 229371 */ // (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) |
| 81137 | /* 229371 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ128m), |
| 81138 | /* 229374 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81139 | /* 229376 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81140 | /* 229378 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81141 | /* 229380 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81142 | /* 229384 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81143 | /* 229389 */ GIR_RootConstrainSelectedInstOperands, |
| 81144 | /* 229390 */ // GIR_Coverage, 8478, |
| 81145 | /* 229390 */ GIR_EraseRootFromParent_Done, |
| 81146 | /* 229391 */ // Label 5319: @229391 |
| 81147 | /* 229391 */ GIM_Try, /*On fail goto*//*Label 5320*/ GIMT_Encode4(229428), // Rule ID 1137 // |
| 81148 | /* 229396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81149 | /* 229399 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81150 | /* 229403 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81151 | /* 229407 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81152 | /* 229411 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81153 | /* 229415 */ // (strict_fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src3) => (VFMADD213PSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 81154 | /* 229415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSr), |
| 81155 | /* 229418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81156 | /* 229420 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81157 | /* 229422 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81158 | /* 229424 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81159 | /* 229426 */ GIR_RootConstrainSelectedInstOperands, |
| 81160 | /* 229427 */ // GIR_Coverage, 1137, |
| 81161 | /* 229427 */ GIR_EraseRootFromParent_Done, |
| 81162 | /* 229428 */ // Label 5320: @229428 |
| 81163 | /* 229428 */ GIM_Try, /*On fail goto*//*Label 5321*/ GIMT_Encode4(229463), // Rule ID 1385 // |
| 81164 | /* 229433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81165 | /* 229436 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81166 | /* 229440 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81167 | /* 229444 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81168 | /* 229448 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 81169 | /* 229452 */ // (strict_fma:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) => (VFMADDPS4rr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src1, VR128:{ *:[v4f32] }:$src2, VR128:{ *:[v4f32] }:$src3) |
| 81170 | /* 229452 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4rr), |
| 81171 | /* 229457 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 81172 | /* 229461 */ GIR_RootConstrainSelectedInstOperands, |
| 81173 | /* 229462 */ // GIR_Coverage, 1385, |
| 81174 | /* 229462 */ GIR_Done, |
| 81175 | /* 229463 */ // Label 5321: @229463 |
| 81176 | /* 229463 */ GIM_Try, /*On fail goto*//*Label 5322*/ GIMT_Encode4(229500), // Rule ID 8474 // |
| 81177 | /* 229468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81178 | /* 229471 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81179 | /* 229475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81180 | /* 229479 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81181 | /* 229483 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81182 | /* 229487 */ // (strict_fma:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src3) => (VFMADD213PSZ128r:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src1, VR128X:{ *:[v4f32] }:$src2, VR128X:{ *:[v4f32] }:$src3) |
| 81183 | /* 229487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ128r), |
| 81184 | /* 229490 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81185 | /* 229492 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81186 | /* 229494 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81187 | /* 229496 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81188 | /* 229498 */ GIR_RootConstrainSelectedInstOperands, |
| 81189 | /* 229499 */ // GIR_Coverage, 8474, |
| 81190 | /* 229499 */ GIR_EraseRootFromParent_Done, |
| 81191 | /* 229500 */ // Label 5322: @229500 |
| 81192 | /* 229500 */ GIM_Reject, |
| 81193 | /* 229501 */ // Label 5310: @229501 |
| 81194 | /* 229501 */ GIM_Reject, |
| 81195 | /* 229502 */ // Label 5258: @229502 |
| 81196 | /* 229502 */ GIM_Try, /*On fail goto*//*Label 5323*/ GIMT_Encode4(230238), |
| 81197 | /* 229507 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 81198 | /* 229510 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s64, |
| 81199 | /* 229513 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s64, |
| 81200 | /* 229516 */ GIM_Try, /*On fail goto*//*Label 5324*/ GIMT_Encode4(229584), // Rule ID 1199 // |
| 81201 | /* 229521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81202 | /* 229524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81203 | /* 229528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81204 | /* 229532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81205 | /* 229536 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81206 | /* 229539 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81207 | /* 229543 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81208 | /* 229547 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81209 | /* 229551 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81210 | /* 229555 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81211 | /* 229557 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81212 | /* 229564 */ // (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) |
| 81213 | /* 229564 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDYm), |
| 81214 | /* 229567 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81215 | /* 229569 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81216 | /* 229571 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81217 | /* 229573 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81218 | /* 229577 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81219 | /* 229582 */ GIR_RootConstrainSelectedInstOperands, |
| 81220 | /* 229583 */ // GIR_Coverage, 1199, |
| 81221 | /* 229583 */ GIR_EraseRootFromParent_Done, |
| 81222 | /* 229584 */ // Label 5324: @229584 |
| 81223 | /* 229584 */ GIM_Try, /*On fail goto*//*Label 5325*/ GIMT_Encode4(229652), // Rule ID 9674 // |
| 81224 | /* 229589 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81225 | /* 229592 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81226 | /* 229596 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81227 | /* 229600 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81228 | /* 229604 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81229 | /* 229607 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81230 | /* 229611 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81231 | /* 229615 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81232 | /* 229619 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81233 | /* 229623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81234 | /* 229625 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81235 | /* 229632 */ // (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) |
| 81236 | /* 229632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZ256m), |
| 81237 | /* 229635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81238 | /* 229637 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81239 | /* 229639 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81240 | /* 229641 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81241 | /* 229645 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81242 | /* 229650 */ GIR_RootConstrainSelectedInstOperands, |
| 81243 | /* 229651 */ // GIR_Coverage, 9674, |
| 81244 | /* 229651 */ GIR_EraseRootFromParent_Done, |
| 81245 | /* 229652 */ // Label 5325: @229652 |
| 81246 | /* 229652 */ GIM_Try, /*On fail goto*//*Label 5326*/ GIMT_Encode4(229720), // Rule ID 23400 // |
| 81247 | /* 229657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81248 | /* 229660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81249 | /* 229664 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81250 | /* 229668 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81251 | /* 229672 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81252 | /* 229675 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81253 | /* 229679 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81254 | /* 229683 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81255 | /* 229687 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81256 | /* 229691 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81257 | /* 229693 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81258 | /* 229700 */ // (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) |
| 81259 | /* 229700 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Ymr), |
| 81260 | /* 229703 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81261 | /* 229705 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81262 | /* 229707 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81263 | /* 229711 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81264 | /* 229713 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81265 | /* 229718 */ GIR_RootConstrainSelectedInstOperands, |
| 81266 | /* 229719 */ // GIR_Coverage, 23400, |
| 81267 | /* 229719 */ GIR_EraseRootFromParent_Done, |
| 81268 | /* 229720 */ // Label 5326: @229720 |
| 81269 | /* 229720 */ GIM_Try, /*On fail goto*//*Label 5327*/ GIMT_Encode4(229788), // Rule ID 1197 // |
| 81270 | /* 229725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81271 | /* 229728 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81272 | /* 229732 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81273 | /* 229736 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81274 | /* 229740 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81275 | /* 229744 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81276 | /* 229747 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81277 | /* 229751 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81278 | /* 229755 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81279 | /* 229759 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81280 | /* 229761 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81281 | /* 229768 */ // (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) |
| 81282 | /* 229768 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDYm), |
| 81283 | /* 229771 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81284 | /* 229773 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81285 | /* 229775 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81286 | /* 229777 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81287 | /* 229781 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81288 | /* 229786 */ GIR_RootConstrainSelectedInstOperands, |
| 81289 | /* 229787 */ // GIR_Coverage, 1197, |
| 81290 | /* 229787 */ GIR_EraseRootFromParent_Done, |
| 81291 | /* 229788 */ // Label 5327: @229788 |
| 81292 | /* 229788 */ GIM_Try, /*On fail goto*//*Label 5328*/ GIMT_Encode4(229856), // Rule ID 1479 // |
| 81293 | /* 229793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81294 | /* 229796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81295 | /* 229800 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81296 | /* 229804 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81297 | /* 229808 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81298 | /* 229812 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81299 | /* 229815 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81300 | /* 229819 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81301 | /* 229823 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81302 | /* 229827 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81303 | /* 229829 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81304 | /* 229836 */ // (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) |
| 81305 | /* 229836 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Ymr), |
| 81306 | /* 229839 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81307 | /* 229841 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81308 | /* 229843 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81309 | /* 229847 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81310 | /* 229849 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81311 | /* 229854 */ GIR_RootConstrainSelectedInstOperands, |
| 81312 | /* 229855 */ // GIR_Coverage, 1479, |
| 81313 | /* 229855 */ GIR_EraseRootFromParent_Done, |
| 81314 | /* 229856 */ // Label 5328: @229856 |
| 81315 | /* 229856 */ GIM_Try, /*On fail goto*//*Label 5329*/ GIMT_Encode4(229924), // Rule ID 9134 // |
| 81316 | /* 229861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81317 | /* 229864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81318 | /* 229868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81319 | /* 229872 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81320 | /* 229876 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81321 | /* 229880 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81322 | /* 229883 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81323 | /* 229887 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81324 | /* 229891 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81325 | /* 229895 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81326 | /* 229897 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81327 | /* 229904 */ // (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) |
| 81328 | /* 229904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZ256m), |
| 81329 | /* 229907 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81330 | /* 229909 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81331 | /* 229911 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81332 | /* 229913 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81333 | /* 229917 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81334 | /* 229922 */ GIR_RootConstrainSelectedInstOperands, |
| 81335 | /* 229923 */ // GIR_Coverage, 9134, |
| 81336 | /* 229923 */ GIR_EraseRootFromParent_Done, |
| 81337 | /* 229924 */ // Label 5329: @229924 |
| 81338 | /* 229924 */ GIM_Try, /*On fail goto*//*Label 5330*/ GIMT_Encode4(229992), // Rule ID 1195 // |
| 81339 | /* 229929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81340 | /* 229932 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81341 | /* 229936 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81342 | /* 229940 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81343 | /* 229944 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81344 | /* 229948 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81345 | /* 229952 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81346 | /* 229955 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81347 | /* 229959 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81348 | /* 229963 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81349 | /* 229965 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81350 | /* 229972 */ // (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) |
| 81351 | /* 229972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDYm), |
| 81352 | /* 229975 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81353 | /* 229977 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81354 | /* 229979 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81355 | /* 229981 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81356 | /* 229985 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81357 | /* 229990 */ GIR_RootConstrainSelectedInstOperands, |
| 81358 | /* 229991 */ // GIR_Coverage, 1195, |
| 81359 | /* 229991 */ GIR_EraseRootFromParent_Done, |
| 81360 | /* 229992 */ // Label 5330: @229992 |
| 81361 | /* 229992 */ GIM_Try, /*On fail goto*//*Label 5331*/ GIMT_Encode4(230060), // Rule ID 1477 // |
| 81362 | /* 229997 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81363 | /* 230000 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81364 | /* 230004 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81365 | /* 230008 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81366 | /* 230012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81367 | /* 230016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81368 | /* 230020 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81369 | /* 230023 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81370 | /* 230027 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81371 | /* 230031 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81372 | /* 230033 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81373 | /* 230040 */ // (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) |
| 81374 | /* 230040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Yrm), |
| 81375 | /* 230043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81376 | /* 230045 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81377 | /* 230047 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 81378 | /* 230049 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81379 | /* 230053 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81380 | /* 230058 */ GIR_RootConstrainSelectedInstOperands, |
| 81381 | /* 230059 */ // GIR_Coverage, 1477, |
| 81382 | /* 230059 */ GIR_EraseRootFromParent_Done, |
| 81383 | /* 230060 */ // Label 5331: @230060 |
| 81384 | /* 230060 */ GIM_Try, /*On fail goto*//*Label 5332*/ GIMT_Encode4(230128), // Rule ID 8505 // |
| 81385 | /* 230065 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81386 | /* 230068 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81387 | /* 230072 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81388 | /* 230076 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81389 | /* 230080 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81390 | /* 230084 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81391 | /* 230088 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81392 | /* 230091 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81393 | /* 230095 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81394 | /* 230099 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81395 | /* 230101 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81396 | /* 230108 */ // (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) |
| 81397 | /* 230108 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ256m), |
| 81398 | /* 230111 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81399 | /* 230113 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81400 | /* 230115 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81401 | /* 230117 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81402 | /* 230121 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81403 | /* 230126 */ GIR_RootConstrainSelectedInstOperands, |
| 81404 | /* 230127 */ // GIR_Coverage, 8505, |
| 81405 | /* 230127 */ GIR_EraseRootFromParent_Done, |
| 81406 | /* 230128 */ // Label 5332: @230128 |
| 81407 | /* 230128 */ GIM_Try, /*On fail goto*//*Label 5333*/ GIMT_Encode4(230165), // Rule ID 1193 // |
| 81408 | /* 230133 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81409 | /* 230136 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81410 | /* 230140 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81411 | /* 230144 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81412 | /* 230148 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81413 | /* 230152 */ // (strict_fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src3) => (VFMADD213PDYr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 81414 | /* 230152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDYr), |
| 81415 | /* 230155 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81416 | /* 230157 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81417 | /* 230159 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81418 | /* 230161 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81419 | /* 230163 */ GIR_RootConstrainSelectedInstOperands, |
| 81420 | /* 230164 */ // GIR_Coverage, 1193, |
| 81421 | /* 230164 */ GIR_EraseRootFromParent_Done, |
| 81422 | /* 230165 */ // Label 5333: @230165 |
| 81423 | /* 230165 */ GIM_Try, /*On fail goto*//*Label 5334*/ GIMT_Encode4(230200), // Rule ID 1475 // |
| 81424 | /* 230170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81425 | /* 230173 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81426 | /* 230177 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81427 | /* 230181 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81428 | /* 230185 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81429 | /* 230189 */ // (strict_fma:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) => (VFMADDPD4Yrr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src1, VR256:{ *:[v4f64] }:$src2, VR256:{ *:[v4f64] }:$src3) |
| 81430 | /* 230189 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPD4Yrr), |
| 81431 | /* 230194 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 81432 | /* 230198 */ GIR_RootConstrainSelectedInstOperands, |
| 81433 | /* 230199 */ // GIR_Coverage, 1475, |
| 81434 | /* 230199 */ GIR_Done, |
| 81435 | /* 230200 */ // Label 5334: @230200 |
| 81436 | /* 230200 */ GIM_Try, /*On fail goto*//*Label 5335*/ GIMT_Encode4(230237), // Rule ID 8501 // |
| 81437 | /* 230205 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81438 | /* 230208 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81439 | /* 230212 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81440 | /* 230216 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81441 | /* 230220 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81442 | /* 230224 */ // (strict_fma:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src3) => (VFMADD213PDZ256r:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src1, VR256X:{ *:[v4f64] }:$src2, VR256X:{ *:[v4f64] }:$src3) |
| 81443 | /* 230224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZ256r), |
| 81444 | /* 230227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81445 | /* 230229 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81446 | /* 230231 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81447 | /* 230233 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81448 | /* 230235 */ GIR_RootConstrainSelectedInstOperands, |
| 81449 | /* 230236 */ // GIR_Coverage, 8501, |
| 81450 | /* 230236 */ GIR_EraseRootFromParent_Done, |
| 81451 | /* 230237 */ // Label 5335: @230237 |
| 81452 | /* 230237 */ GIM_Reject, |
| 81453 | /* 230238 */ // Label 5323: @230238 |
| 81454 | /* 230238 */ GIM_Reject, |
| 81455 | /* 230239 */ // Label 5259: @230239 |
| 81456 | /* 230239 */ GIM_Try, /*On fail goto*//*Label 5336*/ GIMT_Encode4(230483), |
| 81457 | /* 230244 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 81458 | /* 230247 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 81459 | /* 230250 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 81460 | /* 230253 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81461 | /* 230257 */ GIM_Try, /*On fail goto*//*Label 5337*/ GIMT_Encode4(230321), // Rule ID 9620 // |
| 81462 | /* 230262 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81463 | /* 230265 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81464 | /* 230269 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81465 | /* 230273 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81466 | /* 230276 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81467 | /* 230280 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81468 | /* 230284 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81469 | /* 230288 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81470 | /* 230292 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81471 | /* 230294 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81472 | /* 230301 */ // (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) |
| 81473 | /* 230301 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZ128m), |
| 81474 | /* 230304 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81475 | /* 230306 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81476 | /* 230308 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81477 | /* 230310 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81478 | /* 230314 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81479 | /* 230319 */ GIR_RootConstrainSelectedInstOperands, |
| 81480 | /* 230320 */ // GIR_Coverage, 9620, |
| 81481 | /* 230320 */ GIR_EraseRootFromParent_Done, |
| 81482 | /* 230321 */ // Label 5337: @230321 |
| 81483 | /* 230321 */ GIM_Try, /*On fail goto*//*Label 5338*/ GIMT_Encode4(230385), // Rule ID 9080 // |
| 81484 | /* 230326 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81485 | /* 230329 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81486 | /* 230333 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81487 | /* 230337 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81488 | /* 230341 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81489 | /* 230344 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81490 | /* 230348 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81491 | /* 230352 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81492 | /* 230356 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81493 | /* 230358 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81494 | /* 230365 */ // (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) |
| 81495 | /* 230365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZ128m), |
| 81496 | /* 230368 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81497 | /* 230370 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81498 | /* 230372 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81499 | /* 230374 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81500 | /* 230378 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81501 | /* 230383 */ GIR_RootConstrainSelectedInstOperands, |
| 81502 | /* 230384 */ // GIR_Coverage, 9080, |
| 81503 | /* 230384 */ GIR_EraseRootFromParent_Done, |
| 81504 | /* 230385 */ // Label 5338: @230385 |
| 81505 | /* 230385 */ GIM_Try, /*On fail goto*//*Label 5339*/ GIMT_Encode4(230449), // Rule ID 8439 // |
| 81506 | /* 230390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81507 | /* 230393 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81508 | /* 230397 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81509 | /* 230401 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81510 | /* 230405 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81511 | /* 230409 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81512 | /* 230412 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81513 | /* 230416 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81514 | /* 230420 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81515 | /* 230422 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81516 | /* 230429 */ // (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) |
| 81517 | /* 230429 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ128m), |
| 81518 | /* 230432 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81519 | /* 230434 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81520 | /* 230436 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81521 | /* 230438 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81522 | /* 230442 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81523 | /* 230447 */ GIR_RootConstrainSelectedInstOperands, |
| 81524 | /* 230448 */ // GIR_Coverage, 8439, |
| 81525 | /* 230448 */ GIR_EraseRootFromParent_Done, |
| 81526 | /* 230449 */ // Label 5339: @230449 |
| 81527 | /* 230449 */ GIM_Try, /*On fail goto*//*Label 5340*/ GIMT_Encode4(230482), // Rule ID 8435 // |
| 81528 | /* 230454 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81529 | /* 230457 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81530 | /* 230461 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81531 | /* 230465 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 81532 | /* 230469 */ // (strict_fma:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src3) => (VFMADD213PHZ128r:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src1, VR128X:{ *:[v8f16] }:$src2, VR128X:{ *:[v8f16] }:$src3) |
| 81533 | /* 230469 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ128r), |
| 81534 | /* 230472 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81535 | /* 230474 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81536 | /* 230476 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81537 | /* 230478 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81538 | /* 230480 */ GIR_RootConstrainSelectedInstOperands, |
| 81539 | /* 230481 */ // GIR_Coverage, 8435, |
| 81540 | /* 230481 */ GIR_EraseRootFromParent_Done, |
| 81541 | /* 230482 */ // Label 5340: @230482 |
| 81542 | /* 230482 */ GIM_Reject, |
| 81543 | /* 230483 */ // Label 5336: @230483 |
| 81544 | /* 230483 */ GIM_Reject, |
| 81545 | /* 230484 */ // Label 5260: @230484 |
| 81546 | /* 230484 */ GIM_Try, /*On fail goto*//*Label 5341*/ GIMT_Encode4(231220), |
| 81547 | /* 230489 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 81548 | /* 230492 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s32, |
| 81549 | /* 230495 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s32, |
| 81550 | /* 230498 */ GIM_Try, /*On fail goto*//*Label 5342*/ GIMT_Encode4(230566), // Rule ID 1151 // |
| 81551 | /* 230503 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81552 | /* 230506 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81553 | /* 230510 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81554 | /* 230514 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81555 | /* 230518 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81556 | /* 230521 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81557 | /* 230525 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81558 | /* 230529 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81559 | /* 230533 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81560 | /* 230537 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81561 | /* 230539 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81562 | /* 230546 */ // (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) |
| 81563 | /* 230546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSYm), |
| 81564 | /* 230549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81565 | /* 230551 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81566 | /* 230553 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81567 | /* 230555 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81568 | /* 230559 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81569 | /* 230564 */ GIR_RootConstrainSelectedInstOperands, |
| 81570 | /* 230565 */ // GIR_Coverage, 1151, |
| 81571 | /* 230565 */ GIR_EraseRootFromParent_Done, |
| 81572 | /* 230566 */ // Label 5342: @230566 |
| 81573 | /* 230566 */ GIM_Try, /*On fail goto*//*Label 5343*/ GIMT_Encode4(230634), // Rule ID 9642 // |
| 81574 | /* 230571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81575 | /* 230574 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81576 | /* 230578 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81577 | /* 230582 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81578 | /* 230586 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81579 | /* 230589 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81580 | /* 230593 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81581 | /* 230597 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81582 | /* 230601 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81583 | /* 230605 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81584 | /* 230607 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81585 | /* 230614 */ // (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) |
| 81586 | /* 230614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZ256m), |
| 81587 | /* 230617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81588 | /* 230619 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81589 | /* 230621 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81590 | /* 230623 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81591 | /* 230627 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81592 | /* 230632 */ GIR_RootConstrainSelectedInstOperands, |
| 81593 | /* 230633 */ // GIR_Coverage, 9642, |
| 81594 | /* 230633 */ GIR_EraseRootFromParent_Done, |
| 81595 | /* 230634 */ // Label 5343: @230634 |
| 81596 | /* 230634 */ GIM_Try, /*On fail goto*//*Label 5344*/ GIMT_Encode4(230702), // Rule ID 23372 // |
| 81597 | /* 230639 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81598 | /* 230642 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81599 | /* 230646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81600 | /* 230650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81601 | /* 230654 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81602 | /* 230657 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81603 | /* 230661 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81604 | /* 230665 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81605 | /* 230669 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81606 | /* 230673 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81607 | /* 230675 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81608 | /* 230682 */ // (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) |
| 81609 | /* 230682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Ymr), |
| 81610 | /* 230685 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81611 | /* 230687 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81612 | /* 230689 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81613 | /* 230693 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81614 | /* 230695 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81615 | /* 230700 */ GIR_RootConstrainSelectedInstOperands, |
| 81616 | /* 230701 */ // GIR_Coverage, 23372, |
| 81617 | /* 230701 */ GIR_EraseRootFromParent_Done, |
| 81618 | /* 230702 */ // Label 5344: @230702 |
| 81619 | /* 230702 */ GIM_Try, /*On fail goto*//*Label 5345*/ GIMT_Encode4(230770), // Rule ID 1149 // |
| 81620 | /* 230707 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81621 | /* 230710 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81622 | /* 230714 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81623 | /* 230718 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81624 | /* 230722 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81625 | /* 230726 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81626 | /* 230729 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81627 | /* 230733 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81628 | /* 230737 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81629 | /* 230741 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81630 | /* 230743 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81631 | /* 230750 */ // (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) |
| 81632 | /* 230750 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSYm), |
| 81633 | /* 230753 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81634 | /* 230755 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81635 | /* 230757 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81636 | /* 230759 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81637 | /* 230763 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81638 | /* 230768 */ GIR_RootConstrainSelectedInstOperands, |
| 81639 | /* 230769 */ // GIR_Coverage, 1149, |
| 81640 | /* 230769 */ GIR_EraseRootFromParent_Done, |
| 81641 | /* 230770 */ // Label 5345: @230770 |
| 81642 | /* 230770 */ GIM_Try, /*On fail goto*//*Label 5346*/ GIMT_Encode4(230838), // Rule ID 1395 // |
| 81643 | /* 230775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81644 | /* 230778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81645 | /* 230782 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81646 | /* 230786 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81647 | /* 230790 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81648 | /* 230794 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81649 | /* 230797 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81650 | /* 230801 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81651 | /* 230805 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81652 | /* 230809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81653 | /* 230811 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81654 | /* 230818 */ // (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) |
| 81655 | /* 230818 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Ymr), |
| 81656 | /* 230821 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81657 | /* 230823 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81658 | /* 230825 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src2 |
| 81659 | /* 230829 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81660 | /* 230831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81661 | /* 230836 */ GIR_RootConstrainSelectedInstOperands, |
| 81662 | /* 230837 */ // GIR_Coverage, 1395, |
| 81663 | /* 230837 */ GIR_EraseRootFromParent_Done, |
| 81664 | /* 230838 */ // Label 5346: @230838 |
| 81665 | /* 230838 */ GIM_Try, /*On fail goto*//*Label 5347*/ GIMT_Encode4(230906), // Rule ID 9102 // |
| 81666 | /* 230843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81667 | /* 230846 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81668 | /* 230850 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81669 | /* 230854 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81670 | /* 230858 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81671 | /* 230862 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81672 | /* 230865 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81673 | /* 230869 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81674 | /* 230873 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81675 | /* 230877 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81676 | /* 230879 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81677 | /* 230886 */ // (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) |
| 81678 | /* 230886 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZ256m), |
| 81679 | /* 230889 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81680 | /* 230891 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81681 | /* 230893 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81682 | /* 230895 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81683 | /* 230899 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81684 | /* 230904 */ GIR_RootConstrainSelectedInstOperands, |
| 81685 | /* 230905 */ // GIR_Coverage, 9102, |
| 81686 | /* 230905 */ GIR_EraseRootFromParent_Done, |
| 81687 | /* 230906 */ // Label 5347: @230906 |
| 81688 | /* 230906 */ GIM_Try, /*On fail goto*//*Label 5348*/ GIMT_Encode4(230974), // Rule ID 1147 // |
| 81689 | /* 230911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81690 | /* 230914 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81691 | /* 230918 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81692 | /* 230922 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81693 | /* 230926 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81694 | /* 230930 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81695 | /* 230934 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81696 | /* 230937 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81697 | /* 230941 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81698 | /* 230945 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81699 | /* 230947 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81700 | /* 230954 */ // (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) |
| 81701 | /* 230954 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSYm), |
| 81702 | /* 230957 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81703 | /* 230959 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81704 | /* 230961 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81705 | /* 230963 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81706 | /* 230967 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81707 | /* 230972 */ GIR_RootConstrainSelectedInstOperands, |
| 81708 | /* 230973 */ // GIR_Coverage, 1147, |
| 81709 | /* 230973 */ GIR_EraseRootFromParent_Done, |
| 81710 | /* 230974 */ // Label 5348: @230974 |
| 81711 | /* 230974 */ GIM_Try, /*On fail goto*//*Label 5349*/ GIMT_Encode4(231042), // Rule ID 1393 // |
| 81712 | /* 230979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81713 | /* 230982 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81714 | /* 230986 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81715 | /* 230990 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81716 | /* 230994 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81717 | /* 230998 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81718 | /* 231002 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81719 | /* 231005 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81720 | /* 231009 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81721 | /* 231013 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81722 | /* 231015 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81723 | /* 231022 */ // (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) |
| 81724 | /* 231022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Yrm), |
| 81725 | /* 231025 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81726 | /* 231027 */ GIR_RootToRootCopy, /*OpIdx*/1, // src1 |
| 81727 | /* 231029 */ GIR_RootToRootCopy, /*OpIdx*/2, // src2 |
| 81728 | /* 231031 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81729 | /* 231035 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81730 | /* 231040 */ GIR_RootConstrainSelectedInstOperands, |
| 81731 | /* 231041 */ // GIR_Coverage, 1393, |
| 81732 | /* 231041 */ GIR_EraseRootFromParent_Done, |
| 81733 | /* 231042 */ // Label 5349: @231042 |
| 81734 | /* 231042 */ GIM_Try, /*On fail goto*//*Label 5350*/ GIMT_Encode4(231110), // Rule ID 8466 // |
| 81735 | /* 231047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81736 | /* 231050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81737 | /* 231054 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81738 | /* 231058 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81739 | /* 231062 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81740 | /* 231066 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81741 | /* 231070 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81742 | /* 231073 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81743 | /* 231077 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81744 | /* 231081 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81745 | /* 231083 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81746 | /* 231090 */ // (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) |
| 81747 | /* 231090 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ256m), |
| 81748 | /* 231093 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81749 | /* 231095 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81750 | /* 231097 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81751 | /* 231099 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81752 | /* 231103 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81753 | /* 231108 */ GIR_RootConstrainSelectedInstOperands, |
| 81754 | /* 231109 */ // GIR_Coverage, 8466, |
| 81755 | /* 231109 */ GIR_EraseRootFromParent_Done, |
| 81756 | /* 231110 */ // Label 5350: @231110 |
| 81757 | /* 231110 */ GIM_Try, /*On fail goto*//*Label 5351*/ GIMT_Encode4(231147), // Rule ID 1145 // |
| 81758 | /* 231115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA_NoFMA4_NoVLX), |
| 81759 | /* 231118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81760 | /* 231122 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81761 | /* 231126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81762 | /* 231130 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81763 | /* 231134 */ // (strict_fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src3) => (VFMADD213PSYr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 81764 | /* 231134 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSYr), |
| 81765 | /* 231137 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81766 | /* 231139 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81767 | /* 231141 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81768 | /* 231143 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81769 | /* 231145 */ GIR_RootConstrainSelectedInstOperands, |
| 81770 | /* 231146 */ // GIR_Coverage, 1145, |
| 81771 | /* 231146 */ GIR_EraseRootFromParent_Done, |
| 81772 | /* 231147 */ // Label 5351: @231147 |
| 81773 | /* 231147 */ GIM_Try, /*On fail goto*//*Label 5352*/ GIMT_Encode4(231182), // Rule ID 1391 // |
| 81774 | /* 231152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFMA4_NoVLX), |
| 81775 | /* 231155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81776 | /* 231159 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81777 | /* 231163 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81778 | /* 231167 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 81779 | /* 231171 */ // (strict_fma:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) => (VFMADDPS4Yrr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src1, VR256:{ *:[v8f32] }:$src2, VR256:{ *:[v8f32] }:$src3) |
| 81780 | /* 231171 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VFMADDPS4Yrr), |
| 81781 | /* 231176 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 81782 | /* 231180 */ GIR_RootConstrainSelectedInstOperands, |
| 81783 | /* 231181 */ // GIR_Coverage, 1391, |
| 81784 | /* 231181 */ GIR_Done, |
| 81785 | /* 231182 */ // Label 5352: @231182 |
| 81786 | /* 231182 */ GIM_Try, /*On fail goto*//*Label 5353*/ GIMT_Encode4(231219), // Rule ID 8462 // |
| 81787 | /* 231187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_HasVLX), |
| 81788 | /* 231190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81789 | /* 231194 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81790 | /* 231198 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81791 | /* 231202 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81792 | /* 231206 */ // (strict_fma:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src3) => (VFMADD213PSZ256r:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src1, VR256X:{ *:[v8f32] }:$src2, VR256X:{ *:[v8f32] }:$src3) |
| 81793 | /* 231206 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZ256r), |
| 81794 | /* 231209 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81795 | /* 231211 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81796 | /* 231213 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81797 | /* 231215 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81798 | /* 231217 */ GIR_RootConstrainSelectedInstOperands, |
| 81799 | /* 231218 */ // GIR_Coverage, 8462, |
| 81800 | /* 231218 */ GIR_EraseRootFromParent_Done, |
| 81801 | /* 231219 */ // Label 5353: @231219 |
| 81802 | /* 231219 */ GIM_Reject, |
| 81803 | /* 231220 */ // Label 5341: @231220 |
| 81804 | /* 231220 */ GIM_Reject, |
| 81805 | /* 231221 */ // Label 5261: @231221 |
| 81806 | /* 231221 */ GIM_Try, /*On fail goto*//*Label 5354*/ GIMT_Encode4(231465), |
| 81807 | /* 231226 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 81808 | /* 231229 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s64, |
| 81809 | /* 231232 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s64, |
| 81810 | /* 231235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81811 | /* 231239 */ GIM_Try, /*On fail goto*//*Label 5355*/ GIMT_Encode4(231303), // Rule ID 9662 // |
| 81812 | /* 231244 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 81813 | /* 231247 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81814 | /* 231251 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81815 | /* 231255 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81816 | /* 231258 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81817 | /* 231262 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81818 | /* 231266 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81819 | /* 231270 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81820 | /* 231274 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81821 | /* 231276 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81822 | /* 231283 */ // (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) |
| 81823 | /* 231283 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PDZm), |
| 81824 | /* 231286 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81825 | /* 231288 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81826 | /* 231290 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81827 | /* 231292 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81828 | /* 231296 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81829 | /* 231301 */ GIR_RootConstrainSelectedInstOperands, |
| 81830 | /* 231302 */ // GIR_Coverage, 9662, |
| 81831 | /* 231302 */ GIR_EraseRootFromParent_Done, |
| 81832 | /* 231303 */ // Label 5355: @231303 |
| 81833 | /* 231303 */ GIM_Try, /*On fail goto*//*Label 5356*/ GIMT_Encode4(231367), // Rule ID 9122 // |
| 81834 | /* 231308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 81835 | /* 231311 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81836 | /* 231315 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81837 | /* 231319 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81838 | /* 231323 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81839 | /* 231326 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81840 | /* 231330 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81841 | /* 231334 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81842 | /* 231338 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81843 | /* 231340 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81844 | /* 231347 */ // (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) |
| 81845 | /* 231347 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PDZm), |
| 81846 | /* 231350 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81847 | /* 231352 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81848 | /* 231354 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81849 | /* 231356 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81850 | /* 231360 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81851 | /* 231365 */ GIR_RootConstrainSelectedInstOperands, |
| 81852 | /* 231366 */ // GIR_Coverage, 9122, |
| 81853 | /* 231366 */ GIR_EraseRootFromParent_Done, |
| 81854 | /* 231367 */ // Label 5356: @231367 |
| 81855 | /* 231367 */ GIM_Try, /*On fail goto*//*Label 5357*/ GIMT_Encode4(231431), // Rule ID 8490 // |
| 81856 | /* 231372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 81857 | /* 231375 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81858 | /* 231379 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81859 | /* 231383 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81860 | /* 231387 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81861 | /* 231391 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81862 | /* 231394 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81863 | /* 231398 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81864 | /* 231402 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81865 | /* 231404 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81866 | /* 231411 */ // (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) |
| 81867 | /* 231411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZm), |
| 81868 | /* 231414 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81869 | /* 231416 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81870 | /* 231418 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81871 | /* 231420 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81872 | /* 231424 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81873 | /* 231429 */ GIR_RootConstrainSelectedInstOperands, |
| 81874 | /* 231430 */ // GIR_Coverage, 8490, |
| 81875 | /* 231430 */ GIR_EraseRootFromParent_Done, |
| 81876 | /* 231431 */ // Label 5357: @231431 |
| 81877 | /* 231431 */ GIM_Try, /*On fail goto*//*Label 5358*/ GIMT_Encode4(231464), // Rule ID 8486 // |
| 81878 | /* 231436 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 81879 | /* 231439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81880 | /* 231443 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81881 | /* 231447 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81882 | /* 231451 */ // (strict_fma:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src3) => (VFMADD213PDZr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src1, VR512:{ *:[v8f64] }:$src2, VR512:{ *:[v8f64] }:$src3) |
| 81883 | /* 231451 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PDZr), |
| 81884 | /* 231454 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81885 | /* 231456 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81886 | /* 231458 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81887 | /* 231460 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81888 | /* 231462 */ GIR_RootConstrainSelectedInstOperands, |
| 81889 | /* 231463 */ // GIR_Coverage, 8486, |
| 81890 | /* 231463 */ GIR_EraseRootFromParent_Done, |
| 81891 | /* 231464 */ // Label 5358: @231464 |
| 81892 | /* 231464 */ GIM_Reject, |
| 81893 | /* 231465 */ // Label 5354: @231465 |
| 81894 | /* 231465 */ GIM_Reject, |
| 81895 | /* 231466 */ // Label 5262: @231466 |
| 81896 | /* 231466 */ GIM_Try, /*On fail goto*//*Label 5359*/ GIMT_Encode4(231710), |
| 81897 | /* 231471 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 81898 | /* 231474 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s16, |
| 81899 | /* 231477 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s16, |
| 81900 | /* 231480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81901 | /* 231484 */ GIM_Try, /*On fail goto*//*Label 5360*/ GIMT_Encode4(231548), // Rule ID 9610 // |
| 81902 | /* 231489 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81903 | /* 231492 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81904 | /* 231496 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81905 | /* 231500 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81906 | /* 231503 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81907 | /* 231507 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81908 | /* 231511 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81909 | /* 231515 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81910 | /* 231519 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81911 | /* 231521 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81912 | /* 231528 */ // (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) |
| 81913 | /* 231528 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZ256m), |
| 81914 | /* 231531 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81915 | /* 231533 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81916 | /* 231535 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 81917 | /* 231537 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81918 | /* 231541 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81919 | /* 231546 */ GIR_RootConstrainSelectedInstOperands, |
| 81920 | /* 231547 */ // GIR_Coverage, 9610, |
| 81921 | /* 231547 */ GIR_EraseRootFromParent_Done, |
| 81922 | /* 231548 */ // Label 5360: @231548 |
| 81923 | /* 231548 */ GIM_Try, /*On fail goto*//*Label 5361*/ GIMT_Encode4(231612), // Rule ID 9070 // |
| 81924 | /* 231553 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81925 | /* 231556 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81926 | /* 231560 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 81927 | /* 231564 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81928 | /* 231568 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81929 | /* 231571 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81930 | /* 231575 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81931 | /* 231579 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81932 | /* 231583 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81933 | /* 231585 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81934 | /* 231592 */ // (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) |
| 81935 | /* 231592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZ256m), |
| 81936 | /* 231595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81937 | /* 231597 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 81938 | /* 231599 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81939 | /* 231601 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81940 | /* 231605 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81941 | /* 231610 */ GIR_RootConstrainSelectedInstOperands, |
| 81942 | /* 231611 */ // GIR_Coverage, 9070, |
| 81943 | /* 231611 */ GIR_EraseRootFromParent_Done, |
| 81944 | /* 231612 */ // Label 5361: @231612 |
| 81945 | /* 231612 */ GIM_Try, /*On fail goto*//*Label 5362*/ GIMT_Encode4(231676), // Rule ID 8427 // |
| 81946 | /* 231617 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81947 | /* 231620 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81948 | /* 231624 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81949 | /* 231628 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 81950 | /* 231632 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81951 | /* 231636 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81952 | /* 231639 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81953 | /* 231643 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81954 | /* 231647 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 81955 | /* 231649 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 81956 | /* 231656 */ // (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) |
| 81957 | /* 231656 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ256m), |
| 81958 | /* 231659 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81959 | /* 231661 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81960 | /* 231663 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81961 | /* 231665 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 81962 | /* 231669 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 81963 | /* 231674 */ GIR_RootConstrainSelectedInstOperands, |
| 81964 | /* 231675 */ // GIR_Coverage, 8427, |
| 81965 | /* 231675 */ GIR_EraseRootFromParent_Done, |
| 81966 | /* 231676 */ // Label 5362: @231676 |
| 81967 | /* 231676 */ GIM_Try, /*On fail goto*//*Label 5363*/ GIMT_Encode4(231709), // Rule ID 8423 // |
| 81968 | /* 231681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 81969 | /* 231684 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81970 | /* 231688 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81971 | /* 231692 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 81972 | /* 231696 */ // (strict_fma:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src3) => (VFMADD213PHZ256r:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src1, VR256X:{ *:[v16f16] }:$src2, VR256X:{ *:[v16f16] }:$src3) |
| 81973 | /* 231696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZ256r), |
| 81974 | /* 231699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 81975 | /* 231701 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 81976 | /* 231703 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 81977 | /* 231705 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 81978 | /* 231707 */ GIR_RootConstrainSelectedInstOperands, |
| 81979 | /* 231708 */ // GIR_Coverage, 8423, |
| 81980 | /* 231708 */ GIR_EraseRootFromParent_Done, |
| 81981 | /* 231709 */ // Label 5363: @231709 |
| 81982 | /* 231709 */ GIM_Reject, |
| 81983 | /* 231710 */ // Label 5359: @231710 |
| 81984 | /* 231710 */ GIM_Reject, |
| 81985 | /* 231711 */ // Label 5263: @231711 |
| 81986 | /* 231711 */ GIM_Try, /*On fail goto*//*Label 5364*/ GIMT_Encode4(231955), |
| 81987 | /* 231716 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 81988 | /* 231719 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s32, |
| 81989 | /* 231722 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s32, |
| 81990 | /* 231725 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81991 | /* 231729 */ GIM_Try, /*On fail goto*//*Label 5365*/ GIMT_Encode4(231793), // Rule ID 9630 // |
| 81992 | /* 231734 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 81993 | /* 231737 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 81994 | /* 231741 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 81995 | /* 231745 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 81996 | /* 231748 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 81997 | /* 231752 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 81998 | /* 231756 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 81999 | /* 231760 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82000 | /* 231764 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82001 | /* 231766 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82002 | /* 231773 */ // (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) |
| 82003 | /* 231773 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PSZm), |
| 82004 | /* 231776 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82005 | /* 231778 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82006 | /* 231780 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 82007 | /* 231782 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82008 | /* 231786 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82009 | /* 231791 */ GIR_RootConstrainSelectedInstOperands, |
| 82010 | /* 231792 */ // GIR_Coverage, 9630, |
| 82011 | /* 231792 */ GIR_EraseRootFromParent_Done, |
| 82012 | /* 231793 */ // Label 5365: @231793 |
| 82013 | /* 231793 */ GIM_Try, /*On fail goto*//*Label 5366*/ GIMT_Encode4(231857), // Rule ID 9090 // |
| 82014 | /* 231798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82015 | /* 231801 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82016 | /* 231805 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82017 | /* 231809 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82018 | /* 231813 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82019 | /* 231816 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82020 | /* 231820 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82021 | /* 231824 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82022 | /* 231828 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82023 | /* 231830 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82024 | /* 231837 */ // (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) |
| 82025 | /* 231837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PSZm), |
| 82026 | /* 231840 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82027 | /* 231842 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 82028 | /* 231844 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82029 | /* 231846 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82030 | /* 231850 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82031 | /* 231855 */ GIR_RootConstrainSelectedInstOperands, |
| 82032 | /* 231856 */ // GIR_Coverage, 9090, |
| 82033 | /* 231856 */ GIR_EraseRootFromParent_Done, |
| 82034 | /* 231857 */ // Label 5366: @231857 |
| 82035 | /* 231857 */ GIM_Try, /*On fail goto*//*Label 5367*/ GIMT_Encode4(231921), // Rule ID 8451 // |
| 82036 | /* 231862 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82037 | /* 231865 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82038 | /* 231869 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82039 | /* 231873 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82040 | /* 231877 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82041 | /* 231881 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82042 | /* 231884 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82043 | /* 231888 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82044 | /* 231892 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82045 | /* 231894 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82046 | /* 231901 */ // (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) |
| 82047 | /* 231901 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZm), |
| 82048 | /* 231904 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82049 | /* 231906 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82050 | /* 231908 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82051 | /* 231910 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82052 | /* 231914 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82053 | /* 231919 */ GIR_RootConstrainSelectedInstOperands, |
| 82054 | /* 231920 */ // GIR_Coverage, 8451, |
| 82055 | /* 231920 */ GIR_EraseRootFromParent_Done, |
| 82056 | /* 231921 */ // Label 5367: @231921 |
| 82057 | /* 231921 */ GIM_Try, /*On fail goto*//*Label 5368*/ GIMT_Encode4(231954), // Rule ID 8447 // |
| 82058 | /* 231926 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82059 | /* 231929 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82060 | /* 231933 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82061 | /* 231937 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82062 | /* 231941 */ // (strict_fma:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src3) => (VFMADD213PSZr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src1, VR512:{ *:[v16f32] }:$src2, VR512:{ *:[v16f32] }:$src3) |
| 82063 | /* 231941 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PSZr), |
| 82064 | /* 231944 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82065 | /* 231946 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82066 | /* 231948 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82067 | /* 231950 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82068 | /* 231952 */ GIR_RootConstrainSelectedInstOperands, |
| 82069 | /* 231953 */ // GIR_Coverage, 8447, |
| 82070 | /* 231953 */ GIR_EraseRootFromParent_Done, |
| 82071 | /* 231954 */ // Label 5368: @231954 |
| 82072 | /* 231954 */ GIM_Reject, |
| 82073 | /* 231955 */ // Label 5364: @231955 |
| 82074 | /* 231955 */ GIM_Reject, |
| 82075 | /* 231956 */ // Label 5264: @231956 |
| 82076 | /* 231956 */ GIM_Try, /*On fail goto*//*Label 5369*/ GIMT_Encode4(232200), |
| 82077 | /* 231961 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 82078 | /* 231964 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v32s16, |
| 82079 | /* 231967 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v32s16, |
| 82080 | /* 231970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82081 | /* 231974 */ GIM_Try, /*On fail goto*//*Label 5370*/ GIMT_Encode4(232038), // Rule ID 9598 // |
| 82082 | /* 231979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82083 | /* 231982 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82084 | /* 231986 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82085 | /* 231990 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82086 | /* 231993 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82087 | /* 231997 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82088 | /* 232001 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82089 | /* 232005 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82090 | /* 232009 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82091 | /* 232011 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82092 | /* 232018 */ // (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) |
| 82093 | /* 232018 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD132PHZm), |
| 82094 | /* 232021 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82095 | /* 232023 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82096 | /* 232025 */ GIR_RootToRootCopy, /*OpIdx*/3, // src2 |
| 82097 | /* 232027 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82098 | /* 232031 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82099 | /* 232036 */ GIR_RootConstrainSelectedInstOperands, |
| 82100 | /* 232037 */ // GIR_Coverage, 9598, |
| 82101 | /* 232037 */ GIR_EraseRootFromParent_Done, |
| 82102 | /* 232038 */ // Label 5370: @232038 |
| 82103 | /* 232038 */ GIM_Try, /*On fail goto*//*Label 5371*/ GIMT_Encode4(232102), // Rule ID 9058 // |
| 82104 | /* 232043 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82105 | /* 232046 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82106 | /* 232050 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 82107 | /* 232054 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82108 | /* 232058 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82109 | /* 232061 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82110 | /* 232065 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82111 | /* 232069 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82112 | /* 232073 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82113 | /* 232075 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82114 | /* 232082 */ // (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) |
| 82115 | /* 232082 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD231PHZm), |
| 82116 | /* 232085 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82117 | /* 232087 */ GIR_RootToRootCopy, /*OpIdx*/3, // src1 |
| 82118 | /* 232089 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82119 | /* 232091 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82120 | /* 232095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82121 | /* 232100 */ GIR_RootConstrainSelectedInstOperands, |
| 82122 | /* 232101 */ // GIR_Coverage, 9058, |
| 82123 | /* 232101 */ GIR_EraseRootFromParent_Done, |
| 82124 | /* 232102 */ // Label 5371: @232102 |
| 82125 | /* 232102 */ GIM_Try, /*On fail goto*//*Label 5372*/ GIMT_Encode4(232166), // Rule ID 8412 // |
| 82126 | /* 232107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82127 | /* 232110 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82128 | /* 232114 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82129 | /* 232118 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 82130 | /* 232122 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82131 | /* 232126 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82132 | /* 232129 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82133 | /* 232133 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82134 | /* 232137 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82135 | /* 232139 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82136 | /* 232146 */ // (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) |
| 82137 | /* 232146 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZm), |
| 82138 | /* 232149 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82139 | /* 232151 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82140 | /* 232153 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82141 | /* 232155 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src3 |
| 82142 | /* 232159 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82143 | /* 232164 */ GIR_RootConstrainSelectedInstOperands, |
| 82144 | /* 232165 */ // GIR_Coverage, 8412, |
| 82145 | /* 232165 */ GIR_EraseRootFromParent_Done, |
| 82146 | /* 232166 */ // Label 5372: @232166 |
| 82147 | /* 232166 */ GIM_Try, /*On fail goto*//*Label 5373*/ GIMT_Encode4(232199), // Rule ID 8408 // |
| 82148 | /* 232171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82149 | /* 232174 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82150 | /* 232178 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82151 | /* 232182 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82152 | /* 232186 */ // (strict_fma:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src3) => (VFMADD213PHZr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src1, VR512:{ *:[v32f16] }:$src2, VR512:{ *:[v32f16] }:$src3) |
| 82153 | /* 232186 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VFMADD213PHZr), |
| 82154 | /* 232189 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82155 | /* 232191 */ GIR_RootToRootCopy, /*OpIdx*/2, // src1 |
| 82156 | /* 232193 */ GIR_RootToRootCopy, /*OpIdx*/1, // src2 |
| 82157 | /* 232195 */ GIR_RootToRootCopy, /*OpIdx*/3, // src3 |
| 82158 | /* 232197 */ GIR_RootConstrainSelectedInstOperands, |
| 82159 | /* 232198 */ // GIR_Coverage, 8408, |
| 82160 | /* 232198 */ GIR_EraseRootFromParent_Done, |
| 82161 | /* 232199 */ // Label 5373: @232199 |
| 82162 | /* 232199 */ GIM_Reject, |
| 82163 | /* 232200 */ // Label 5369: @232200 |
| 82164 | /* 232200 */ GIM_Reject, |
| 82165 | /* 232201 */ // Label 5265: @232201 |
| 82166 | /* 232201 */ GIM_Reject, |
| 82167 | /* 232202 */ // Label 74: @232202 |
| 82168 | /* 232202 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(2), GIMT_Encode2(23), /*)*//*default:*//*Label 5387*/ GIMT_Encode4(234370), |
| 82169 | /* 232213 */ /*GILLT_s16*//*Label 5374*/ GIMT_Encode4(232297), |
| 82170 | /* 232217 */ /*GILLT_s32*//*Label 5375*/ GIMT_Encode4(232418), |
| 82171 | /* 232221 */ /*GILLT_s64*//*Label 5376*/ GIMT_Encode4(232774), |
| 82172 | /* 232225 */ /*GILLT_s80*//*Label 5377*/ GIMT_Encode4(233130), GIMT_Encode4(0), GIMT_Encode4(0), |
| 82173 | /* 232237 */ /*GILLT_v2s64*//*Label 5378*/ GIMT_Encode4(233167), GIMT_Encode4(0), |
| 82174 | /* 232245 */ /*GILLT_v4s32*//*Label 5379*/ GIMT_Encode4(233370), |
| 82175 | /* 232249 */ /*GILLT_v4s64*//*Label 5380*/ GIMT_Encode4(233573), GIMT_Encode4(0), |
| 82176 | /* 232257 */ /*GILLT_v8s16*//*Label 5381*/ GIMT_Encode4(233749), |
| 82177 | /* 232261 */ /*GILLT_v8s32*//*Label 5382*/ GIMT_Encode4(233838), |
| 82178 | /* 232265 */ /*GILLT_v8s64*//*Label 5383*/ GIMT_Encode4(234014), GIMT_Encode4(0), GIMT_Encode4(0), |
| 82179 | /* 232277 */ /*GILLT_v16s16*//*Label 5384*/ GIMT_Encode4(234103), |
| 82180 | /* 232281 */ /*GILLT_v16s32*//*Label 5385*/ GIMT_Encode4(234192), GIMT_Encode4(0), GIMT_Encode4(0), |
| 82181 | /* 232293 */ /*GILLT_v32s16*//*Label 5386*/ GIMT_Encode4(234281), |
| 82182 | /* 232297 */ // Label 5374: @232297 |
| 82183 | /* 232297 */ GIM_Try, /*On fail goto*//*Label 5388*/ GIMT_Encode4(232417), |
| 82184 | /* 232302 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 82185 | /* 232305 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 82186 | /* 232309 */ GIM_Try, /*On fail goto*//*Label 5389*/ GIMT_Encode4(232378), // Rule ID 21431 // |
| 82187 | /* 232314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_OptForSize), |
| 82188 | /* 232317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82189 | /* 232321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82190 | /* 232325 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82191 | /* 232328 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82192 | /* 232332 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82193 | /* 232336 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82194 | /* 232338 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82195 | /* 232345 */ // (strict_fsqrt:{ *:[f16] } (ld:{ *:[f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSHZm:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), addr:{ *:[iPTR] }:$src) |
| 82196 | /* 232345 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 82197 | /* 232348 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82198 | /* 232352 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82199 | /* 232357 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82200 | /* 232359 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSHZm), |
| 82201 | /* 232362 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82202 | /* 232364 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82203 | /* 232367 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82204 | /* 232371 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82205 | /* 232376 */ GIR_RootConstrainSelectedInstOperands, |
| 82206 | /* 232377 */ // GIR_Coverage, 21431, |
| 82207 | /* 232377 */ GIR_EraseRootFromParent_Done, |
| 82208 | /* 232378 */ // Label 5389: @232378 |
| 82209 | /* 232378 */ GIM_Try, /*On fail goto*//*Label 5390*/ GIMT_Encode4(232416), // Rule ID 21429 // |
| 82210 | /* 232383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82211 | /* 232386 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR16XRegClassID), |
| 82212 | /* 232390 */ // (strict_fsqrt:{ *:[f16] } FR16X:{ *:[f16] }:$src) => (VSQRTSHZr:{ *:[f16] } (IMPLICIT_DEF:{ *:[f16] }), FR16X:{ *:[f16] }:$src) |
| 82213 | /* 232390 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s16, |
| 82214 | /* 232393 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82215 | /* 232397 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82216 | /* 232402 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82217 | /* 232404 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSHZr), |
| 82218 | /* 232407 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82219 | /* 232409 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82220 | /* 232412 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82221 | /* 232414 */ GIR_RootConstrainSelectedInstOperands, |
| 82222 | /* 232415 */ // GIR_Coverage, 21429, |
| 82223 | /* 232415 */ GIR_EraseRootFromParent_Done, |
| 82224 | /* 232416 */ // Label 5390: @232416 |
| 82225 | /* 232416 */ GIM_Reject, |
| 82226 | /* 232417 */ // Label 5388: @232417 |
| 82227 | /* 232417 */ GIM_Reject, |
| 82228 | /* 232418 */ // Label 5375: @232418 |
| 82229 | /* 232418 */ GIM_Try, /*On fail goto*//*Label 5391*/ GIMT_Encode4(232773), |
| 82230 | /* 232423 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 82231 | /* 232426 */ GIM_Try, /*On fail goto*//*Label 5392*/ GIMT_Encode4(232482), // Rule ID 2448 // |
| 82232 | /* 232431 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE1), |
| 82233 | /* 232434 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82234 | /* 232438 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82235 | /* 232442 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82236 | /* 232446 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82237 | /* 232449 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82238 | /* 232453 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82239 | /* 232457 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82240 | /* 232459 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82241 | /* 232466 */ // (strict_fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SQRTSSm:{ *:[f32] } addr:{ *:[iPTR] }:$src1) |
| 82242 | /* 232466 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SQRTSSm), |
| 82243 | /* 232469 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82244 | /* 232471 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 82245 | /* 232475 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82246 | /* 232480 */ GIR_RootConstrainSelectedInstOperands, |
| 82247 | /* 232481 */ // GIR_Coverage, 2448, |
| 82248 | /* 232481 */ GIR_EraseRootFromParent_Done, |
| 82249 | /* 232482 */ // Label 5392: @232482 |
| 82250 | /* 232482 */ GIM_Try, /*On fail goto*//*Label 5393*/ GIMT_Encode4(232555), // Rule ID 18266 // |
| 82251 | /* 232487 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 82252 | /* 232490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82253 | /* 232494 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82254 | /* 232498 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82255 | /* 232502 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82256 | /* 232505 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82257 | /* 232509 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82258 | /* 232513 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82259 | /* 232515 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82260 | /* 232522 */ // (strict_fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSSm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 82261 | /* 232522 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 82262 | /* 232525 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82263 | /* 232529 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82264 | /* 232534 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82265 | /* 232536 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSm), |
| 82266 | /* 232539 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82267 | /* 232541 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82268 | /* 232544 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82269 | /* 232548 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82270 | /* 232553 */ GIR_RootConstrainSelectedInstOperands, |
| 82271 | /* 232554 */ // GIR_Coverage, 18266, |
| 82272 | /* 232554 */ GIR_EraseRootFromParent_Done, |
| 82273 | /* 232555 */ // Label 5393: @232555 |
| 82274 | /* 232555 */ GIM_Try, /*On fail goto*//*Label 5394*/ GIMT_Encode4(232628), // Rule ID 21435 // |
| 82275 | /* 232560 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 82276 | /* 232563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 82277 | /* 232567 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82278 | /* 232571 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82279 | /* 232575 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82280 | /* 232578 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82281 | /* 232582 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82282 | /* 232586 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82283 | /* 232588 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82284 | /* 232595 */ // (strict_fsqrt:{ *:[f32] } (ld:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSSZm:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), addr:{ *:[iPTR] }:$src) |
| 82285 | /* 232595 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 82286 | /* 232598 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82287 | /* 232602 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82288 | /* 232607 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82289 | /* 232609 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSZm), |
| 82290 | /* 232612 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82291 | /* 232614 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82292 | /* 232617 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82293 | /* 232621 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82294 | /* 232626 */ GIR_RootConstrainSelectedInstOperands, |
| 82295 | /* 232627 */ // GIR_Coverage, 21435, |
| 82296 | /* 232627 */ GIR_EraseRootFromParent_Done, |
| 82297 | /* 232628 */ // Label 5394: @232628 |
| 82298 | /* 232628 */ GIM_Try, /*On fail goto*//*Label 5395*/ GIMT_Encode4(232661), // Rule ID 1048 // |
| 82299 | /* 232633 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 82300 | /* 232636 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 82301 | /* 232640 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 82302 | /* 232644 */ // (strict_fsqrt:{ *:[f32] } RFP32:{ *:[f32] }:$src) => (SQRT_Fp32:{ *:[f32] }:{ *:[i16] } RFP32:{ *:[f32] }:$src) |
| 82303 | /* 232644 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp32), |
| 82304 | /* 232649 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 82305 | /* 232655 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 82306 | /* 232659 */ GIR_RootConstrainSelectedInstOperands, |
| 82307 | /* 232660 */ // GIR_Coverage, 1048, |
| 82308 | /* 232660 */ GIR_Done, |
| 82309 | /* 232661 */ // Label 5395: @232661 |
| 82310 | /* 232661 */ GIM_Try, /*On fail goto*//*Label 5396*/ GIMT_Encode4(232688), // Rule ID 2446 // |
| 82311 | /* 232666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 82312 | /* 232669 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82313 | /* 232673 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82314 | /* 232677 */ // (strict_fsqrt:{ *:[f32] } FR32:{ *:[f32] }:$src1) => (SQRTSSr:{ *:[f32] } FR32:{ *:[f32] }:$src1) |
| 82315 | /* 232677 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTSSr), |
| 82316 | /* 232682 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82317 | /* 232686 */ GIR_RootConstrainSelectedInstOperands, |
| 82318 | /* 232687 */ // GIR_Coverage, 2446, |
| 82319 | /* 232687 */ GIR_Done, |
| 82320 | /* 232688 */ // Label 5396: @232688 |
| 82321 | /* 232688 */ GIM_Try, /*On fail goto*//*Label 5397*/ GIMT_Encode4(232730), // Rule ID 18264 // |
| 82322 | /* 232693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 82323 | /* 232696 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82324 | /* 232700 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32RegClassID), |
| 82325 | /* 232704 */ // (strict_fsqrt:{ *:[f32] } FR32:{ *:[f32] }:$src) => (VSQRTSSr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR32:{ *:[f32] }:$src) |
| 82326 | /* 232704 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 82327 | /* 232707 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82328 | /* 232711 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82329 | /* 232716 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82330 | /* 232718 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSr), |
| 82331 | /* 232721 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82332 | /* 232723 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82333 | /* 232726 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82334 | /* 232728 */ GIR_RootConstrainSelectedInstOperands, |
| 82335 | /* 232729 */ // GIR_Coverage, 18264, |
| 82336 | /* 232729 */ GIR_EraseRootFromParent_Done, |
| 82337 | /* 232730 */ // Label 5397: @232730 |
| 82338 | /* 232730 */ GIM_Try, /*On fail goto*//*Label 5398*/ GIMT_Encode4(232772), // Rule ID 21433 // |
| 82339 | /* 232735 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82340 | /* 232738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 82341 | /* 232742 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR32XRegClassID), |
| 82342 | /* 232746 */ // (strict_fsqrt:{ *:[f32] } FR32X:{ *:[f32] }:$src) => (VSQRTSSZr:{ *:[f32] } (IMPLICIT_DEF:{ *:[f32] }), FR32X:{ *:[f32] }:$src) |
| 82343 | /* 232746 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 82344 | /* 232749 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82345 | /* 232753 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82346 | /* 232758 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82347 | /* 232760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSSZr), |
| 82348 | /* 232763 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82349 | /* 232765 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82350 | /* 232768 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82351 | /* 232770 */ GIR_RootConstrainSelectedInstOperands, |
| 82352 | /* 232771 */ // GIR_Coverage, 21433, |
| 82353 | /* 232771 */ GIR_EraseRootFromParent_Done, |
| 82354 | /* 232772 */ // Label 5398: @232772 |
| 82355 | /* 232772 */ GIM_Reject, |
| 82356 | /* 232773 */ // Label 5391: @232773 |
| 82357 | /* 232773 */ GIM_Reject, |
| 82358 | /* 232774 */ // Label 5376: @232774 |
| 82359 | /* 232774 */ GIM_Try, /*On fail goto*//*Label 5399*/ GIMT_Encode4(233129), |
| 82360 | /* 232779 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 82361 | /* 232782 */ GIM_Try, /*On fail goto*//*Label 5400*/ GIMT_Encode4(232838), // Rule ID 2464 // |
| 82362 | /* 232787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseSSE2), |
| 82363 | /* 232790 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82364 | /* 232794 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82365 | /* 232798 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82366 | /* 232802 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82367 | /* 232805 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82368 | /* 232809 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82369 | /* 232813 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82370 | /* 232815 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82371 | /* 232822 */ // (strict_fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src1)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (SQRTSDm:{ *:[f64] } addr:{ *:[iPTR] }:$src1) |
| 82372 | /* 232822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::SQRTSDm), |
| 82373 | /* 232825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82374 | /* 232827 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src1 |
| 82375 | /* 232831 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82376 | /* 232836 */ GIR_RootConstrainSelectedInstOperands, |
| 82377 | /* 232837 */ // GIR_Coverage, 2464, |
| 82378 | /* 232837 */ GIR_EraseRootFromParent_Done, |
| 82379 | /* 232838 */ // Label 5400: @232838 |
| 82380 | /* 232838 */ GIM_Try, /*On fail goto*//*Label 5401*/ GIMT_Encode4(232911), // Rule ID 18270 // |
| 82381 | /* 232843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_OptForSize_UseAVX), |
| 82382 | /* 232846 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82383 | /* 232850 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82384 | /* 232854 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82385 | /* 232858 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82386 | /* 232861 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82387 | /* 232865 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82388 | /* 232869 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82389 | /* 232871 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82390 | /* 232878 */ // (strict_fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSDm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 82391 | /* 232878 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 82392 | /* 232881 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82393 | /* 232885 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82394 | /* 232890 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82395 | /* 232892 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDm), |
| 82396 | /* 232895 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82397 | /* 232897 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82398 | /* 232900 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82399 | /* 232904 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82400 | /* 232909 */ GIR_RootConstrainSelectedInstOperands, |
| 82401 | /* 232910 */ // GIR_Coverage, 18270, |
| 82402 | /* 232910 */ GIR_EraseRootFromParent_Done, |
| 82403 | /* 232911 */ // Label 5401: @232911 |
| 82404 | /* 232911 */ GIM_Try, /*On fail goto*//*Label 5402*/ GIMT_Encode4(232984), // Rule ID 21439 // |
| 82405 | /* 232916 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512_OptForSize), |
| 82406 | /* 232919 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 82407 | /* 232923 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82408 | /* 232927 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82409 | /* 232931 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82410 | /* 232934 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82411 | /* 232938 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82412 | /* 232942 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82413 | /* 232944 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82414 | /* 232951 */ // (strict_fsqrt:{ *:[f64] } (ld:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTSDZm:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), addr:{ *:[iPTR] }:$src) |
| 82415 | /* 232951 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 82416 | /* 232954 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82417 | /* 232958 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82418 | /* 232963 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82419 | /* 232965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDZm), |
| 82420 | /* 232968 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82421 | /* 232970 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82422 | /* 232973 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82423 | /* 232977 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82424 | /* 232982 */ GIR_RootConstrainSelectedInstOperands, |
| 82425 | /* 232983 */ // GIR_Coverage, 21439, |
| 82426 | /* 232983 */ GIR_EraseRootFromParent_Done, |
| 82427 | /* 232984 */ // Label 5402: @232984 |
| 82428 | /* 232984 */ GIM_Try, /*On fail goto*//*Label 5403*/ GIMT_Encode4(233017), // Rule ID 1050 // |
| 82429 | /* 232989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 82430 | /* 232992 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 82431 | /* 232996 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 82432 | /* 233000 */ // (strict_fsqrt:{ *:[f64] } RFP64:{ *:[f64] }:$src) => (SQRT_Fp64:{ *:[f64] }:{ *:[i16] } RFP64:{ *:[f64] }:$src) |
| 82433 | /* 233000 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp64), |
| 82434 | /* 233005 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 82435 | /* 233011 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 82436 | /* 233015 */ GIR_RootConstrainSelectedInstOperands, |
| 82437 | /* 233016 */ // GIR_Coverage, 1050, |
| 82438 | /* 233016 */ GIR_Done, |
| 82439 | /* 233017 */ // Label 5403: @233017 |
| 82440 | /* 233017 */ GIM_Try, /*On fail goto*//*Label 5404*/ GIMT_Encode4(233044), // Rule ID 2462 // |
| 82441 | /* 233022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 82442 | /* 233025 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82443 | /* 233029 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82444 | /* 233033 */ // (strict_fsqrt:{ *:[f64] } FR64:{ *:[f64] }:$src1) => (SQRTSDr:{ *:[f64] } FR64:{ *:[f64] }:$src1) |
| 82445 | /* 233033 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTSDr), |
| 82446 | /* 233038 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82447 | /* 233042 */ GIR_RootConstrainSelectedInstOperands, |
| 82448 | /* 233043 */ // GIR_Coverage, 2462, |
| 82449 | /* 233043 */ GIR_Done, |
| 82450 | /* 233044 */ // Label 5404: @233044 |
| 82451 | /* 233044 */ GIM_Try, /*On fail goto*//*Label 5405*/ GIMT_Encode4(233086), // Rule ID 18268 // |
| 82452 | /* 233049 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseAVX), |
| 82453 | /* 233052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82454 | /* 233056 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64RegClassID), |
| 82455 | /* 233060 */ // (strict_fsqrt:{ *:[f64] } FR64:{ *:[f64] }:$src) => (VSQRTSDr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR64:{ *:[f64] }:$src) |
| 82456 | /* 233060 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 82457 | /* 233063 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82458 | /* 233067 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82459 | /* 233072 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82460 | /* 233074 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDr), |
| 82461 | /* 233077 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82462 | /* 233079 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82463 | /* 233082 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82464 | /* 233084 */ GIR_RootConstrainSelectedInstOperands, |
| 82465 | /* 233085 */ // GIR_Coverage, 18268, |
| 82466 | /* 233085 */ GIR_EraseRootFromParent_Done, |
| 82467 | /* 233086 */ // Label 5405: @233086 |
| 82468 | /* 233086 */ GIM_Try, /*On fail goto*//*Label 5406*/ GIMT_Encode4(233128), // Rule ID 21437 // |
| 82469 | /* 233091 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82470 | /* 233094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 82471 | /* 233098 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::FR64XRegClassID), |
| 82472 | /* 233102 */ // (strict_fsqrt:{ *:[f64] } FR64X:{ *:[f64] }:$src) => (VSQRTSDZr:{ *:[f64] } (IMPLICIT_DEF:{ *:[f64] }), FR64X:{ *:[f64] }:$src) |
| 82473 | /* 233102 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 82474 | /* 233105 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 82475 | /* 233109 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 82476 | /* 233114 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 82477 | /* 233116 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTSDZr), |
| 82478 | /* 233119 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82479 | /* 233121 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 82480 | /* 233124 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 82481 | /* 233126 */ GIR_RootConstrainSelectedInstOperands, |
| 82482 | /* 233127 */ // GIR_Coverage, 21437, |
| 82483 | /* 233127 */ GIR_EraseRootFromParent_Done, |
| 82484 | /* 233128 */ // Label 5406: @233128 |
| 82485 | /* 233128 */ GIM_Reject, |
| 82486 | /* 233129 */ // Label 5399: @233129 |
| 82487 | /* 233129 */ GIM_Reject, |
| 82488 | /* 233130 */ // Label 5377: @233130 |
| 82489 | /* 233130 */ GIM_Try, /*On fail goto*//*Label 5407*/ GIMT_Encode4(233166), // Rule ID 1052 // |
| 82490 | /* 233135 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 82491 | /* 233138 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s80, |
| 82492 | /* 233141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 82493 | /* 233145 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 82494 | /* 233149 */ // (strict_fsqrt:{ *:[f80] } RFP80:{ *:[f80] }:$src) => (SQRT_Fp80:{ *:[f80] }:{ *:[i16] } RFP80:{ *:[f80] }:$src) |
| 82495 | /* 233149 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRT_Fp80), |
| 82496 | /* 233154 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(X86::FPSW), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 82497 | /* 233160 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::FPCW), |
| 82498 | /* 233164 */ GIR_RootConstrainSelectedInstOperands, |
| 82499 | /* 233165 */ // GIR_Coverage, 1052, |
| 82500 | /* 233165 */ GIR_Done, |
| 82501 | /* 233166 */ // Label 5407: @233166 |
| 82502 | /* 233166 */ GIM_Reject, |
| 82503 | /* 233167 */ // Label 5378: @233167 |
| 82504 | /* 233167 */ GIM_Try, /*On fail goto*//*Label 5408*/ GIMT_Encode4(233369), |
| 82505 | /* 233172 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 82506 | /* 233175 */ GIM_Try, /*On fail goto*//*Label 5409*/ GIMT_Encode4(233231), // Rule ID 2468 // |
| 82507 | /* 233180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82508 | /* 233183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82509 | /* 233187 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82510 | /* 233191 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82511 | /* 233195 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82512 | /* 233198 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82513 | /* 233202 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82514 | /* 233206 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82515 | /* 233208 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82516 | /* 233215 */ // (strict_fsqrt:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDm:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 82517 | /* 233215 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDm), |
| 82518 | /* 233218 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82519 | /* 233220 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82520 | /* 233224 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82521 | /* 233229 */ GIR_RootConstrainSelectedInstOperands, |
| 82522 | /* 233230 */ // GIR_Coverage, 2468, |
| 82523 | /* 233230 */ GIR_EraseRootFromParent_Done, |
| 82524 | /* 233231 */ // Label 5409: @233231 |
| 82525 | /* 233231 */ GIM_Try, /*On fail goto*//*Label 5410*/ GIMT_Encode4(233287), // Rule ID 12090 // |
| 82526 | /* 233236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 82527 | /* 233239 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82528 | /* 233243 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82529 | /* 233247 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82530 | /* 233251 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82531 | /* 233254 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82532 | /* 233258 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82533 | /* 233262 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82534 | /* 233264 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82535 | /* 233271 */ // (strict_fsqrt:{ *:[v2f64] } (ld:{ *:[v2f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZ128m:{ *:[v2f64] } addr:{ *:[iPTR] }:$src) |
| 82536 | /* 233271 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ128m), |
| 82537 | /* 233274 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82538 | /* 233276 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82539 | /* 233280 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82540 | /* 233285 */ GIR_RootConstrainSelectedInstOperands, |
| 82541 | /* 233286 */ // GIR_Coverage, 12090, |
| 82542 | /* 233286 */ GIR_EraseRootFromParent_Done, |
| 82543 | /* 233287 */ // Label 5410: @233287 |
| 82544 | /* 233287 */ GIM_Try, /*On fail goto*//*Label 5411*/ GIMT_Encode4(233314), // Rule ID 2466 // |
| 82545 | /* 233292 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82546 | /* 233295 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82547 | /* 233299 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82548 | /* 233303 */ // (strict_fsqrt:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) => (VSQRTPDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 82549 | /* 233303 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDr), |
| 82550 | /* 233308 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82551 | /* 233312 */ GIR_RootConstrainSelectedInstOperands, |
| 82552 | /* 233313 */ // GIR_Coverage, 2466, |
| 82553 | /* 233313 */ GIR_Done, |
| 82554 | /* 233314 */ // Label 5411: @233314 |
| 82555 | /* 233314 */ GIM_Try, /*On fail goto*//*Label 5412*/ GIMT_Encode4(233341), // Rule ID 2474 // |
| 82556 | /* 233319 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE2), |
| 82557 | /* 233322 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82558 | /* 233326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82559 | /* 233330 */ // (strict_fsqrt:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) => (SQRTPDr:{ *:[v2f64] } VR128:{ *:[v2f64] }:$src) |
| 82560 | /* 233330 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTPDr), |
| 82561 | /* 233335 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82562 | /* 233339 */ GIR_RootConstrainSelectedInstOperands, |
| 82563 | /* 233340 */ // GIR_Coverage, 2474, |
| 82564 | /* 233340 */ GIR_Done, |
| 82565 | /* 233341 */ // Label 5412: @233341 |
| 82566 | /* 233341 */ GIM_Try, /*On fail goto*//*Label 5413*/ GIMT_Encode4(233368), // Rule ID 12086 // |
| 82567 | /* 233346 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 82568 | /* 233349 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82569 | /* 233353 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82570 | /* 233357 */ // (strict_fsqrt:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src) => (VSQRTPDZ128r:{ *:[v2f64] } VR128X:{ *:[v2f64] }:$src) |
| 82571 | /* 233357 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ128r), |
| 82572 | /* 233362 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82573 | /* 233366 */ GIR_RootConstrainSelectedInstOperands, |
| 82574 | /* 233367 */ // GIR_Coverage, 12086, |
| 82575 | /* 233367 */ GIR_Done, |
| 82576 | /* 233368 */ // Label 5413: @233368 |
| 82577 | /* 233368 */ GIM_Reject, |
| 82578 | /* 233369 */ // Label 5408: @233369 |
| 82579 | /* 233369 */ GIM_Reject, |
| 82580 | /* 233370 */ // Label 5379: @233370 |
| 82581 | /* 233370 */ GIM_Try, /*On fail goto*//*Label 5414*/ GIMT_Encode4(233572), |
| 82582 | /* 233375 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 82583 | /* 233378 */ GIM_Try, /*On fail goto*//*Label 5415*/ GIMT_Encode4(233434), // Rule ID 2452 // |
| 82584 | /* 233383 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82585 | /* 233386 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82586 | /* 233390 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82587 | /* 233394 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82588 | /* 233398 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82589 | /* 233401 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82590 | /* 233405 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82591 | /* 233409 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82592 | /* 233411 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82593 | /* 233418 */ // (strict_fsqrt:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSm:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 82594 | /* 233418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSm), |
| 82595 | /* 233421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82596 | /* 233423 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82597 | /* 233427 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82598 | /* 233432 */ GIR_RootConstrainSelectedInstOperands, |
| 82599 | /* 233433 */ // GIR_Coverage, 2452, |
| 82600 | /* 233433 */ GIR_EraseRootFromParent_Done, |
| 82601 | /* 233434 */ // Label 5415: @233434 |
| 82602 | /* 233434 */ GIM_Try, /*On fail goto*//*Label 5416*/ GIMT_Encode4(233490), // Rule ID 12066 // |
| 82603 | /* 233439 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 82604 | /* 233442 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82605 | /* 233446 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82606 | /* 233450 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82607 | /* 233454 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82608 | /* 233457 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82609 | /* 233461 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82610 | /* 233465 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82611 | /* 233467 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82612 | /* 233474 */ // (strict_fsqrt:{ *:[v4f32] } (ld:{ *:[v4f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZ128m:{ *:[v4f32] } addr:{ *:[iPTR] }:$src) |
| 82613 | /* 233474 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ128m), |
| 82614 | /* 233477 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82615 | /* 233479 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82616 | /* 233483 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82617 | /* 233488 */ GIR_RootConstrainSelectedInstOperands, |
| 82618 | /* 233489 */ // GIR_Coverage, 12066, |
| 82619 | /* 233489 */ GIR_EraseRootFromParent_Done, |
| 82620 | /* 233490 */ // Label 5416: @233490 |
| 82621 | /* 233490 */ GIM_Try, /*On fail goto*//*Label 5417*/ GIMT_Encode4(233517), // Rule ID 2450 // |
| 82622 | /* 233495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82623 | /* 233498 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82624 | /* 233502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82625 | /* 233506 */ // (strict_fsqrt:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) => (VSQRTPSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 82626 | /* 233506 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSr), |
| 82627 | /* 233511 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82628 | /* 233515 */ GIR_RootConstrainSelectedInstOperands, |
| 82629 | /* 233516 */ // GIR_Coverage, 2450, |
| 82630 | /* 233516 */ GIR_Done, |
| 82631 | /* 233517 */ // Label 5417: @233517 |
| 82632 | /* 233517 */ GIM_Try, /*On fail goto*//*Label 5418*/ GIMT_Encode4(233544), // Rule ID 2458 // |
| 82633 | /* 233522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_UseSSE1), |
| 82634 | /* 233525 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82635 | /* 233529 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128RegClassID), |
| 82636 | /* 233533 */ // (strict_fsqrt:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) => (SQRTPSr:{ *:[v4f32] } VR128:{ *:[v4f32] }:$src) |
| 82637 | /* 233533 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::SQRTPSr), |
| 82638 | /* 233538 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82639 | /* 233542 */ GIR_RootConstrainSelectedInstOperands, |
| 82640 | /* 233543 */ // GIR_Coverage, 2458, |
| 82641 | /* 233543 */ GIR_Done, |
| 82642 | /* 233544 */ // Label 5418: @233544 |
| 82643 | /* 233544 */ GIM_Try, /*On fail goto*//*Label 5419*/ GIMT_Encode4(233571), // Rule ID 12062 // |
| 82644 | /* 233549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 82645 | /* 233552 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82646 | /* 233556 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82647 | /* 233560 */ // (strict_fsqrt:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src) => (VSQRTPSZ128r:{ *:[v4f32] } VR128X:{ *:[v4f32] }:$src) |
| 82648 | /* 233560 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ128r), |
| 82649 | /* 233565 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82650 | /* 233569 */ GIR_RootConstrainSelectedInstOperands, |
| 82651 | /* 233570 */ // GIR_Coverage, 12062, |
| 82652 | /* 233570 */ GIR_Done, |
| 82653 | /* 233571 */ // Label 5419: @233571 |
| 82654 | /* 233571 */ GIM_Reject, |
| 82655 | /* 233572 */ // Label 5414: @233572 |
| 82656 | /* 233572 */ GIM_Reject, |
| 82657 | /* 233573 */ // Label 5380: @233573 |
| 82658 | /* 233573 */ GIM_Try, /*On fail goto*//*Label 5420*/ GIMT_Encode4(233748), |
| 82659 | /* 233578 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s64, |
| 82660 | /* 233581 */ GIM_Try, /*On fail goto*//*Label 5421*/ GIMT_Encode4(233637), // Rule ID 2472 // |
| 82661 | /* 233586 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82662 | /* 233589 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82663 | /* 233593 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82664 | /* 233597 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82665 | /* 233601 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82666 | /* 233604 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82667 | /* 233608 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82668 | /* 233612 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82669 | /* 233614 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82670 | /* 233621 */ // (strict_fsqrt:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDYm:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 82671 | /* 233621 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDYm), |
| 82672 | /* 233624 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82673 | /* 233626 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82674 | /* 233630 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82675 | /* 233635 */ GIR_RootConstrainSelectedInstOperands, |
| 82676 | /* 233636 */ // GIR_Coverage, 2472, |
| 82677 | /* 233636 */ GIR_EraseRootFromParent_Done, |
| 82678 | /* 233637 */ // Label 5421: @233637 |
| 82679 | /* 233637 */ GIM_Try, /*On fail goto*//*Label 5422*/ GIMT_Encode4(233693), // Rule ID 12102 // |
| 82680 | /* 233642 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 82681 | /* 233645 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82682 | /* 233649 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82683 | /* 233653 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82684 | /* 233657 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82685 | /* 233660 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82686 | /* 233664 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82687 | /* 233668 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82688 | /* 233670 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82689 | /* 233677 */ // (strict_fsqrt:{ *:[v4f64] } (ld:{ *:[v4f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZ256m:{ *:[v4f64] } addr:{ *:[iPTR] }:$src) |
| 82690 | /* 233677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ256m), |
| 82691 | /* 233680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82692 | /* 233682 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82693 | /* 233686 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82694 | /* 233691 */ GIR_RootConstrainSelectedInstOperands, |
| 82695 | /* 233692 */ // GIR_Coverage, 12102, |
| 82696 | /* 233692 */ GIR_EraseRootFromParent_Done, |
| 82697 | /* 233693 */ // Label 5422: @233693 |
| 82698 | /* 233693 */ GIM_Try, /*On fail goto*//*Label 5423*/ GIMT_Encode4(233720), // Rule ID 2470 // |
| 82699 | /* 233698 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82700 | /* 233701 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82701 | /* 233705 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82702 | /* 233709 */ // (strict_fsqrt:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) => (VSQRTPDYr:{ *:[v4f64] } VR256:{ *:[v4f64] }:$src) |
| 82703 | /* 233709 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDYr), |
| 82704 | /* 233714 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82705 | /* 233718 */ GIR_RootConstrainSelectedInstOperands, |
| 82706 | /* 233719 */ // GIR_Coverage, 2470, |
| 82707 | /* 233719 */ GIR_Done, |
| 82708 | /* 233720 */ // Label 5423: @233720 |
| 82709 | /* 233720 */ GIM_Try, /*On fail goto*//*Label 5424*/ GIMT_Encode4(233747), // Rule ID 12098 // |
| 82710 | /* 233725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 82711 | /* 233728 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82712 | /* 233732 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82713 | /* 233736 */ // (strict_fsqrt:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src) => (VSQRTPDZ256r:{ *:[v4f64] } VR256X:{ *:[v4f64] }:$src) |
| 82714 | /* 233736 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZ256r), |
| 82715 | /* 233741 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82716 | /* 233745 */ GIR_RootConstrainSelectedInstOperands, |
| 82717 | /* 233746 */ // GIR_Coverage, 12098, |
| 82718 | /* 233746 */ GIR_Done, |
| 82719 | /* 233747 */ // Label 5424: @233747 |
| 82720 | /* 233747 */ GIM_Reject, |
| 82721 | /* 233748 */ // Label 5420: @233748 |
| 82722 | /* 233748 */ GIM_Reject, |
| 82723 | /* 233749 */ // Label 5381: @233749 |
| 82724 | /* 233749 */ GIM_Try, /*On fail goto*//*Label 5425*/ GIMT_Encode4(233837), |
| 82725 | /* 233754 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 82726 | /* 233757 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82727 | /* 233761 */ GIM_Try, /*On fail goto*//*Label 5426*/ GIMT_Encode4(233813), // Rule ID 12018 // |
| 82728 | /* 233766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82729 | /* 233769 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82730 | /* 233773 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82731 | /* 233777 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82732 | /* 233780 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82733 | /* 233784 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82734 | /* 233788 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82735 | /* 233790 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82736 | /* 233797 */ // (strict_fsqrt:{ *:[v8f16] } (ld:{ *:[v8f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZ128m:{ *:[v8f16] } addr:{ *:[iPTR] }:$src) |
| 82737 | /* 233797 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ128m), |
| 82738 | /* 233800 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82739 | /* 233802 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82740 | /* 233806 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82741 | /* 233811 */ GIR_RootConstrainSelectedInstOperands, |
| 82742 | /* 233812 */ // GIR_Coverage, 12018, |
| 82743 | /* 233812 */ GIR_EraseRootFromParent_Done, |
| 82744 | /* 233813 */ // Label 5426: @233813 |
| 82745 | /* 233813 */ GIM_Try, /*On fail goto*//*Label 5427*/ GIMT_Encode4(233836), // Rule ID 12014 // |
| 82746 | /* 233818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82747 | /* 233821 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR128XRegClassID), |
| 82748 | /* 233825 */ // (strict_fsqrt:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src) => (VSQRTPHZ128r:{ *:[v8f16] } VR128X:{ *:[v8f16] }:$src) |
| 82749 | /* 233825 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ128r), |
| 82750 | /* 233830 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82751 | /* 233834 */ GIR_RootConstrainSelectedInstOperands, |
| 82752 | /* 233835 */ // GIR_Coverage, 12014, |
| 82753 | /* 233835 */ GIR_Done, |
| 82754 | /* 233836 */ // Label 5427: @233836 |
| 82755 | /* 233836 */ GIM_Reject, |
| 82756 | /* 233837 */ // Label 5425: @233837 |
| 82757 | /* 233837 */ GIM_Reject, |
| 82758 | /* 233838 */ // Label 5382: @233838 |
| 82759 | /* 233838 */ GIM_Try, /*On fail goto*//*Label 5428*/ GIMT_Encode4(234013), |
| 82760 | /* 233843 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s32, |
| 82761 | /* 233846 */ GIM_Try, /*On fail goto*//*Label 5429*/ GIMT_Encode4(233902), // Rule ID 2456 // |
| 82762 | /* 233851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82763 | /* 233854 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82764 | /* 233858 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82765 | /* 233862 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82766 | /* 233866 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82767 | /* 233869 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82768 | /* 233873 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82769 | /* 233877 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82770 | /* 233879 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82771 | /* 233886 */ // (strict_fsqrt:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSYm:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 82772 | /* 233886 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSYm), |
| 82773 | /* 233889 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82774 | /* 233891 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82775 | /* 233895 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82776 | /* 233900 */ GIR_RootConstrainSelectedInstOperands, |
| 82777 | /* 233901 */ // GIR_Coverage, 2456, |
| 82778 | /* 233901 */ GIR_EraseRootFromParent_Done, |
| 82779 | /* 233902 */ // Label 5429: @233902 |
| 82780 | /* 233902 */ GIM_Try, /*On fail goto*//*Label 5430*/ GIMT_Encode4(233958), // Rule ID 12078 // |
| 82781 | /* 233907 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 82782 | /* 233910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82783 | /* 233914 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82784 | /* 233918 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82785 | /* 233922 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82786 | /* 233925 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82787 | /* 233929 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82788 | /* 233933 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82789 | /* 233935 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82790 | /* 233942 */ // (strict_fsqrt:{ *:[v8f32] } (ld:{ *:[v8f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZ256m:{ *:[v8f32] } addr:{ *:[iPTR] }:$src) |
| 82791 | /* 233942 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ256m), |
| 82792 | /* 233945 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82793 | /* 233947 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82794 | /* 233951 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82795 | /* 233956 */ GIR_RootConstrainSelectedInstOperands, |
| 82796 | /* 233957 */ // GIR_Coverage, 12078, |
| 82797 | /* 233957 */ GIR_EraseRootFromParent_Done, |
| 82798 | /* 233958 */ // Label 5430: @233958 |
| 82799 | /* 233958 */ GIM_Try, /*On fail goto*//*Label 5431*/ GIMT_Encode4(233985), // Rule ID 2454 // |
| 82800 | /* 233963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX_NoVLX), |
| 82801 | /* 233966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82802 | /* 233970 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256RegClassID), |
| 82803 | /* 233974 */ // (strict_fsqrt:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) => (VSQRTPSYr:{ *:[v8f32] } VR256:{ *:[v8f32] }:$src) |
| 82804 | /* 233974 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSYr), |
| 82805 | /* 233979 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82806 | /* 233983 */ GIR_RootConstrainSelectedInstOperands, |
| 82807 | /* 233984 */ // GIR_Coverage, 2454, |
| 82808 | /* 233984 */ GIR_Done, |
| 82809 | /* 233985 */ // Label 5431: @233985 |
| 82810 | /* 233985 */ GIM_Try, /*On fail goto*//*Label 5432*/ GIMT_Encode4(234012), // Rule ID 12074 // |
| 82811 | /* 233990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasVLX), |
| 82812 | /* 233993 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82813 | /* 233997 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82814 | /* 234001 */ // (strict_fsqrt:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src) => (VSQRTPSZ256r:{ *:[v8f32] } VR256X:{ *:[v8f32] }:$src) |
| 82815 | /* 234001 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZ256r), |
| 82816 | /* 234006 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82817 | /* 234010 */ GIR_RootConstrainSelectedInstOperands, |
| 82818 | /* 234011 */ // GIR_Coverage, 12074, |
| 82819 | /* 234011 */ GIR_Done, |
| 82820 | /* 234012 */ // Label 5432: @234012 |
| 82821 | /* 234012 */ GIM_Reject, |
| 82822 | /* 234013 */ // Label 5428: @234013 |
| 82823 | /* 234013 */ GIM_Reject, |
| 82824 | /* 234014 */ // Label 5383: @234014 |
| 82825 | /* 234014 */ GIM_Try, /*On fail goto*//*Label 5433*/ GIMT_Encode4(234102), |
| 82826 | /* 234019 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s64, |
| 82827 | /* 234022 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82828 | /* 234026 */ GIM_Try, /*On fail goto*//*Label 5434*/ GIMT_Encode4(234078), // Rule ID 12054 // |
| 82829 | /* 234031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82830 | /* 234034 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82831 | /* 234038 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82832 | /* 234042 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82833 | /* 234045 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82834 | /* 234049 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82835 | /* 234053 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82836 | /* 234055 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82837 | /* 234062 */ // (strict_fsqrt:{ *:[v8f64] } (ld:{ *:[v8f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPDZm:{ *:[v8f64] } addr:{ *:[iPTR] }:$src) |
| 82838 | /* 234062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZm), |
| 82839 | /* 234065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82840 | /* 234067 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82841 | /* 234071 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82842 | /* 234076 */ GIR_RootConstrainSelectedInstOperands, |
| 82843 | /* 234077 */ // GIR_Coverage, 12054, |
| 82844 | /* 234077 */ GIR_EraseRootFromParent_Done, |
| 82845 | /* 234078 */ // Label 5434: @234078 |
| 82846 | /* 234078 */ GIM_Try, /*On fail goto*//*Label 5435*/ GIMT_Encode4(234101), // Rule ID 12050 // |
| 82847 | /* 234083 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82848 | /* 234086 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82849 | /* 234090 */ // (strict_fsqrt:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src) => (VSQRTPDZr:{ *:[v8f64] } VR512:{ *:[v8f64] }:$src) |
| 82850 | /* 234090 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPDZr), |
| 82851 | /* 234095 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82852 | /* 234099 */ GIR_RootConstrainSelectedInstOperands, |
| 82853 | /* 234100 */ // GIR_Coverage, 12050, |
| 82854 | /* 234100 */ GIR_Done, |
| 82855 | /* 234101 */ // Label 5435: @234101 |
| 82856 | /* 234101 */ GIM_Reject, |
| 82857 | /* 234102 */ // Label 5433: @234102 |
| 82858 | /* 234102 */ GIM_Reject, |
| 82859 | /* 234103 */ // Label 5384: @234103 |
| 82860 | /* 234103 */ GIM_Try, /*On fail goto*//*Label 5436*/ GIMT_Encode4(234191), |
| 82861 | /* 234108 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s16, |
| 82862 | /* 234111 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82863 | /* 234115 */ GIM_Try, /*On fail goto*//*Label 5437*/ GIMT_Encode4(234167), // Rule ID 12030 // |
| 82864 | /* 234120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82865 | /* 234123 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82866 | /* 234127 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82867 | /* 234131 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82868 | /* 234134 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82869 | /* 234138 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82870 | /* 234142 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82871 | /* 234144 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82872 | /* 234151 */ // (strict_fsqrt:{ *:[v16f16] } (ld:{ *:[v16f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZ256m:{ *:[v16f16] } addr:{ *:[iPTR] }:$src) |
| 82873 | /* 234151 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ256m), |
| 82874 | /* 234154 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82875 | /* 234156 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82876 | /* 234160 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82877 | /* 234165 */ GIR_RootConstrainSelectedInstOperands, |
| 82878 | /* 234166 */ // GIR_Coverage, 12030, |
| 82879 | /* 234166 */ GIR_EraseRootFromParent_Done, |
| 82880 | /* 234167 */ // Label 5437: @234167 |
| 82881 | /* 234167 */ GIM_Try, /*On fail goto*//*Label 5438*/ GIMT_Encode4(234190), // Rule ID 12026 // |
| 82882 | /* 234172 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16_HasVLX), |
| 82883 | /* 234175 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR256XRegClassID), |
| 82884 | /* 234179 */ // (strict_fsqrt:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src) => (VSQRTPHZ256r:{ *:[v16f16] } VR256X:{ *:[v16f16] }:$src) |
| 82885 | /* 234179 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZ256r), |
| 82886 | /* 234184 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82887 | /* 234188 */ GIR_RootConstrainSelectedInstOperands, |
| 82888 | /* 234189 */ // GIR_Coverage, 12026, |
| 82889 | /* 234189 */ GIR_Done, |
| 82890 | /* 234190 */ // Label 5438: @234190 |
| 82891 | /* 234190 */ GIM_Reject, |
| 82892 | /* 234191 */ // Label 5436: @234191 |
| 82893 | /* 234191 */ GIM_Reject, |
| 82894 | /* 234192 */ // Label 5385: @234192 |
| 82895 | /* 234192 */ GIM_Try, /*On fail goto*//*Label 5439*/ GIMT_Encode4(234280), |
| 82896 | /* 234197 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s32, |
| 82897 | /* 234200 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82898 | /* 234204 */ GIM_Try, /*On fail goto*//*Label 5440*/ GIMT_Encode4(234256), // Rule ID 12042 // |
| 82899 | /* 234209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82900 | /* 234212 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82901 | /* 234216 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82902 | /* 234220 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82903 | /* 234223 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82904 | /* 234227 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82905 | /* 234231 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82906 | /* 234233 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82907 | /* 234240 */ // (strict_fsqrt:{ *:[v16f32] } (ld:{ *:[v16f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPSZm:{ *:[v16f32] } addr:{ *:[iPTR] }:$src) |
| 82908 | /* 234240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZm), |
| 82909 | /* 234243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82910 | /* 234245 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82911 | /* 234249 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82912 | /* 234254 */ GIR_RootConstrainSelectedInstOperands, |
| 82913 | /* 234255 */ // GIR_Coverage, 12042, |
| 82914 | /* 234255 */ GIR_EraseRootFromParent_Done, |
| 82915 | /* 234256 */ // Label 5440: @234256 |
| 82916 | /* 234256 */ GIM_Try, /*On fail goto*//*Label 5441*/ GIMT_Encode4(234279), // Rule ID 12038 // |
| 82917 | /* 234261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasAVX512), |
| 82918 | /* 234264 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82919 | /* 234268 */ // (strict_fsqrt:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src) => (VSQRTPSZr:{ *:[v16f32] } VR512:{ *:[v16f32] }:$src) |
| 82920 | /* 234268 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPSZr), |
| 82921 | /* 234273 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82922 | /* 234277 */ GIR_RootConstrainSelectedInstOperands, |
| 82923 | /* 234278 */ // GIR_Coverage, 12038, |
| 82924 | /* 234278 */ GIR_Done, |
| 82925 | /* 234279 */ // Label 5441: @234279 |
| 82926 | /* 234279 */ GIM_Reject, |
| 82927 | /* 234280 */ // Label 5439: @234280 |
| 82928 | /* 234280 */ GIM_Reject, |
| 82929 | /* 234281 */ // Label 5386: @234281 |
| 82930 | /* 234281 */ GIM_Try, /*On fail goto*//*Label 5442*/ GIMT_Encode4(234369), |
| 82931 | /* 234286 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v32s16, |
| 82932 | /* 234289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82933 | /* 234293 */ GIM_Try, /*On fail goto*//*Label 5443*/ GIMT_Encode4(234345), // Rule ID 12006 // |
| 82934 | /* 234298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82935 | /* 234301 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 82936 | /* 234305 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LOAD), |
| 82937 | /* 234309 */ GIM_CheckAtomicOrdering, /*MI*/1, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 82938 | /* 234312 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/1, /*MMO*/0, /*OpIdx*/0, |
| 82939 | /* 234316 */ GIM_CheckPointerToAny, /*MI*/1, /*Op*/1, /*SizeInBits*/0, |
| 82940 | /* 234320 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 82941 | /* 234322 */ GIM_CheckComplexPattern, /*MI*/1, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 82942 | /* 234329 */ // (strict_fsqrt:{ *:[v32f16] } (ld:{ *:[v32f16] } addr:{ *:[iPTR] }:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>) => (VSQRTPHZm:{ *:[v32f16] } addr:{ *:[iPTR] }:$src) |
| 82943 | /* 234329 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZm), |
| 82944 | /* 234332 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 82945 | /* 234334 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 82946 | /* 234338 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 82947 | /* 234343 */ GIR_RootConstrainSelectedInstOperands, |
| 82948 | /* 234344 */ // GIR_Coverage, 12006, |
| 82949 | /* 234344 */ GIR_EraseRootFromParent_Done, |
| 82950 | /* 234345 */ // Label 5443: @234345 |
| 82951 | /* 234345 */ GIM_Try, /*On fail goto*//*Label 5444*/ GIMT_Encode4(234368), // Rule ID 12002 // |
| 82952 | /* 234350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasFP16), |
| 82953 | /* 234353 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(X86::VR512RegClassID), |
| 82954 | /* 234357 */ // (strict_fsqrt:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src) => (VSQRTPHZr:{ *:[v32f16] } VR512:{ *:[v32f16] }:$src) |
| 82955 | /* 234357 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::VSQRTPHZr), |
| 82956 | /* 234362 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(X86::MXCSR), |
| 82957 | /* 234366 */ GIR_RootConstrainSelectedInstOperands, |
| 82958 | /* 234367 */ // GIR_Coverage, 12002, |
| 82959 | /* 234367 */ GIR_Done, |
| 82960 | /* 234368 */ // Label 5444: @234368 |
| 82961 | /* 234368 */ GIM_Reject, |
| 82962 | /* 234369 */ // Label 5442: @234369 |
| 82963 | /* 234369 */ GIM_Reject, |
| 82964 | /* 234370 */ // Label 5387: @234370 |
| 82965 | /* 234370 */ GIM_Reject, |
| 82966 | /* 234371 */ // Label 75: @234371 |
| 82967 | /* 234371 */ GIM_Try, /*On fail goto*//*Label 5445*/ GIMT_Encode4(234383), // Rule ID 17062 // |
| 82968 | /* 234376 */ // (trap) => (TRAP) |
| 82969 | /* 234376 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::TRAP), |
| 82970 | /* 234381 */ GIR_RootConstrainSelectedInstOperands, |
| 82971 | /* 234382 */ // GIR_Coverage, 17062, |
| 82972 | /* 234382 */ GIR_Done, |
| 82973 | /* 234383 */ // Label 5445: @234383 |
| 82974 | /* 234383 */ GIM_Reject, |
| 82975 | /* 234384 */ // Label 76: @234384 |
| 82976 | /* 234384 */ GIM_Try, /*On fail goto*//*Label 5446*/ GIMT_Encode4(234399), // Rule ID 22438 // |
| 82977 | /* 234389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotPS), |
| 82978 | /* 234392 */ // (debugtrap) => (INT3) |
| 82979 | /* 234392 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::INT3), |
| 82980 | /* 234397 */ GIR_RootConstrainSelectedInstOperands, |
| 82981 | /* 234398 */ // GIR_Coverage, 22438, |
| 82982 | /* 234398 */ GIR_Done, |
| 82983 | /* 234399 */ // Label 5446: @234399 |
| 82984 | /* 234399 */ GIM_Try, /*On fail goto*//*Label 5447*/ GIMT_Encode4(234419), // Rule ID 22439 // |
| 82985 | /* 234404 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsPS), |
| 82986 | /* 234407 */ // (debugtrap) => (INT 65:{ *:[i8] }) |
| 82987 | /* 234407 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::INT), |
| 82988 | /* 234410 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/65, |
| 82989 | /* 234413 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 82990 | /* 234417 */ GIR_RootConstrainSelectedInstOperands, |
| 82991 | /* 234418 */ // GIR_Coverage, 22439, |
| 82992 | /* 234418 */ GIR_EraseRootFromParent_Done, |
| 82993 | /* 234419 */ // Label 5447: @234419 |
| 82994 | /* 234419 */ GIM_Reject, |
| 82995 | /* 234420 */ // Label 77: @234420 |
| 82996 | /* 234420 */ GIM_Try, /*On fail goto*//*Label 5448*/ GIMT_Encode4(234435), // Rule ID 17064 // |
| 82997 | /* 234425 */ // MIs[0] kind |
| 82998 | /* 234425 */ GIM_CheckIsImm, /*MI*/0, /*Op*/0, |
| 82999 | /* 234428 */ // (ubsantrap (timm:{ *:[i32] }):$kind) => (UBSAN_UD1 (timm:{ *:[i32] }):$kind) |
| 83000 | /* 234428 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(X86::UBSAN_UD1), |
| 83001 | /* 234433 */ GIR_RootConstrainSelectedInstOperands, |
| 83002 | /* 234434 */ // GIR_Coverage, 17064, |
| 83003 | /* 234434 */ GIR_Done, |
| 83004 | /* 234435 */ // Label 5448: @234435 |
| 83005 | /* 234435 */ GIM_Reject, |
| 83006 | /* 234436 */ // Label 78: @234436 |
| 83007 | /* 234436 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 5452*/ GIMT_Encode4(234894), |
| 83008 | /* 234447 */ /*GILLT_s32*//*Label 5449*/ GIMT_Encode4(234459), |
| 83009 | /* 234451 */ /*GILLT_s64*//*Label 5450*/ GIMT_Encode4(234604), |
| 83010 | /* 234455 */ /*GILLT_s80*//*Label 5451*/ GIMT_Encode4(234749), |
| 83011 | /* 234459 */ // Label 5449: @234459 |
| 83012 | /* 234459 */ GIM_Try, /*On fail goto*//*Label 5453*/ GIMT_Encode4(234507), // Rule ID 1086 // |
| 83013 | /* 234464 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 83014 | /* 234467 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83015 | /* 234474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83016 | /* 234478 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83017 | /* 234482 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83018 | /* 234489 */ // (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild16>> => (ILD_Fp16m32:{ *:[f32] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83019 | /* 234489 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp16m32), |
| 83020 | /* 234492 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83021 | /* 234494 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83022 | /* 234498 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83023 | /* 234501 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83024 | /* 234505 */ GIR_RootConstrainSelectedInstOperands, |
| 83025 | /* 234506 */ // GIR_Coverage, 1086, |
| 83026 | /* 234506 */ GIR_EraseRootFromParent_Done, |
| 83027 | /* 234507 */ // Label 5453: @234507 |
| 83028 | /* 234507 */ GIM_Try, /*On fail goto*//*Label 5454*/ GIMT_Encode4(234555), // Rule ID 1087 // |
| 83029 | /* 234512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 83030 | /* 234515 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83031 | /* 234522 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83032 | /* 234526 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83033 | /* 234530 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83034 | /* 234537 */ // (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild32>> => (ILD_Fp32m32:{ *:[f32] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83035 | /* 234537 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp32m32), |
| 83036 | /* 234540 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83037 | /* 234542 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83038 | /* 234546 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83039 | /* 234549 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83040 | /* 234553 */ GIR_RootConstrainSelectedInstOperands, |
| 83041 | /* 234554 */ // GIR_Coverage, 1087, |
| 83042 | /* 234554 */ GIR_EraseRootFromParent_Done, |
| 83043 | /* 234555 */ // Label 5454: @234555 |
| 83044 | /* 234555 */ GIM_Try, /*On fail goto*//*Label 5455*/ GIMT_Encode4(234603), // Rule ID 1088 // |
| 83045 | /* 234560 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf32), |
| 83046 | /* 234563 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83047 | /* 234570 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83048 | /* 234574 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83049 | /* 234578 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83050 | /* 234585 */ // (X86fild:{ *:[f32] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild64>> => (ILD_Fp64m32:{ *:[f32] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83051 | /* 234585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp64m32), |
| 83052 | /* 234588 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83053 | /* 234590 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83054 | /* 234594 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83055 | /* 234597 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83056 | /* 234601 */ GIR_RootConstrainSelectedInstOperands, |
| 83057 | /* 234602 */ // GIR_Coverage, 1088, |
| 83058 | /* 234602 */ GIR_EraseRootFromParent_Done, |
| 83059 | /* 234603 */ // Label 5455: @234603 |
| 83060 | /* 234603 */ GIM_Reject, |
| 83061 | /* 234604 */ // Label 5450: @234604 |
| 83062 | /* 234604 */ GIM_Try, /*On fail goto*//*Label 5456*/ GIMT_Encode4(234652), // Rule ID 1089 // |
| 83063 | /* 234609 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 83064 | /* 234612 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83065 | /* 234619 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83066 | /* 234623 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83067 | /* 234627 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83068 | /* 234634 */ // (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild16>> => (ILD_Fp16m64:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83069 | /* 234634 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp16m64), |
| 83070 | /* 234637 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83071 | /* 234639 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83072 | /* 234643 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83073 | /* 234646 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83074 | /* 234650 */ GIR_RootConstrainSelectedInstOperands, |
| 83075 | /* 234651 */ // GIR_Coverage, 1089, |
| 83076 | /* 234651 */ GIR_EraseRootFromParent_Done, |
| 83077 | /* 234652 */ // Label 5456: @234652 |
| 83078 | /* 234652 */ GIM_Try, /*On fail goto*//*Label 5457*/ GIMT_Encode4(234700), // Rule ID 1090 // |
| 83079 | /* 234657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 83080 | /* 234660 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83081 | /* 234667 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83082 | /* 234671 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83083 | /* 234675 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83084 | /* 234682 */ // (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild32>> => (ILD_Fp32m64:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83085 | /* 234682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp32m64), |
| 83086 | /* 234685 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83087 | /* 234687 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83088 | /* 234691 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83089 | /* 234694 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83090 | /* 234698 */ GIR_RootConstrainSelectedInstOperands, |
| 83091 | /* 234699 */ // GIR_Coverage, 1090, |
| 83092 | /* 234699 */ GIR_EraseRootFromParent_Done, |
| 83093 | /* 234700 */ // Label 5457: @234700 |
| 83094 | /* 234700 */ GIM_Try, /*On fail goto*//*Label 5458*/ GIMT_Encode4(234748), // Rule ID 1091 // |
| 83095 | /* 234705 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_FPStackf64), |
| 83096 | /* 234708 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83097 | /* 234715 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83098 | /* 234719 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83099 | /* 234723 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83100 | /* 234730 */ // (X86fild:{ *:[f64] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild64>> => (ILD_Fp64m64:{ *:[f64] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83101 | /* 234730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp64m64), |
| 83102 | /* 234733 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83103 | /* 234735 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83104 | /* 234739 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83105 | /* 234742 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83106 | /* 234746 */ GIR_RootConstrainSelectedInstOperands, |
| 83107 | /* 234747 */ // GIR_Coverage, 1091, |
| 83108 | /* 234747 */ GIR_EraseRootFromParent_Done, |
| 83109 | /* 234748 */ // Label 5458: @234748 |
| 83110 | /* 234748 */ GIM_Reject, |
| 83111 | /* 234749 */ // Label 5451: @234749 |
| 83112 | /* 234749 */ GIM_Try, /*On fail goto*//*Label 5459*/ GIMT_Encode4(234797), // Rule ID 1092 // |
| 83113 | /* 234754 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 83114 | /* 234757 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83115 | /* 234764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83116 | /* 234768 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83117 | /* 234772 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83118 | /* 234779 */ // (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild16>> => (ILD_Fp16m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83119 | /* 234779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp16m80), |
| 83120 | /* 234782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83121 | /* 234784 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83122 | /* 234788 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83123 | /* 234791 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83124 | /* 234795 */ GIR_RootConstrainSelectedInstOperands, |
| 83125 | /* 234796 */ // GIR_Coverage, 1092, |
| 83126 | /* 234796 */ GIR_EraseRootFromParent_Done, |
| 83127 | /* 234797 */ // Label 5459: @234797 |
| 83128 | /* 234797 */ GIM_Try, /*On fail goto*//*Label 5460*/ GIMT_Encode4(234845), // Rule ID 1093 // |
| 83129 | /* 234802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 83130 | /* 234805 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83131 | /* 234812 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83132 | /* 234816 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83133 | /* 234820 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83134 | /* 234827 */ // (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild32>> => (ILD_Fp32m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83135 | /* 234827 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp32m80), |
| 83136 | /* 234830 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83137 | /* 234832 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83138 | /* 234836 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83139 | /* 234839 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83140 | /* 234843 */ GIR_RootConstrainSelectedInstOperands, |
| 83141 | /* 234844 */ // GIR_Coverage, 1093, |
| 83142 | /* 234844 */ GIR_EraseRootFromParent_Done, |
| 83143 | /* 234845 */ // Label 5460: @234845 |
| 83144 | /* 234845 */ GIM_Try, /*On fail goto*//*Label 5461*/ GIMT_Encode4(234893), // Rule ID 1094 // |
| 83145 | /* 234850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasX87), |
| 83146 | /* 234853 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83147 | /* 234860 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83148 | /* 234864 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83149 | /* 234868 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83150 | /* 234875 */ // (X86fild:{ *:[f80] } addr:{ *:[iPTR] }:$src)<<P:Predicate_X86fild64>> => (ILD_Fp64m80:{ *:[f80] }:{ *:[i16] } addr:{ *:[iPTR] }:$src) |
| 83151 | /* 234875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ILD_Fp64m80), |
| 83152 | /* 234878 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 83153 | /* 234880 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // src |
| 83154 | /* 234884 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83155 | /* 234887 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83156 | /* 234891 */ GIR_RootConstrainSelectedInstOperands, |
| 83157 | /* 234892 */ // GIR_Coverage, 1094, |
| 83158 | /* 234892 */ GIR_EraseRootFromParent_Done, |
| 83159 | /* 234893 */ // Label 5461: @234893 |
| 83160 | /* 234893 */ GIM_Reject, |
| 83161 | /* 234894 */ // Label 5452: @234894 |
| 83162 | /* 234894 */ GIM_Reject, |
| 83163 | /* 234895 */ // Label 79: @234895 |
| 83164 | /* 234895 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(3), GIMT_Encode2(6), /*)*//*default:*//*Label 5465*/ GIMT_Encode4(235758), |
| 83165 | /* 234906 */ /*GILLT_s32*//*Label 5462*/ GIMT_Encode4(234918), |
| 83166 | /* 234910 */ /*GILLT_s64*//*Label 5463*/ GIMT_Encode4(235198), |
| 83167 | /* 234914 */ /*GILLT_s80*//*Label 5464*/ GIMT_Encode4(235478), |
| 83168 | /* 234918 */ // Label 5462: @234918 |
| 83169 | /* 234918 */ GIM_Try, /*On fail goto*//*Label 5466*/ GIMT_Encode4(234963), // Rule ID 873 // |
| 83170 | /* 234923 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83171 | /* 234930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83172 | /* 234934 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83173 | /* 234938 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83174 | /* 234945 */ // (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) |
| 83175 | /* 234945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP32_TO_INT16_IN_MEM), |
| 83176 | /* 234948 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83177 | /* 234952 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83178 | /* 234954 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83179 | /* 234957 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83180 | /* 234961 */ GIR_RootConstrainSelectedInstOperands, |
| 83181 | /* 234962 */ // GIR_Coverage, 873, |
| 83182 | /* 234962 */ GIR_EraseRootFromParent_Done, |
| 83183 | /* 234963 */ // Label 5466: @234963 |
| 83184 | /* 234963 */ GIM_Try, /*On fail goto*//*Label 5467*/ GIMT_Encode4(235008), // Rule ID 874 // |
| 83185 | /* 234968 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83186 | /* 234975 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83187 | /* 234979 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83188 | /* 234983 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83189 | /* 234990 */ // (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) |
| 83190 | /* 234990 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP32_TO_INT32_IN_MEM), |
| 83191 | /* 234993 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83192 | /* 234997 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83193 | /* 234999 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83194 | /* 235002 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83195 | /* 235006 */ GIR_RootConstrainSelectedInstOperands, |
| 83196 | /* 235007 */ // GIR_Coverage, 874, |
| 83197 | /* 235007 */ GIR_EraseRootFromParent_Done, |
| 83198 | /* 235008 */ // Label 5467: @235008 |
| 83199 | /* 235008 */ GIM_Try, /*On fail goto*//*Label 5468*/ GIMT_Encode4(235053), // Rule ID 875 // |
| 83200 | /* 235013 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83201 | /* 235020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83202 | /* 235024 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83203 | /* 235028 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83204 | /* 235035 */ // (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) |
| 83205 | /* 235035 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP32_TO_INT64_IN_MEM), |
| 83206 | /* 235038 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83207 | /* 235042 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83208 | /* 235044 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83209 | /* 235047 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83210 | /* 235051 */ GIR_RootConstrainSelectedInstOperands, |
| 83211 | /* 235052 */ // GIR_Coverage, 875, |
| 83212 | /* 235052 */ GIR_EraseRootFromParent_Done, |
| 83213 | /* 235053 */ // Label 5468: @235053 |
| 83214 | /* 235053 */ GIM_Try, /*On fail goto*//*Label 5469*/ GIMT_Encode4(235101), // Rule ID 1107 // |
| 83215 | /* 235058 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83216 | /* 235061 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83217 | /* 235068 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83218 | /* 235072 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83219 | /* 235076 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83220 | /* 235083 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i16mem>> => (ISTT_Fp16m32:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP32:{ *:[f32] }:$src) |
| 83221 | /* 235083 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp16m32), |
| 83222 | /* 235086 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83223 | /* 235090 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83224 | /* 235092 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83225 | /* 235095 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83226 | /* 235099 */ GIR_RootConstrainSelectedInstOperands, |
| 83227 | /* 235100 */ // GIR_Coverage, 1107, |
| 83228 | /* 235100 */ GIR_EraseRootFromParent_Done, |
| 83229 | /* 235101 */ // Label 5469: @235101 |
| 83230 | /* 235101 */ GIM_Try, /*On fail goto*//*Label 5470*/ GIMT_Encode4(235149), // Rule ID 1108 // |
| 83231 | /* 235106 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83232 | /* 235109 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83233 | /* 235116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83234 | /* 235120 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83235 | /* 235124 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83236 | /* 235131 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i32mem>> => (ISTT_Fp32m32:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP32:{ *:[f32] }:$src) |
| 83237 | /* 235131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp32m32), |
| 83238 | /* 235134 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83239 | /* 235138 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83240 | /* 235140 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83241 | /* 235143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83242 | /* 235147 */ GIR_RootConstrainSelectedInstOperands, |
| 83243 | /* 235148 */ // GIR_Coverage, 1108, |
| 83244 | /* 235148 */ GIR_EraseRootFromParent_Done, |
| 83245 | /* 235149 */ // Label 5470: @235149 |
| 83246 | /* 235149 */ GIM_Try, /*On fail goto*//*Label 5471*/ GIMT_Encode4(235197), // Rule ID 1109 // |
| 83247 | /* 235154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83248 | /* 235157 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83249 | /* 235164 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP32RegClassID), |
| 83250 | /* 235168 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83251 | /* 235172 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83252 | /* 235179 */ // (X86fp_to_mem RFP32:{ *:[f32] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i64mem>> => (ISTT_Fp64m32:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP32:{ *:[f32] }:$src) |
| 83253 | /* 235179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp64m32), |
| 83254 | /* 235182 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83255 | /* 235186 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83256 | /* 235188 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83257 | /* 235191 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83258 | /* 235195 */ GIR_RootConstrainSelectedInstOperands, |
| 83259 | /* 235196 */ // GIR_Coverage, 1109, |
| 83260 | /* 235196 */ GIR_EraseRootFromParent_Done, |
| 83261 | /* 235197 */ // Label 5471: @235197 |
| 83262 | /* 235197 */ GIM_Reject, |
| 83263 | /* 235198 */ // Label 5463: @235198 |
| 83264 | /* 235198 */ GIM_Try, /*On fail goto*//*Label 5472*/ GIMT_Encode4(235243), // Rule ID 876 // |
| 83265 | /* 235203 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83266 | /* 235210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83267 | /* 235214 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83268 | /* 235218 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83269 | /* 235225 */ // (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) |
| 83270 | /* 235225 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP64_TO_INT16_IN_MEM), |
| 83271 | /* 235228 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83272 | /* 235232 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83273 | /* 235234 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83274 | /* 235237 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83275 | /* 235241 */ GIR_RootConstrainSelectedInstOperands, |
| 83276 | /* 235242 */ // GIR_Coverage, 876, |
| 83277 | /* 235242 */ GIR_EraseRootFromParent_Done, |
| 83278 | /* 235243 */ // Label 5472: @235243 |
| 83279 | /* 235243 */ GIM_Try, /*On fail goto*//*Label 5473*/ GIMT_Encode4(235288), // Rule ID 877 // |
| 83280 | /* 235248 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83281 | /* 235255 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83282 | /* 235259 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83283 | /* 235263 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83284 | /* 235270 */ // (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) |
| 83285 | /* 235270 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP64_TO_INT32_IN_MEM), |
| 83286 | /* 235273 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83287 | /* 235277 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83288 | /* 235279 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83289 | /* 235282 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83290 | /* 235286 */ GIR_RootConstrainSelectedInstOperands, |
| 83291 | /* 235287 */ // GIR_Coverage, 877, |
| 83292 | /* 235287 */ GIR_EraseRootFromParent_Done, |
| 83293 | /* 235288 */ // Label 5473: @235288 |
| 83294 | /* 235288 */ GIM_Try, /*On fail goto*//*Label 5474*/ GIMT_Encode4(235333), // Rule ID 878 // |
| 83295 | /* 235293 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83296 | /* 235300 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83297 | /* 235304 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83298 | /* 235308 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83299 | /* 235315 */ // (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) |
| 83300 | /* 235315 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP64_TO_INT64_IN_MEM), |
| 83301 | /* 235318 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83302 | /* 235322 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83303 | /* 235324 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83304 | /* 235327 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83305 | /* 235331 */ GIR_RootConstrainSelectedInstOperands, |
| 83306 | /* 235332 */ // GIR_Coverage, 878, |
| 83307 | /* 235332 */ GIR_EraseRootFromParent_Done, |
| 83308 | /* 235333 */ // Label 5474: @235333 |
| 83309 | /* 235333 */ GIM_Try, /*On fail goto*//*Label 5475*/ GIMT_Encode4(235381), // Rule ID 1110 // |
| 83310 | /* 235338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83311 | /* 235341 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83312 | /* 235348 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83313 | /* 235352 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83314 | /* 235356 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83315 | /* 235363 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i16mem>> => (ISTT_Fp16m64:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 83316 | /* 235363 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp16m64), |
| 83317 | /* 235366 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83318 | /* 235370 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83319 | /* 235372 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83320 | /* 235375 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83321 | /* 235379 */ GIR_RootConstrainSelectedInstOperands, |
| 83322 | /* 235380 */ // GIR_Coverage, 1110, |
| 83323 | /* 235380 */ GIR_EraseRootFromParent_Done, |
| 83324 | /* 235381 */ // Label 5475: @235381 |
| 83325 | /* 235381 */ GIM_Try, /*On fail goto*//*Label 5476*/ GIMT_Encode4(235429), // Rule ID 1111 // |
| 83326 | /* 235386 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83327 | /* 235389 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83328 | /* 235396 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83329 | /* 235400 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83330 | /* 235404 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83331 | /* 235411 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i32mem>> => (ISTT_Fp32m64:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 83332 | /* 235411 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp32m64), |
| 83333 | /* 235414 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83334 | /* 235418 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83335 | /* 235420 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83336 | /* 235423 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83337 | /* 235427 */ GIR_RootConstrainSelectedInstOperands, |
| 83338 | /* 235428 */ // GIR_Coverage, 1111, |
| 83339 | /* 235428 */ GIR_EraseRootFromParent_Done, |
| 83340 | /* 235429 */ // Label 5476: @235429 |
| 83341 | /* 235429 */ GIM_Try, /*On fail goto*//*Label 5477*/ GIMT_Encode4(235477), // Rule ID 1112 // |
| 83342 | /* 235434 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83343 | /* 235437 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83344 | /* 235444 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP64RegClassID), |
| 83345 | /* 235448 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83346 | /* 235452 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83347 | /* 235459 */ // (X86fp_to_mem RFP64:{ *:[f64] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i64mem>> => (ISTT_Fp64m64:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP64:{ *:[f64] }:$src) |
| 83348 | /* 235459 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp64m64), |
| 83349 | /* 235462 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83350 | /* 235466 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83351 | /* 235468 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83352 | /* 235471 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83353 | /* 235475 */ GIR_RootConstrainSelectedInstOperands, |
| 83354 | /* 235476 */ // GIR_Coverage, 1112, |
| 83355 | /* 235476 */ GIR_EraseRootFromParent_Done, |
| 83356 | /* 235477 */ // Label 5477: @235477 |
| 83357 | /* 235477 */ GIM_Reject, |
| 83358 | /* 235478 */ // Label 5464: @235478 |
| 83359 | /* 235478 */ GIM_Try, /*On fail goto*//*Label 5478*/ GIMT_Encode4(235523), // Rule ID 879 // |
| 83360 | /* 235483 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83361 | /* 235490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83362 | /* 235494 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83363 | /* 235498 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83364 | /* 235505 */ // (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) |
| 83365 | /* 235505 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP80_TO_INT16_IN_MEM), |
| 83366 | /* 235508 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83367 | /* 235512 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83368 | /* 235514 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83369 | /* 235517 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83370 | /* 235521 */ GIR_RootConstrainSelectedInstOperands, |
| 83371 | /* 235522 */ // GIR_Coverage, 879, |
| 83372 | /* 235522 */ GIR_EraseRootFromParent_Done, |
| 83373 | /* 235523 */ // Label 5478: @235523 |
| 83374 | /* 235523 */ GIM_Try, /*On fail goto*//*Label 5479*/ GIMT_Encode4(235568), // Rule ID 880 // |
| 83375 | /* 235528 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83376 | /* 235535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83377 | /* 235539 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83378 | /* 235543 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83379 | /* 235550 */ // (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) |
| 83380 | /* 235550 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP80_TO_INT32_IN_MEM), |
| 83381 | /* 235553 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83382 | /* 235557 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83383 | /* 235559 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83384 | /* 235562 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83385 | /* 235566 */ GIR_RootConstrainSelectedInstOperands, |
| 83386 | /* 235567 */ // GIR_Coverage, 880, |
| 83387 | /* 235567 */ GIR_EraseRootFromParent_Done, |
| 83388 | /* 235568 */ // Label 5479: @235568 |
| 83389 | /* 235568 */ GIM_Try, /*On fail goto*//*Label 5480*/ GIMT_Encode4(235613), // Rule ID 881 // |
| 83390 | /* 235573 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83391 | /* 235580 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83392 | /* 235584 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83393 | /* 235588 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83394 | /* 235595 */ // (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) |
| 83395 | /* 235595 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FP80_TO_INT64_IN_MEM), |
| 83396 | /* 235598 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83397 | /* 235602 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83398 | /* 235604 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::EFLAGS*/0, |
| 83399 | /* 235607 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83400 | /* 235611 */ GIR_RootConstrainSelectedInstOperands, |
| 83401 | /* 235612 */ // GIR_Coverage, 881, |
| 83402 | /* 235612 */ GIR_EraseRootFromParent_Done, |
| 83403 | /* 235613 */ // Label 5480: @235613 |
| 83404 | /* 235613 */ GIM_Try, /*On fail goto*//*Label 5481*/ GIMT_Encode4(235661), // Rule ID 1113 // |
| 83405 | /* 235618 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83406 | /* 235621 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 83407 | /* 235628 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83408 | /* 235632 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83409 | /* 235636 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83410 | /* 235643 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i16mem>> => (ISTT_Fp16m80:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 83411 | /* 235643 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp16m80), |
| 83412 | /* 235646 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83413 | /* 235650 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83414 | /* 235652 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83415 | /* 235655 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83416 | /* 235659 */ GIR_RootConstrainSelectedInstOperands, |
| 83417 | /* 235660 */ // GIR_Coverage, 1113, |
| 83418 | /* 235660 */ GIR_EraseRootFromParent_Done, |
| 83419 | /* 235661 */ // Label 5481: @235661 |
| 83420 | /* 235661 */ GIM_Try, /*On fail goto*//*Label 5482*/ GIMT_Encode4(235709), // Rule ID 1114 // |
| 83421 | /* 235666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83422 | /* 235669 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 83423 | /* 235676 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83424 | /* 235680 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83425 | /* 235684 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83426 | /* 235691 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i32mem>> => (ISTT_Fp32m80:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 83427 | /* 235691 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp32m80), |
| 83428 | /* 235694 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83429 | /* 235698 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83430 | /* 235700 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83431 | /* 235703 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83432 | /* 235707 */ GIR_RootConstrainSelectedInstOperands, |
| 83433 | /* 235708 */ // GIR_Coverage, 1114, |
| 83434 | /* 235708 */ GIR_EraseRootFromParent_Done, |
| 83435 | /* 235709 */ // Label 5482: @235709 |
| 83436 | /* 235709 */ GIM_Try, /*On fail goto*//*Label 5483*/ GIMT_Encode4(235757), // Rule ID 1115 // |
| 83437 | /* 235714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasSSE3), |
| 83438 | /* 235717 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 83439 | /* 235724 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(X86::RFP80RegClassID), |
| 83440 | /* 235728 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 83441 | /* 235732 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/1, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83442 | /* 235739 */ // (X86fp_to_mem RFP80:{ *:[f80] }:$src, addr:{ *:[iPTR] }:$op)<<P:Predicate_X86fp_to_i64mem>> => (ISTT_Fp64m80:{ *:[i16] } addr:{ *:[iPTR] }:$op, RFP80:{ *:[f80] }:$src) |
| 83443 | /* 235739 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::ISTT_Fp64m80), |
| 83444 | /* 235742 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // op |
| 83445 | /* 235746 */ GIR_RootToRootCopy, /*OpIdx*/0, // src |
| 83446 | /* 235748 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83447 | /* 235751 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83448 | /* 235755 */ GIR_RootConstrainSelectedInstOperands, |
| 83449 | /* 235756 */ // GIR_Coverage, 1115, |
| 83450 | /* 235756 */ GIR_EraseRootFromParent_Done, |
| 83451 | /* 235757 */ // Label 5483: @235757 |
| 83452 | /* 235757 */ GIM_Reject, |
| 83453 | /* 235758 */ // Label 5465: @235758 |
| 83454 | /* 235758 */ GIM_Reject, |
| 83455 | /* 235759 */ // Label 80: @235759 |
| 83456 | /* 235759 */ GIM_Try, /*On fail goto*//*Label 5484*/ GIMT_Encode4(235794), // Rule ID 1132 // |
| 83457 | /* 235764 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 83458 | /* 235768 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83459 | /* 235775 */ // (X86fp_cwd_set16 addr:{ *:[iPTR] }:$dst) => (FLDCW16m:{ *:[i16] } addr:{ *:[iPTR] }:$dst) |
| 83460 | /* 235775 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FLDCW16m), |
| 83461 | /* 235778 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83462 | /* 235782 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83463 | /* 235785 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPCW*/1, |
| 83464 | /* 235788 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83465 | /* 235792 */ GIR_RootConstrainSelectedInstOperands, |
| 83466 | /* 235793 */ // GIR_Coverage, 1132, |
| 83467 | /* 235793 */ GIR_EraseRootFromParent_Done, |
| 83468 | /* 235794 */ // Label 5484: @235794 |
| 83469 | /* 235794 */ GIM_Reject, |
| 83470 | /* 235795 */ // Label 81: @235795 |
| 83471 | /* 235795 */ GIM_Try, /*On fail goto*//*Label 5485*/ GIMT_Encode4(235827), // Rule ID 1131 // |
| 83472 | /* 235800 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/0, /*SizeInBits*/0, |
| 83473 | /* 235804 */ GIM_CheckComplexPattern, /*MI*/0, /*Op*/0, /*Renderer*/GIMT_Encode2(0), GIMT_Encode2(GICP_gi_addr), |
| 83474 | /* 235811 */ // (X86fp_cwd_get16 addr:{ *:[iPTR] }:$dst) => (FNSTCW16m:{ *:[i16] } addr:{ *:[iPTR] }:$dst) |
| 83475 | /* 235811 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(X86::FNSTCW16m), |
| 83476 | /* 235814 */ GIR_ComplexRenderer, /*InsnID*/0, /*RendererID*/GIMT_Encode2(0), // dst |
| 83477 | /* 235818 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for X86::FPSW*/0, |
| 83478 | /* 235821 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 83479 | /* 235825 */ GIR_RootConstrainSelectedInstOperands, |
| 83480 | /* 235826 */ // GIR_Coverage, 1131, |
| 83481 | /* 235826 */ GIR_EraseRootFromParent_Done, |
| 83482 | /* 235827 */ // Label 5485: @235827 |
| 83483 | /* 235827 */ GIM_Reject, |
| 83484 | /* 235828 */ // Label 82: @235828 |
| 83485 | /* 235828 */ GIM_Reject, |
| 83486 | /* 235829 */ }; // Size: 235829 bytes |
| 83487 | return MatchTable0; |
| 83488 | } |
| 83489 | #undef GIMT_Encode2 |
| 83490 | #undef GIMT_Encode4 |
| 83491 | #undef GIMT_Encode8 |
| 83492 | |
| 83493 | |
| 83494 | #endif // GET_GLOBALISEL_IMPL |
| 83495 | |
| 83496 | #ifdef GET_GLOBALISEL_PREDICATES_DECL |
| 83497 | |
| 83498 | PredicateBitset AvailableModuleFeatures; |
| 83499 | mutable PredicateBitset AvailableFunctionFeatures; |
| 83500 | PredicateBitset getAvailableFeatures() const { |
| 83501 | return AvailableModuleFeatures | AvailableFunctionFeatures; |
| 83502 | } |
| 83503 | PredicateBitset |
| 83504 | computeAvailableModuleFeatures(const X86Subtarget *Subtarget) const; |
| 83505 | PredicateBitset |
| 83506 | computeAvailableFunctionFeatures(const X86Subtarget *Subtarget, |
| 83507 | const MachineFunction *MF) const; |
| 83508 | void setupGeneratedPerFunctionState(MachineFunction &MF) override; |
| 83509 | |
| 83510 | #endif // GET_GLOBALISEL_PREDICATES_DECL |
| 83511 | |
| 83512 | #ifdef GET_GLOBALISEL_PREDICATES_INIT |
| 83513 | |
| 83514 | AvailableModuleFeatures(computeAvailableModuleFeatures(&STI)), |
| 83515 | AvailableFunctionFeatures() |
| 83516 | |
| 83517 | #endif // GET_GLOBALISEL_PREDICATES_INIT |
| 83518 | |
| 83519 | |