Lines Matching refs:Loop

62 using LoopVector = SmallVector<Loop *, 8>;
86 Loop *L, DependenceInfo *DI, in populateDependencyMatrix()
215 static void populateWorklist(Loop &L, LoopVector &LoopList) { in populateWorklist()
220 Loop *CurrentLoop = &L; in populateWorklist()
221 const std::vector<Loop *> *Vec = &CurrentLoop->getSubLoops(); in populateWorklist()
243 LoopInterchangeLegality(Loop *Outer, Loop *Inner, ScalarEvolution *SE, in LoopInterchangeLegality()
253 bool findInductions(Loop *L, SmallVectorImpl<PHINode *> &Inductions);
270 bool tightlyNested(Loop *Outer, Loop *Inner);
277 bool findInductionAndReductions(Loop *L,
279 Loop *InnerLoop);
281 Loop *OuterLoop;
282 Loop *InnerLoop;
301 LoopInterchangeProfitability(Loop *Outer, Loop *Inner, ScalarEvolution *SE, in LoopInterchangeProfitability()
306 bool isProfitable(const Loop *InnerLoop, const Loop *OuterLoop,
309 const DenseMap<const Loop *, unsigned> &CostMap,
315 const DenseMap<const Loop *, unsigned> &CostMap,
321 Loop *OuterLoop;
322 Loop *InnerLoop;
334 LoopInterchangeTransform(Loop *Outer, Loop *Inner, ScalarEvolution *SE, in LoopInterchangeTransform()
341 void restructureLoops(Loop *NewInner, Loop *NewOuter,
344 void removeChildLoop(Loop *OuterLoop, Loop *InnerLoop);
350 Loop *OuterLoop;
351 Loop *InnerLoop;
377 bool run(Loop *L) { in run()
380 SmallVector<Loop *, 8> LoopList; in run()
386 SmallVector<Loop *, 8> LoopList(LN.getLoops().begin(), LN.getLoops().end()); in run()
393 bool isComputableLoopNest(ArrayRef<Loop *> LoopList) { in isComputableLoopNest()
394 for (Loop *L : LoopList) { in isComputableLoopNest()
412 unsigned selectLoopForInterchange(ArrayRef<Loop *> LoopList) { in selectLoopForInterchange()
418 bool processLoopList(SmallVectorImpl<Loop *> &LoopList) { in processLoopList()
439 Loop *OuterMostLoop = *(LoopList.begin()); in processLoopList()
466 DenseMap<const Loop *, unsigned> CostMap; in processLoopList()
503 bool processLoop(Loop *InnerLoop, Loop *OuterLoop, unsigned InnerLoopId, in processLoop()
506 const DenseMap<const Loop *, unsigned> &CostMap) { in processLoop()
547 bool LoopInterchangeLegality::tightlyNested(Loop *OuterLoop, Loop *InnerLoop) { in tightlyNested()
706 static PHINode *findInnerReductionPhi(Loop *L, Value *V) { in findInnerReductionPhi()
730 Loop *L, SmallVector<PHINode *, 8> &Inductions, Loop *InnerLoop) { in findInductionAndReductions()
811 Loop *CurLevelLoop = OuterLoop; in currentLimitations()
846 Loop *L, SmallVectorImpl<PHINode *> &Inductions) { in findInductions()
859 areInnerLoopExitPHIsSupported(Loop *InnerL, Loop *OuterL, in areInnerLoopExitPHIsSupported()
884 static bool areOuterLoopExitPHIsSupported(Loop *OuterLoop, Loop *InnerLoop) { in areOuterLoopExitPHIsSupported()
917 static bool areInnerLoopLatchPHIsSupported(Loop *OuterLoop, Loop *InnerLoop) { in areInnerLoopLatchPHIsSupported()
1097 const DenseMap<const Loop *, unsigned> &CostMap, in isProfitablePerLoopCacheAnalysis() argument
1154 const Loop *InnerLoop, const Loop *OuterLoop, unsigned InnerLoopId, in isProfitable()
1156 const DenseMap<const Loop *, unsigned> &CostMap, in isProfitable() argument
1196 void LoopInterchangeTransform::removeChildLoop(Loop *OuterLoop, in removeChildLoop()
1197 Loop *InnerLoop) { in removeChildLoop()
1198 for (Loop *L : *OuterLoop) in removeChildLoop()
1230 Loop *NewInner, Loop *NewOuter, BasicBlock *OrigInnerPreHeader, in restructureLoops()
1232 Loop *OuterLoopParent = OuterLoop->getParentLoop(); in restructureLoops()
1447 Loop *InnerLoop, LoopInfo *LI) { in moveLCSSAPhis()