/openbsd/gnu/llvm/llvm/include/llvm/CodeGen/ |
H A D | MachineLoopInfo.h | 41 class MachineLoop; variable 44 class MachineLoop : public LoopBase<MachineBasicBlock, MachineLoop> { 80 explicit MachineLoop(MachineBasicBlock *MBB) in MachineLoop() function 83 MachineLoop() = default; 92 LoopInfoBase<MachineBasicBlock, MachineLoop> LI; 166 inline void changeTopLevelLoop(MachineLoop *OldLoop, MachineLoop *NewLoop) { in changeTopLevelLoop() 171 inline void addTopLevelLoop(MachineLoop *New) { in addTopLevelLoop() 184 template <> struct GraphTraits<const MachineLoop*> { 185 using NodeRef = const MachineLoop *; 193 template <> struct GraphTraits<MachineLoop*> { [all …]
|
H A D | ModuloSchedule.h | 72 class MachineLoop; variable 82 MachineLoop *Loop; 106 ModuloSchedule(MachineFunction &MF, MachineLoop *Loop, in ModuloSchedule() 119 MachineLoop *getLoop() const { return Loop; } in getLoop()
|
H A D | MachinePipeliner.h | 106 bool canPipelineLoop(MachineLoop &L); 107 bool scheduleLoop(MachineLoop &L); 108 bool swingModuloScheduler(MachineLoop &L); 109 void setPragmaPipelineOptions(MachineLoop &L); 122 MachineLoop &Loop; 203 SwingSchedulerDAG(MachinePipeliner &P, MachineLoop &L, LiveIntervals &lis, in SwingSchedulerDAG()
|
H A D | MachineTraceMetrics.h | 62 class MachineLoop; variable 344 const MachineLoop *getLoopFor(const MachineBasicBlock*) const;
|
H A D | MachineRegionInfo.h | 41 using LoopT = MachineLoop;
|
/openbsd/gnu/llvm/llvm/lib/CodeGen/ |
H A D | MachineLoopInfo.cpp | 30 template class llvm::LoopBase<MachineBasicBlock, MachineLoop>; 31 template class llvm::LoopInfoBase<MachineBasicBlock, MachineLoop>; 61 MachineBasicBlock *MachineLoop::getTopBlock() { in getTopBlock() 76 MachineBasicBlock *MachineLoop::getBottomBlock() { in getBottomBlock() 91 MachineBasicBlock *MachineLoop::findLoopControlBlock() { in findLoopControlBlock() 101 DebugLoc MachineLoop::getStartLoc() const { in getStartLoc() 118 MachineLoopInfo::findLoopPreheader(MachineLoop *L, bool SpeculativePreheader, in findLoopPreheader() 146 MachineLoop *T = getLoopFor(S); in findLoopPreheader() 154 bool MachineLoop::isLoopInvariant(MachineInstr &I) const { in isLoopInvariant() 211 LLVM_DUMP_METHOD void MachineLoop::dump() const { in dump()
|
H A D | MachineTraceMetrics.cpp | 167 const MachineLoop* 303 static bool isExitingLoop(const MachineLoop *From, const MachineLoop *To) { in isExitingLoop() 328 const MachineLoop *CurLoop = getLoopFor(MBB); in pickTracePred() 356 const MachineLoop *CurLoop = getLoopFor(MBB); in pickTraceSucc() 459 if (const MachineLoop *FromLoop = LB.Loops->getLoopFor(*From)) { in insertEdge() 596 const MachineLoop *Loop = getLoopFor(MBB); in verify() 604 const MachineLoop *Loop = getLoopFor(MBB); in verify() 605 const MachineLoop *SuccLoop = getLoopFor(TBI.Succ); in verify() 1068 if (const MachineLoop *Loop = getLoopFor(MBB)) in computeInstrHeights()
|
H A D | MachineBlockPlacement.cpp | 533 const MachineLoop &L, const BlockFilterSet &LoopBlockSet, 535 BlockFilterSet collectLoopBlockSet(const MachineLoop &L); 536 void buildLoopChains(const MachineLoop &L); 541 BlockChain &LoopChain, const MachineLoop &L, 2077 const MachineLoop &L, in findBestLoopTopHelper() 2144 MachineBlockPlacement::findBestLoopTop(const MachineLoop &L, in findBestLoopTop() 2236 if (MachineLoop *ExitLoop = MLI->getLoopFor(Succ)) { in findBestLoopExit() 2420 BlockChain &LoopChain, const MachineLoop &L, in rotateLoopWithProfile() 2606 for (const MachineLoop *InnerLoop : L) in buildLoopChains() 2732 for (MachineLoop *L : *MLI) in buildCFGChains() [all …]
|
H A D | MachineLICM.cpp | 133 MachineLoop *CurLoop; // The current loop we are working on. 318 static bool LoopIsOuterMostWithPredecessor(MachineLoop *CurLoop) { in INITIALIZE_PASS_DEPENDENCY() 323 for (MachineLoop *L = CurLoop->getParentLoop(); L; L = L->getParentLoop()) in INITIALIZE_PASS_DEPENDENCY() 369 SmallVector<MachineLoop *, 8> Worklist(MLI->begin(), MLI->end()); in runOnMachineFunction() 530 const MachineLoop *ML = MLI->getLoopFor(BB); in HoistRegionPostRA() 734 const MachineLoop *ML = MLI->getLoopFor(BB); in HoistOutOfLoop()
|
H A D | RegAllocGreedy.h | 53 class MachineLoop; variable 441 RAGreedyStats reportStats(MachineLoop *L);
|
H A D | PHIElimination.cpp | 658 const MachineLoop *CurLoop = MLI ? MLI->getLoopFor(&MBB) : nullptr; in SplitPHIEdges() 675 const MachineLoop *PreLoop = MLI ? MLI->getLoopFor(PreMBB) : nullptr; in SplitPHIEdges()
|
/openbsd/gnu/llvm/llvm/lib/Target/PowerPC/ |
H A D | PPCCTRLoops.cpp | 77 bool processLoop(MachineLoop *ML); 79 void expandNormalLoops(MachineLoop *ML, MachineInstr *Start, 81 void expandCTRLoops(MachineLoop *ML, MachineInstr *Start, MachineInstr *Dec); 143 bool PPCCTRLoops::processLoop(MachineLoop *ML) { in processLoop() 147 for (MachineLoop *I : *ML) in processLoop() 237 void PPCCTRLoops::expandNormalLoops(MachineLoop *ML, MachineInstr *Start, in expandNormalLoops() 314 void PPCCTRLoops::expandCTRLoops(MachineLoop *ML, MachineInstr *Start, in expandCTRLoops()
|
/openbsd/gnu/llvm/llvm/lib/Target/WebAssembly/ |
H A D | WebAssemblySortRegion.cpp | 11 bool ConcreteSortRegion<MachineLoop>::isLoop() const { in isLoop() 33 LoopMap[ML] = std::make_unique<ConcreteSortRegion<MachineLoop>>(ML); in getRegionFor() 52 MachineBasicBlock *SortRegionInfo::getBottom(const MachineLoop *ML) { in getBottom()
|
H A D | WebAssemblySortRegion.h | 24 class MachineLoop; variable 67 DenseMap<const MachineLoop *, std::unique_ptr<SortRegion>> LoopMap; 83 MachineBasicBlock *getBottom(const MachineLoop *ML);
|
H A D | WebAssemblyCFGSort.cpp | 199 if (MachineLoop *L = MLI.getLoopFor(&MBB)) in sortBlocks() 246 if (MachineLoop *SuccL = MLI.getLoopFor(Succ)) in sortBlocks()
|
/openbsd/gnu/llvm/llvm/lib/Target/ARM/ |
H A D | ARMBlockPlacement.cpp | 45 bool fixBackwardsWLS(MachineLoop *ML); 46 bool processPostOrderLoops(MachineLoop *ML); 76 static MachineInstr *findWLS(MachineLoop *ML) { in findWLS() 154 bool ARMBlockPlacement::fixBackwardsWLS(MachineLoop *ML) { in fixBackwardsWLS() 206 bool ARMBlockPlacement::processPostOrderLoops(MachineLoop *ML) { in processPostOrderLoops()
|
H A D | MVETPAndVPTOptimisationsPass.cpp | 72 bool LowerWhileLoopStart(MachineLoop *ML); 73 bool MergeLoopEnd(MachineLoop *ML); 74 bool ConvertTailPredLoop(MachineLoop *ML, MachineDominatorTree *DT); 111 static bool findLoopComponents(MachineLoop *ML, MachineRegisterInfo *MRI, in findLoopComponents() 228 bool MVETPAndVPTOptimisations::LowerWhileLoopStart(MachineLoop *ML) { in LowerWhileLoopStart() 320 bool MVETPAndVPTOptimisations::MergeLoopEnd(MachineLoop *ML) { in MergeLoopEnd() 438 bool MVETPAndVPTOptimisations::ConvertTailPredLoop(MachineLoop *ML, in ConvertTailPredLoop() 1069 for (MachineLoop *ML : MLI->getBase().getLoopsInPreorder()) { in runOnMachineFunction()
|
H A D | ARMLowOverheadLoops.cpp | 124 MachineLoop &ML; 130 PostOrderLoopTraversal(MachineLoop &ML, MachineLoopInfo &MLI) in PostOrderLoopTraversal() 367 MachineLoop &ML; 388 LowOverheadLoop(MachineLoop &ML, MachineLoopInfo &MLI, in LowOverheadLoop() 513 bool ProcessLoop(MachineLoop *ML); 1086 ARMBasicBlockUtils *BBUtils, MachineLoop &ML) { in Validate() 1145 static bool ValidateMVEStore(MachineInstr *MI, MachineLoop *ML) { in ValidateMVEStore() 1335 bool ARMLowOverheadLoops::ProcessLoop(MachineLoop *ML) { in ProcessLoop() 1340 for (MachineLoop *L : *ML) in ProcessLoop()
|
/openbsd/gnu/llvm/llvm/lib/Target/Hexagon/ |
H A D | HexagonHardwareLoops.cpp | 183 bool findInductionRegister(MachineLoop *L, Register &Reg, 195 CountValue *getLoopTripCount(MachineLoop *L, 298 bool fixupInductionVariable(MachineLoop *L); 302 MachineBasicBlock *createPreheaderForLoop(MachineLoop *L); 404 bool HexagonHardwareLoops::findInductionRegister(MachineLoop *L, in findInductionRegister() 1127 bool HexagonHardwareLoops::convertToHardwareLoop(MachineLoop *L, in convertToHardwareLoop() 1138 for (MachineLoop *I : *L) { in convertToHardwareLoop() 1385 MachineLoop *L, LoopFeederMap &LoopFeederPhi) const { in phiMayWrapOrUnderflow() 1413 MachineBasicBlock *MBB, MachineLoop *L, in loopCountMayWrapOrUnderFlow() 1836 MachineLoop *L) { in createPreheaderForLoop() [all …]
|
H A D | HexagonEarlyIfConv.cpp | 177 bool matchFlowPattern(MachineBasicBlock *B, MachineLoop *L, 179 bool visitBlock(MachineBasicBlock *B, MachineLoop *L); 180 bool visitLoop(MachineLoop *L); 234 MachineLoop *L = MLI->getLoopFor(SB); in isPreheader() 239 MachineLoop *L, FlowPattern &FP) { in matchFlowPattern() 598 MachineLoop *L) { in visitBlock() 644 bool HexagonEarlyIfConversion::visitLoop(MachineLoop *L) { in visitLoop() 651 for (MachineLoop *I : *L) in visitLoop() 1067 for (MachineLoop *L : *MLI) in runOnMachineFunction()
|
H A D | HexagonSplitDouble.cpp | 93 using LoopRegMap = std::map<const MachineLoop *, USet>; 103 void collectIndRegsForLoop(const MachineLoop *L, USet &Rs); 454 const MachineLoop *L = MLI->getLoopFor(PB); in isProfitable() 475 void HexagonSplitDoubleRegs::collectIndRegsForLoop(const MachineLoop *L, in collectIndRegsForLoop() 572 using LoopVector = std::vector<MachineLoop *>; in collectIndRegs() 581 for (MachineLoop *L : WorkQ) { in collectIndRegs()
|
/openbsd/gnu/llvm/llvm/lib/Target/AMDGPU/ |
H A D | R600MachineCFGStructurizer.cpp | 177 for (const MachineLoop *L : LoopInfo) in PrintLoopinfo() 249 int mergeLoop(MachineLoop *LoopRep); 314 std::map<MachineLoop *, bool> Visited; 339 MachineLoop *LoopRep = MLI->getLoopFor(MBB); in hasBackEdge() 354 MachineLoop *LoopRep = MLI->getLoopFor(MBB); in isActiveLoophead() 693 for (MachineLoop *LoopRep : *MLI) { in prepare() 982 std::deque<MachineLoop *> NestedLoops; in loopendPatternMatch() 984 for (MachineLoop *ML : depth_first(It)) in loopendPatternMatch() 994 for (MachineLoop *ExaminedLoop : NestedLoops) { in loopendPatternMatch() 1038 MachineLoop *ParentLoop = LoopRep->getParentLoop(); in mergeLoop() [all …]
|
/openbsd/gnu/llvm/llvm/lib/Target/SystemZ/ |
H A D | SystemZMachineScheduler.cpp | 41 const MachineLoop *Loop) { in getSingleSchedPred() 89 LLVM_DEBUG(const MachineLoop *Loop = MLI->getLoopFor(MBB); in enterMBB()
|
/openbsd/gnu/llvm/llvm/lib/Target/X86/ |
H A D | X86CmovConversion.cpp | 239 SmallVector<MachineLoop *, 4> Loops(MLI->begin(), MLI->end()); in runOnMachineFunction() 243 for (MachineLoop *Child : Loops[i]->getSubLoops()) in runOnMachineFunction() 246 for (MachineLoop *CurrLoop : Loops) { in runOnMachineFunction() 865 if (MachineLoop *L = MLI->getLoopFor(MBB)) { in convertCmovInstsToBranches()
|
/openbsd/gnu/llvm/llvm/lib/Target/AArch64/ |
H A D | AArch64FalkorHWPFFix.cpp | 202 void runOnLoop(MachineLoop &L, MachineFunction &Fn); 676 void FalkorHWPFFix::runOnLoop(MachineLoop &L, MachineFunction &Fn) { in runOnLoop() 829 for (MachineLoop *I : LI) in runOnMachineFunction() 830 for (MachineLoop *L : depth_first(I)) in runOnMachineFunction()
|