Lines Matching refs:getOpcode

154   if (MI.getOpcode() != TargetOpcode::COPY)  in matchCombineCopy()
179 assert(MI.getOpcode() == TargetOpcode::G_CONCAT_VECTORS && in matchCombineConcatVectors()
191 switch (Def->getOpcode()) { in matchCombineConcatVectors()
255 assert(MI.getOpcode() == TargetOpcode::G_SHUFFLE_VECTOR && in matchCombineShuffleVector()
480 if (UseMI.getOpcode() == TargetOpcode::G_SEXT || in matchCombineExtendingLoads()
481 UseMI.getOpcode() == TargetOpcode::G_ZEXT || in matchCombineExtendingLoads()
482 (UseMI.getOpcode() == TargetOpcode::G_ANYEXT)) { in matchCombineExtendingLoads()
485 if (MMO.isAtomic() && UseMI.getOpcode() != TargetOpcode::G_ANYEXT) in matchCombineExtendingLoads()
495 if (LI->getAction({LoadMI->getOpcode(), {UseTy, SrcTy}, {MMDesc}}) in matchCombineExtendingLoads()
501 UseMI.getOpcode(), &UseMI); in matchCombineExtendingLoads()
561 if (UseMI->getOpcode() == Preferred.ExtendOpcode || in applyCombineExtendingLoads()
562 UseMI->getOpcode() == TargetOpcode::G_ANYEXT) { in applyCombineExtendingLoads()
655 assert(MI.getOpcode() == TargetOpcode::G_SEXT_INREG); in matchSextTruncSextLoad()
681 assert(MI.getOpcode() == TargetOpcode::G_SEXT_INREG); in applySextTruncSextLoad()
689 assert(MI.getOpcode() == TargetOpcode::G_SEXT_INREG); in matchSextInRegOfLoad()
720 assert(MI.getOpcode() == TargetOpcode::G_SEXT_INREG); in applySextInRegOfLoad()
748 unsigned Opcode = MI.getOpcode(); in findPostIndexCandidate()
755 if (BaseDef && BaseDef->getOpcode() == TargetOpcode::G_FRAME_INDEX) in findPostIndexCandidate()
761 if (Use.getOpcode() != TargetOpcode::G_PTR_ADD) in findPostIndexCandidate()
816 unsigned Opcode = MI.getOpcode(); in findPreIndexCandidate()
838 if (BaseDef->getOpcode() == TargetOpcode::G_FRAME_INDEX) { in findPreIndexCandidate()
843 if (MI.getOpcode() == TargetOpcode::G_STORE) { in findPreIndexCandidate()
881 unsigned Opcode = MI.getOpcode(); in matchCombineIndexedLoadStore()
905 unsigned Opcode = MI.getOpcode(); in applyCombineIndexedLoadStore()
945 unsigned Opcode = MI.getOpcode(); in matchCombineDivRem()
994 ((IsDiv && UseMI.getOpcode() == RemOpcode) || in matchCombineDivRem()
995 (!IsDiv && UseMI.getOpcode() == DivOpcode)) && in matchCombineDivRem()
1007 unsigned Opcode = MI.getOpcode(); in applyCombineDivRem()
1039 assert(MI.getOpcode() == TargetOpcode::G_BR); in matchOptBrCondByInvertingCond()
1061 if (BrCond->getOpcode() != TargetOpcode::G_BRCOND) in matchOptBrCondByInvertingCond()
1325 assert(MI.getOpcode() == TargetOpcode::G_MEMCPY_INLINE); in tryEmitMemcpyInline()
1359 assert(MI.getOpcode() == TargetOpcode::G_MEMCPY_INLINE); in tryEmitMemcpyInline()
1575 const unsigned Opc = MI.getOpcode(); in tryCombineMemCpyFamily()
1681 Cst = constantFoldFpUnary(MI.getOpcode(), DstTy, SrcReg, MRI); in matchCombineConstantFoldFpUnary()
1704 if (MI.getOpcode() != TargetOpcode::G_PTR_ADD) in matchPtrAddImmedChain()
1721 if (!Add2Def || Add2Def->getOpcode() != TargetOpcode::G_PTR_ADD) in matchPtrAddImmedChain()
1738 assert(MI.getOpcode() == TargetOpcode::G_PTR_ADD && "Expected G_PTR_ADD"); in applyPtrAddImmedChain()
1757 unsigned Opcode = MI.getOpcode(); in matchShiftImmedChain()
1770 if (Shl2Def->getOpcode() != Opcode) in matchShiftImmedChain()
1795 unsigned Opcode = MI.getOpcode(); in applyShiftImmedChain()
1838 unsigned ShiftOpcode = MI.getOpcode(); in matchShiftOfShiftedLogic()
1852 unsigned LogicOpcode = LogicMI->getOpcode(); in matchShiftOfShiftedLogic()
1867 if (MI->getOpcode() != ShiftOpcode || in matchShiftOfShiftedLogic()
1909 unsigned Opcode = MI.getOpcode(); in applyShiftOfShiftedLogic()
1932 Builder.buildInstr(MatchInfo.Logic->getOpcode(), {Dest}, {Shift1, Shift2}); in applyShiftOfShiftedLogic()
1943 assert(MI.getOpcode() == TargetOpcode::G_MUL && "Expected a G_MUL"); in matchCombineMulToShl()
1955 assert(MI.getOpcode() == TargetOpcode::G_MUL && "Expected a G_MUL"); in applyCombineMulToShl()
1968 assert(MI.getOpcode() == TargetOpcode::G_SHL && KB); in matchCombineShlOfExtend()
2046 assert(MI.getOpcode() == TargetOpcode::G_UNMERGE_VALUES && in matchCombineUnmergeMergeToPlainValues()
2052 if (SrcInstr->getOpcode() != TargetOpcode::G_MERGE_VALUES && in matchCombineUnmergeMergeToPlainValues()
2053 SrcInstr->getOpcode() != TargetOpcode::G_BUILD_VECTOR && in matchCombineUnmergeMergeToPlainValues()
2054 SrcInstr->getOpcode() != TargetOpcode::G_CONCAT_VECTORS) in matchCombineUnmergeMergeToPlainValues()
2073 assert(MI.getOpcode() == TargetOpcode::G_UNMERGE_VALUES && in applyCombineUnmergeMergeToPlainValues()
2099 if (SrcInstr->getOpcode() != TargetOpcode::G_CONSTANT && in matchCombineUnmergeConstant()
2100 SrcInstr->getOpcode() != TargetOpcode::G_FCONSTANT) in matchCombineUnmergeConstant()
2104 APInt Val = SrcInstr->getOpcode() == TargetOpcode::G_CONSTANT in matchCombineUnmergeConstant()
2121 assert(MI.getOpcode() == TargetOpcode::G_UNMERGE_VALUES && in applyCombineUnmergeConstant()
2136 assert(MI.getOpcode() == TargetOpcode::G_UNMERGE_VALUES && in matchCombineUnmergeWithDeadLanesToTrunc()
2168 assert(MI.getOpcode() == TargetOpcode::G_UNMERGE_VALUES && in matchCombineUnmergeZExtToZExt()
2194 assert(MI.getOpcode() == TargetOpcode::G_UNMERGE_VALUES && in applyCombineUnmergeZExtToZExt()
2201 assert(ZExtInstr && ZExtInstr->getOpcode() == TargetOpcode::G_ZEXT && in applyCombineUnmergeZExtToZExt()
2230 assert((MI.getOpcode() == TargetOpcode::G_SHL || in matchCombineShiftToUnmerge()
2231 MI.getOpcode() == TargetOpcode::G_LSHR || in matchCombineShiftToUnmerge()
2232 MI.getOpcode() == TargetOpcode::G_ASHR) && "Expected a shift"); in matchCombineShiftToUnmerge()
2267 if (MI.getOpcode() == TargetOpcode::G_LSHR) { in applyCombineShiftToUnmerge()
2282 } else if (MI.getOpcode() == TargetOpcode::G_SHL) { in applyCombineShiftToUnmerge()
2296 assert(MI.getOpcode() == TargetOpcode::G_ASHR); in applyCombineShiftToUnmerge()
2337 assert(MI.getOpcode() == TargetOpcode::G_INTTOPTR && "Expected a G_INTTOPTR"); in matchCombineI2PToP2I()
2346 assert(MI.getOpcode() == TargetOpcode::G_INTTOPTR && "Expected a G_INTTOPTR"); in applyCombineI2PToP2I()
2354 assert(MI.getOpcode() == TargetOpcode::G_PTRTOINT && "Expected a G_PTRTOINT"); in matchCombineP2IToI2P()
2360 assert(MI.getOpcode() == TargetOpcode::G_PTRTOINT && "Expected a G_PTRTOINT"); in applyCombineP2IToI2P()
2369 assert(MI.getOpcode() == TargetOpcode::G_ADD); in matchCombineAddP2IToPtrAdd()
2413 assert(MI.getOpcode() == TargetOpcode::G_PTR_ADD && "Expected a G_PTR_ADD"); in matchCombineConstPtrAddToI2P()
2431 assert(MI.getOpcode() == TargetOpcode::G_PTR_ADD && "Expected a G_PTR_ADD"); in applyCombineConstPtrAddToI2P()
2440 assert(MI.getOpcode() == TargetOpcode::G_ANYEXT && "Expected a G_ANYEXT"); in matchCombineAnyExtTrunc()
2449 assert(MI.getOpcode() == TargetOpcode::G_ZEXT && "Expected a G_ZEXT"); in matchCombineZextTrunc()
2464 assert((MI.getOpcode() == TargetOpcode::G_ANYEXT || in matchCombineExtOfExt()
2465 MI.getOpcode() == TargetOpcode::G_SEXT || in matchCombineExtOfExt()
2466 MI.getOpcode() == TargetOpcode::G_ZEXT) && in matchCombineExtOfExt()
2471 unsigned Opc = MI.getOpcode(); in matchCombineExtOfExt()
2472 unsigned SrcOpc = SrcMI->getOpcode(); in matchCombineExtOfExt()
2485 assert((MI.getOpcode() == TargetOpcode::G_ANYEXT || in applyCombineExtOfExt()
2486 MI.getOpcode() == TargetOpcode::G_SEXT || in applyCombineExtOfExt()
2487 MI.getOpcode() == TargetOpcode::G_ZEXT) && in applyCombineExtOfExt()
2494 if (MI.getOpcode() == SrcExtOp) { in applyCombineExtOfExt()
2504 if (MI.getOpcode() == TargetOpcode::G_ANYEXT || in applyCombineExtOfExt()
2505 (MI.getOpcode() == TargetOpcode::G_SEXT && in applyCombineExtOfExt()
2515 assert(MI.getOpcode() == TargetOpcode::G_MUL && "Expected a G_MUL"); in applyCombineMulByNegativeOne()
2527 assert(MI.getOpcode() == TargetOpcode::G_FNEG && "Expected a G_FNEG"); in matchCombineFNegOfFNeg()
2533 assert(MI.getOpcode() == TargetOpcode::G_FABS && "Expected a G_FABS"); in matchCombineFAbsOfFAbs()
2541 assert(MI.getOpcode() == TargetOpcode::G_TRUNC && "Expected a G_TRUNC"); in matchCombineTruncOfExt()
2544 unsigned SrcOpc = SrcMI->getOpcode(); in matchCombineTruncOfExt()
2555 assert(MI.getOpcode() == TargetOpcode::G_TRUNC && "Expected a G_TRUNC"); in applyCombineTruncOfExt()
2576 assert(MI.getOpcode() == TargetOpcode::G_TRUNC && "Expected a G_TRUNC"); in matchCombineTruncOfShl()
2600 assert(MI.getOpcode() == TargetOpcode::G_TRUNC && "Expected a G_TRUNC"); in applyCombineTruncOfShl()
2629 assert(MI.getOpcode() == TargetOpcode::G_SHUFFLE_VECTOR); in matchUndefShuffleVectorMask()
2635 assert(MI.getOpcode() == TargetOpcode::G_STORE); in matchUndefStore()
2641 assert(MI.getOpcode() == TargetOpcode::G_SELECT); in matchUndefSelectCmp()
2647 assert(MI.getOpcode() == TargetOpcode::G_SELECT); in matchConstantSelectCmp()
2763 assert(MI.getOpcode() == TargetOpcode::G_SELECT); in matchSelectSameVal()
2848 assert(MI.getOpcode() == TargetOpcode::G_INSERT_VECTOR_ELT && in matchCombineInsertVecElts()
2856 if (MRI.hasOneUse(DstReg) && MRI.use_instr_begin(DstReg)->getOpcode() == in matchCombineInsertVecElts()
2874 if (CurrInst->getOpcode() == TargetOpcode::G_INSERT_VECTOR_ELT) in matchCombineInsertVecElts()
2876 if (TmpInst->getOpcode() == TargetOpcode::G_BUILD_VECTOR) { in matchCombineInsertVecElts()
2884 return TmpInst->getOpcode() == TargetOpcode::G_IMPLICIT_DEF; in matchCombineInsertVecElts()
2923 unsigned LogicOpcode = MI.getOpcode(); in matchHoistLogicOpWithSameOpcodeHands()
2941 unsigned HandOpcode = LeftHandInst->getOpcode(); in matchHoistLogicOpWithSameOpcodeHands()
2942 if (HandOpcode != RightHandInst->getOpcode()) in matchHoistLogicOpWithSameOpcodeHands()
3023 assert(MI.getOpcode() == TargetOpcode::G_ASHR); in matchAshrShlToSextInreg()
3041 assert(MI.getOpcode() == TargetOpcode::G_ASHR); in applyAshShlToSextInreg()
3054 assert(MI.getOpcode() == TargetOpcode::G_AND); in matchOverlappingAnd()
3095 assert(MI.getOpcode() == TargetOpcode::G_AND); in matchRedundantAnd()
3141 assert(MI.getOpcode() == TargetOpcode::G_OR); in matchRedundantOr()
3196 assert(MI.getOpcode() == TargetOpcode::G_XOR); in matchNotCmp()
3221 switch (Def->getOpcode()) { in matchNotCmp()
3278 switch (Def->getOpcode()) { in applyNotCmp()
3306 assert(MI.getOpcode() == TargetOpcode::G_XOR); in matchXorOfAndWithSameReg()
3367 assert(MI.getOpcode() == TargetOpcode::G_PTR_ADD); in applyPtrAddZero()
3390 assert(Root->getOpcode() == TargetOpcode::G_OR && "Expected G_OR only!"); in findCandidatesForLoadOrCombine()
3622 assert(MI.getOpcode() == TargetOpcode::G_OR); in matchLoadOrCombine()
3737 assert(MI.getOpcode() == TargetOpcode::G_PHI); in matchExtendThroughPhis()
3750 switch (ExtMI->getOpcode()) { in matchExtendThroughPhis()
3770 switch (DefMI->getOpcode()) { in matchExtendThroughPhis()
3792 assert(MI.getOpcode() == TargetOpcode::G_PHI); in applyExtendThroughPhis()
3814 auto NewExt = Builder.buildExtOrTrunc(ExtMI->getOpcode(), ExtTy, in applyExtendThroughPhis()
3838 assert(MI.getOpcode() == TargetOpcode::G_EXTRACT_VECTOR_ELT); in matchExtractVecEltBuildVec()
3894 assert(MI.getOpcode() == TargetOpcode::G_BUILD_VECTOR); in matchExtractAllEltsFromBuildVector()
3918 if (II.getOpcode() != TargetOpcode::G_EXTRACT_VECTOR_ELT) in matchExtractAllEltsFromBuildVector()
3937 assert(MI.getOpcode() == TargetOpcode::G_BUILD_VECTOR); in applyExtractAllEltsFromBuildVector()
3961 unsigned Opc = MI.getOpcode(); in matchFunnelShiftToRotate()
3973 unsigned Opc = MI.getOpcode(); in applyFunnelShiftToRotate()
3985 assert(MI.getOpcode() == TargetOpcode::G_ROTL || in matchRotateOutOfRange()
3986 MI.getOpcode() == TargetOpcode::G_ROTR); in matchRotateOutOfRange()
4000 assert(MI.getOpcode() == TargetOpcode::G_ROTL || in applyRotateOutOfRange()
4001 MI.getOpcode() == TargetOpcode::G_ROTR); in applyRotateOutOfRange()
4016 assert(MI.getOpcode() == TargetOpcode::G_ICMP); in matchICmpToTrueFalseKnownBits()
4070 assert(MI.getOpcode() == TargetOpcode::G_SEXT_INREG); in matchBitfieldExtractFromSExtInReg()
4099 assert(MI.getOpcode() == TargetOpcode::G_AND); in matchBitfieldExtractFromAnd()
4135 assert(PtrAdd.getOpcode() == TargetOpcode::G_PTR_ADD); in reassociationCanBreakAddressingModePattern()
4162 unsigned ConvUseOpc = ConvUseMI->getOpcode(); in reassociationCanBreakAddressingModePattern()
4169 ConvUseOpc = ConvUseMI->getOpcode(); in reassociationCanBreakAddressingModePattern()
4203 assert(MI.getOpcode() == TargetOpcode::G_PTR_ADD); in matchReassocPtrAdd()
4217 if (LHS->getOpcode() != TargetOpcode::G_PTR_ADD) { in matchReassocPtrAdd()
4219 if (RHS->getOpcode() != TargetOpcode::G_ADD) in matchReassocPtrAdd()
4260 auto MaybeCst = ConstantFoldBinOp(MI.getOpcode(), Op1, Op2, MRI); in matchConstantFold()