Lines Matching refs:Header
27 // APIs for simple analysis of the loop. See header notes.
101 /// loop has a preheader if there is only one edge to the header of the loop
103 /// header of the loop is the preheader node.
109 // Keep track of nodes outside the loop branching to the header...
124 /// getLoopPredecessor - If the given loop's header has exactly one unique
131 // Keep track of nodes outside the loop branching to the header...
134 // Loop over the predecessors of the header node...
135 BlockT *Header = getHeader();
138 InvBlockTraits::child_begin(Header),
139 PE = InvBlockTraits::child_end(Header); PI != PE; ++PI) {
149 assert(Out && "Header of loop has no predecessors from outside loop?");
154 /// A latch block is a block that contains a branch back to the header.
157 BlockT *Header = getHeader();
160 InvBlockTraits::child_begin(Header);
162 InvBlockTraits::child_end(Header);
183 /// is not valid to replace the loop header with this method.
226 assert(!Blocks.empty() && "Loop header is missing");
269 // A non-header loop shouldn't be reachable from outside the loop,
327 if (BB == getHeader()) OS << "<header>";
430 /// subloop header, add the subloop to its parent in PostOrder, then reverse the
444 // the lists, except for the loop header, which is always at the beginning.
477 BlockT *Header = DomNode->getBlock();
480 // Check each predecessor of the potential loop header.
483 InvBlockTraits::child_begin(Header),
484 PE = InvBlockTraits::child_end(Header); PI != PE; ++PI) {
488 // If Header dominates predBB, this is a new loop. Collect the backedges.
489 if (DomTree.dominates(Header, Backedge)
496 LoopT *L = new LoopT(Header);