Lines Matching refs:InsInstrs
96 unsigned getDepth(SmallVectorImpl<MachineInstr *> &InsInstrs,
105 SmallVectorImpl<MachineInstr *> &InsInstrs,
110 SmallVectorImpl<MachineInstr *> &InsInstrs,
115 SmallVectorImpl<MachineInstr *> &InsInstrs,
121 SmallVectorImpl<MachineInstr *> &InsInstrs,
210 MachineCombiner::getDepth(SmallVectorImpl<MachineInstr *> &InsInstrs, in getDepth() argument
218 for (auto *InstrPtr : InsInstrs) { // for each Use in getDepth()
231 MachineInstr *DefInstr = InsInstrs[II->second]; in getDepth()
255 unsigned NewRootIdx = InsInstrs.size() - 1; in getDepth()
334 MachineInstr &MI, SmallVectorImpl<MachineInstr *> &InsInstrs, in getLatenciesForInstrSequences() argument
337 assert(!InsInstrs.empty() && "Only support sequences that insert instrs."); in getLatenciesForInstrSequences()
340 MachineInstr *NewRoot = InsInstrs.back(); in getLatenciesForInstrSequences()
341 for (unsigned i = 0; i < InsInstrs.size() - 1; i++) in getLatenciesForInstrSequences()
342 NewRootLatency += TSchedModel.computeInstrLatency(InsInstrs[i]); in getLatenciesForInstrSequences()
354 SmallVectorImpl<MachineInstr *> &InsInstrs, in reduceRegisterPressure() argument
372 SmallVectorImpl<MachineInstr *> &InsInstrs, in improvesCriticalPathLen() argument
379 getDepth(InsInstrs, InstrIdxForVirtReg, BlockTrace, *MBB); in improvesCriticalPathLen()
406 getLatenciesForInstrSequences(*Root, InsInstrs, DelInstrs, BlockTrace); in improvesCriticalPathLen()
408 NewRootLatency = TSchedModel.computeInstrLatency(InsInstrs.back()); in improvesCriticalPathLen()
446 SmallVectorImpl<MachineInstr *> &InsInstrs, in preservesResourceLen() argument
462 instr2instrSC(InsInstrs, InsInstrsSC); in preservesResourceLen()
501 SmallVectorImpl<MachineInstr *> &InsInstrs, in insertDeleteInstructions() argument
513 TII->finalizeInsInstrs(MI, Pattern, InsInstrs); in insertDeleteInstructions()
515 for (auto *InstrPtr : InsInstrs) in insertDeleteInstructions()
530 for (auto *InstrPtr : InsInstrs) in insertDeleteInstructions()
546 SmallVector<MachineInstr *, 16> InsInstrs; in verifyPatternOrder() local
549 TII->genAlternativeCodeSequence(Root, P, InsInstrs, DelInstrs, in verifyPatternOrder()
554 if (InsInstrs.empty() || !TSchedModel.hasInstrSchedModelOrItineraries()) in verifyPatternOrder()
559 Root, InsInstrs, DelInstrs, TraceEnsemble->getTrace(MBB)); in verifyPatternOrder()
631 SmallVector<MachineInstr *, 16> InsInstrs; in combineInstructions() local
634 TII->genAlternativeCodeSequence(MI, P, InsInstrs, DelInstrs, in combineInstructions()
639 if (InsInstrs.empty()) in combineInstructions()
649 for (auto const *InstrPtr : InsInstrs) in combineInstructions()
668 if (reduceRegisterPressure(MI, MBB, InsInstrs, DelInstrs, P)) { in combineInstructions()
670 insertDeleteInstructions(MBB, MI, InsInstrs, DelInstrs, TraceEnsemble, in combineInstructions()
683 insertDeleteInstructions(MBB, MI, InsInstrs, DelInstrs, TraceEnsemble, in combineInstructions()
688 } else if (OptForSize && InsInstrs.size() < DelInstrs.size()) { in combineInstructions()
690 << InsInstrs.size() << " < " in combineInstructions()
692 insertDeleteInstructions(MBB, MI, InsInstrs, DelInstrs, TraceEnsemble, in combineInstructions()
705 if (improvesCriticalPathLen(MBB, &MI, BlockTrace, InsInstrs, DelInstrs, in combineInstructions()
708 preservesResourceLen(MBB, BlockTrace, InsInstrs, DelInstrs)) { in combineInstructions()
715 insertDeleteInstructions(MBB, MI, InsInstrs, DelInstrs, TraceEnsemble, in combineInstructions()
725 for (auto *InstrPtr : InsInstrs) in combineInstructions()