Lines Matching defs:header
667 // unless B is a loop header and A is in the loop headed at B
670 // => If block A is a loop header, A appears before all blocks in the loop
749 BasicBlock* header;
830 // Assign a new loop number to the header if it doesn't have one.
852 // Initialize the "loop stack". Note the entry could be a loop header.
871 // Process additional outgoing edges from the loop header.
873 // Finish the loop body the first time the header is left on the
875 DCHECK(loop != nullptr && loop->header == block);
882 // We leave the loop header on the stack; the rest of this iteration
921 // If we are going to pop a loop header, then add its entire body.
948 if (entry->IsLoopHeader()) --loop_depth; // Entry might be a loop header.
962 current_loop == nullptr ? nullptr : current_loop->header;
967 // Push a new loop onto the stack if this loop is a loop header.
974 current_header = current_loop->header;
975 TRACE("id:%d is a loop header, increment loop depth to %d\n",
985 TRACE("id:%d has loop header id:%d, (depth == %d)\n",
1008 BasicBlock* header = member->SuccessorAt(backedges->at(i).second);
1009 size_t loop_num = GetLoopNumber(header);
1010 if (loops_[loop_num].header == nullptr) {
1011 loops_[loop_num].header = header;
1017 if (member != header) {
1018 // As long as the header doesn't have a backedge to itself,
1027 // loop header H are members of the loop too. O(|blocks between M and H|).
1032 if (pred != header) {
1051 os << "id:" << loops_[i].header->id();
1061 bool range = loops_[i].header->LoopContains(block);
1062 bool membership = loops_[i].header != block && range;
1072 os << " header: id:" << block->loop_header()->id();
1088 BasicBlock* header = loop->header;
1089 BasicBlock* end = header->loop_end();
1091 DCHECK_NOT_NULL(header);
1092 DCHECK_LE(0, header->rpo_number());
1093 DCHECK_LT(header->rpo_number(), order->size());
1096 DCHECK_GT(end->rpo_number(), header->rpo_number());
1097 DCHECK_NE(header->loop_header(), header);
1102 DCHECK_EQ(header, block);
1110 DCHECK(block->rpo_number() == links + header->rpo_number());
1116 DCHECK_EQ(links, end->rpo_number() - header->rpo_number());
1119 // Check loop depth of the header.
1124 DCHECK_EQ(loop_depth, header->loop_depth());
1131 if (j < header->rpo_number() || j >= end->rpo_number()) {
1132 DCHECK(!header->LoopContains(block));
1134 DCHECK(header->LoopContains(block));