Lines Matching defs:LoopList

236 static void populateWorklist(Loop &L, LoopVector &LoopList) {
240 assert(LoopList.empty() && "LoopList should initially be empty!");
248 LoopList = {};
252 LoopList.push_back(CurrentLoop);
256 LoopList.push_back(CurrentLoop);
259 static bool hasSupportedLoopDepth(SmallVectorImpl<Loop *> &LoopList,
261 unsigned LoopNestDepth = LoopList.size();
266 Loop **OuterLoop = LoopList.begin();
421 SmallVector<Loop *, 8> LoopList;
422 populateWorklist(*L, LoopList);
423 return processLoopList(LoopList);
427 SmallVector<Loop *, 8> LoopList(LN.getLoops());
428 for (unsigned I = 1; I < LoopList.size(); ++I)
429 if (LoopList[I]->getParentLoop() != LoopList[I - 1])
431 return processLoopList(LoopList);
434 bool isComputableLoopNest(ArrayRef<Loop *> LoopList) {
435 for (Loop *L : LoopList) {
453 unsigned selectLoopForInterchange(ArrayRef<Loop *> LoopList) {
456 return LoopList.size() - 1;
459 bool processLoopList(SmallVectorImpl<Loop *> &LoopList) {
463 assert(hasSupportedLoopDepth(LoopList, *ORE) &&
466 unsigned LoopNestDepth = LoopList.size();
467 if (!isComputableLoopNest(LoopList)) {
472 LLVM_DEBUG(dbgs() << "Processing LoopList of size = " << LoopNestDepth
476 Loop *OuterMostLoop = *(LoopList.begin());
493 unsigned SelecLoopId = selectLoopForInterchange(LoopList);
516 bool Interchanged = processLoop(LoopList[i], LoopList[i - 1], i, i - 1,
520 // Loops interchanged, update LoopList accordingly.
521 std::swap(LoopList[i - 1], LoopList[i]);
1753 SmallVector<Loop *, 8> LoopList(LN.getLoops());
1762 if (!hasSupportedLoopDepth(LoopList, ORE))