Lines Matching refs:Loop

1 //===-- LoopUnrollAndJam.cpp - Loop unrolling utilities -------------------===//
69 static bool partitionLoopBlocks(Loop &L, BasicBlockSet &ForeBlocks,
71 Loop *SubLoop = L.getSubLoops()[0];
101 Loop &Root, Loop &JamLoop, BasicBlockSet &JamLoopBlocks,
102 DenseMap<Loop *, BasicBlockSet> &ForeBlocksMap,
103 DenseMap<Loop *, BasicBlockSet> &AftBlocksMap, DominatorTree &DT) {
106 for (Loop *L : Root.getLoopsInPreorder()) {
119 static bool partitionOuterLoopBlocks(Loop *L, Loop *SubLoop,
216 llvm::UnrollAndJamLoop(Loop *L, unsigned Count, unsigned TripCount,
220 OptimizationRemarkEmitter *ORE, Loop **EpilogueLoop) {
226 Loop *SubLoop = *L->begin();
365 SmallDenseMap<const Loop *, Loop *, 4> NewLoops;
605 Loop *OutestLoop = SubLoop->getParentLoop()
753 checkDependencies(Loop &Root, const BasicBlockSet &SubLoopBlocks,
754 const DenseMap<Loop *, BasicBlockSet> &ForeBlocksMap,
755 const DenseMap<Loop *, BasicBlockSet> &AftBlocksMap,
758 for (Loop *L : Root.getLoopsInPreorder())
762 for (Loop *L : Root.getLoopsInPreorder())
774 Loop *CurLoop = LI.getLoopFor((*Blocks.begin())->front().getParent());
778 Loop *EarlierLoop = LI.getLoopFor(Earlier->getParent());
803 static bool isEligibleLoopForm(const Loop &Root) {
808 const Loop *L = &Root;
853 static Loop *getInnerMostLoop(Loop *L) {
859 bool llvm::isSafeToUnrollAndJam(Loop *L, ScalarEvolution &SE, DominatorTree &DT,
918 Loop *JamLoop = getInnerMostLoop(L);
920 DenseMap<Loop *, BasicBlockSet> ForeBlocksMap;
921 DenseMap<Loop *, BasicBlockSet> AftBlocksMap;
939 if (any_of(L->getLoopsInPreorder(), [&SE](Loop *SubLoop) {
965 Loop *SubLoop = L->getSubLoops()[0];