Lines Matching refs:InnerLoop

36 static bool checkLoopsStructure(const Loop &OuterLoop, const Loop &InnerLoop,
53 bool LoopNest::arePerfectlyNested(const Loop &OuterLoop, const Loop &InnerLoop, in arePerfectlyNested() argument
56 assert(!InnerLoop.isOutermost() && "Inner loop should have a parent"); in arePerfectlyNested()
58 << "' and '" << InnerLoop.getName() in arePerfectlyNested()
67 if (!checkLoopsStructure(OuterLoop, InnerLoop, SE)) { in arePerfectlyNested()
95 BranchInst *InnerGuard = InnerLoop.getLoopGuardBranch(); in arePerfectlyNested()
142 const BasicBlock *InnerLoopPreHeader = InnerLoop.getLoopPreheader(); in arePerfectlyNested()
148 !containsOnlySafeInstructions(*InnerLoop.getExitBlock())) { in arePerfectlyNested()
155 << InnerLoop.getName() << "' are perfectly nested.\n"); in arePerfectlyNested()
190 const Loop *InnerLoop = SubLoops->front(); in getMaxPerfectDepth() local
191 if (!arePerfectlyNested(*CurrentLoop, *InnerLoop, SE)) { in getMaxPerfectDepth()
195 << InnerLoop->getName() << "'\n"; in getMaxPerfectDepth()
200 CurrentLoop = InnerLoop; in getMaxPerfectDepth()
235 static bool checkLoopsStructure(const Loop &OuterLoop, const Loop &InnerLoop, in checkLoopsStructure() argument
239 (InnerLoop.getParentLoop() != &OuterLoop)) in checkLoopsStructure()
243 if (!OuterLoop.isLoopSimplifyForm() || !InnerLoop.isLoopSimplifyForm()) in checkLoopsStructure()
248 const BasicBlock *InnerLoopPreHeader = InnerLoop.getLoopPreheader(); in checkLoopsStructure()
249 const BasicBlock *InnerLoopLatch = InnerLoop.getLoopLatch(); in checkLoopsStructure()
250 const BasicBlock *InnerLoopExit = InnerLoop.getExitBlock(); in checkLoopsStructure()
254 InnerLoop.getExitingBlock() != InnerLoopLatch || !InnerLoopExit) in checkLoopsStructure()
289 if (!BI || BI != InnerLoop.getLoopGuardBranch()) in checkLoopsStructure()
341 &LoopNest::skipEmptyBlockUntil(InnerLoop.getExitBlock(), in checkLoopsStructure()
343 (&LoopNest::skipEmptyBlockUntil(InnerLoop.getExitBlock(), in checkLoopsStructure()