Home | History | Annotate | Download | only in AArch64

Lines Matching defs:Tail

90 //               |  / |                    Tail  |
92 // Tail | | |
97 // contains compare + br.cond. Tail must be a successor of both.
113 // b.eq Tail
116 // b.eq Tail
118 // Tail:
126 // b.eq Tail
128 // Tail:
135 // between Head and Tail, just like if-converting a diamond.
137 // FIXME: Handle PHIs in Tail by turning them into selects (if-conversion).
155 MachineBasicBlock *Tail;
170 /// The condition code that makes CmpBB branch to Tail.
173 /// Check if the Tail PHIs are trivially convertible.
176 /// Remove CmpBB from the Tail PHIs.
213 // Check that all PHIs in Tail are selecting the same value from Head and CmpBB.
216 for (auto &I : *Tail) {
239 // Assuming that trivialTailPHIs() is true, update the Tail PHIs by simply
242 for (auto &I : *Tail) {
438 Tail = CmpBB = nullptr;
445 // CmpBB can only have a single predecessor. Tail is allowed many.
454 Tail = Succ1;
456 if (!CmpBB->isSuccessor(Tail))
461 << CmpBB->getNumber() << " -> BB#" << Tail->getNumber() << '\n');
464 // Tail is allowed to have many predecessors, but we can't handle PHIs yet.
471 DEBUG(dbgs() << "Can't handle phis in Tail.\n");
476 if (!Tail->livein_empty()) {
477 DEBUG(dbgs() << "Can't handle live-in physregs in Tail.\n");
521 assert(TBB == Tail && "Unexpected TBB");
545 if (TBB != Tail)
549 << ", CmpBB->Tail on " << AArch64CC::getCondCodeName(CmpBBTailCC)
571 CmpBB->removeSuccessor(Tail);
647 // would have branched to Tail. These flags should cause the new Head
648 // terminator to branch to tail.