Home | History | Annotate | Download | only in Analysis

Lines Matching refs:SubLoop

373   /// removeChildLoop - This removes the specified child from being a subloop of
471 // Each block in each subloop should be contained within this loop.
475 "Loop does not contain all the blocks of a subloop!");
482 "Loop is not a subloop of its parent!");
732 "Loops already embedded into a subloop!");
738 assert(New->getParentLoop() == 0 && "Loop already in subloop!");
757 static bool isNotAlreadyContainedIn(const LoopT *SubLoop,
759 if (SubLoop == 0) return true;
760 if (SubLoop == ParentLoop) return false;
761 return isNotAlreadyContainedIn(SubLoop->getParentLoop(), ParentLoop);
809 if (LoopT *SubLoop =
811 if (SubLoop->getHeader() == X && isNotAlreadyContainedIn(SubLoop, L)){
812 // Remove the subloop from its current parent...
813 assert(SubLoop->ParentLoop && SubLoop->ParentLoop != L);
814 LoopT *SLP = SubLoop->ParentLoop; // SubLoopParent
816 std::find(SLP->SubLoops.begin(), SLP->SubLoops.end(), SubLoop);
817 assert(I != SLP->SubLoops.end() &&"SubLoop not a child of parent?");
820 // Add the subloop to THIS loop...
821 SubLoop->ParentLoop = L;
822 L->SubLoops.push_back(SubLoop);
877 LoopT *SubLoop = BlockLoop;
879 for (unsigned j = 0, f = SubLoop->Blocks.size(); j != f; ++j)
880 ContainingLoops[SubLoop->Blocks[j]] = Child;
885 MoveSiblingLoopInto(SubLoop, Child);