Lines Matching full:height

261 // Check if height resources for MBB are valid and return the TBI.
401 unsigned Height = SuccTBI->InstrHeight; in pickTraceSucc() local
402 if (!Best || Height < BestHeight) { in pickTraceSucc()
404 BestHeight = Height; in pickTraceSucc()
563 // The trace leaving I is now known, compute the height resources. in computeTrace()
574 // Invalidate height resources of blocks above MBB. in invalidate()
581 << getName() << " height.\n"); in invalidate()
651 "Trace is broken, height should have been invalidated."); in verify()
665 // Compute the depth and height of each instruction based on data dependencies
795 /// 1. The maximum height+depth over all instructions in the trace center block.
806 assert(TBI.HasValidInstrHeights && "Missing height info"); in computeCrossBlockCriticalPath()
816 unsigned Len = LIR.Height + Cycles[DefMI].Depth; in computeCrossBlockCriticalPath()
854 TBI.CriticalPath = std::max(TBI.CriticalPath, Cycle + MICycles.Height); in updateDepth()
931 // Return the issue height of MI after considering any live regunits.
932 // Height is the issue height computed from virtual register dependencies alone.
933 static unsigned updatePhysDepsUpwards(const MachineInstr &MI, unsigned Height, in updatePhysDepsUpwards() argument
951 // update MI Height to consider the physreg dependencies. in updatePhysDepsUpwards()
963 Height = std::max(Height, DepHeight); in updatePhysDepsUpwards()
969 // Now we know the height of MI. Update any regunits read. in updatePhysDepsUpwards()
974 // Set the height to the highest reader of the unit. in updatePhysDepsUpwards()
975 if (LRU.Cycle <= Height && LRU.MI != &MI) { in updatePhysDepsUpwards()
976 LRU.Cycle = Height; in updatePhysDepsUpwards()
983 return Height; in updatePhysDepsUpwards()
988 // Push the height of DefMI upwards if required to match UseMI.
994 // Adjust height by Dep.DefMI latency. in pushDepHeight()
999 // Update Heights[DefMI] to be the maximum height seen. in pushDepHeight()
1006 // DefMI has been pushed before. Give it the max height. in pushDepHeight()
1028 // Just add the register. The height will be updated later. in addLiveIns()
1052 // required by deeper trace instructions. Map MI -> height required so far. in computeInstrHeights()
1068 unsigned &Height = Heights[MTM.MRI->getVRegDef(LI.Reg)]; in computeInstrHeights() local
1069 if (Height < LI.Height) in computeInstrHeights()
1070 Height = LI.Height; in computeInstrHeights()
1074 RegUnits[LI.Reg.id()].Cycle = LI.Height; in computeInstrHeights()
1104 // that purpose, pretend that all the loop header PHIs have height 0. in computeInstrHeights()
1118 unsigned Height = TBI.Succ ? Cycles.lookup(&PHI).Height : 0; in computeInstrHeights() local
1119 LLVM_DEBUG(dbgs() << "pred\t" << Height << '\t' << PHI); in computeInstrHeights()
1120 if (pushDepHeight(Deps.front(), PHI, Height, Heights, MTM.SchedModel, in computeInstrHeights()
1129 // Find the MI height as determined by virtual register uses in the in computeInstrHeights()
1144 // There may also be regunit dependencies to include in the height. in computeInstrHeights()
1149 // Update the required height of any virtual registers read by MI. in computeInstrHeights()
1155 MICycles.Height = Cycle; in computeInstrHeights()
1166 // height because the final height isn't known until now. in computeInstrHeights()
1170 LIR.Height = Heights.lookup(DefMI); in computeInstrHeights()
1171 LLVM_DEBUG(dbgs() << ' ' << printReg(LIR.Reg) << '@' << LIR.Height); in computeInstrHeights()
1210 return getCriticalPath() - (Cyc.Depth + Cyc.Height); in getInstrSlack()
1344 OS << "height=" << InstrHeight; in print()
1353 OS << "height invalid"; in print()