Lines Matching refs:Tail

92   MachineBasicBlock *Tail;  member in __anon4c5015260111::SSAIfConv
102 bool isTriangle() const { return TBB == Tail || FBB == Tail; } in isTriangle()
105 MachineBasicBlock *getTPred() const { return TBB == Tail ? Head : TBB; } in getTPred()
108 MachineBasicBlock *getFPred() const { return FBB == Tail ? Head : FBB; } in getFPred()
440 TBB = FBB = Tail = nullptr; in canConvertIf()
454 Tail = Succ0->succ_begin()[0]; in canConvertIf()
457 if (Tail != Succ1) { in canConvertIf()
460 Succ1->succ_begin()[0] != Tail) in canConvertIf()
465 << printMBBReference(*Tail) << '\n'); in canConvertIf()
468 if (!Tail->livein_empty()) { in canConvertIf()
475 << printMBBReference(*Tail) << '\n'); in canConvertIf()
481 if (!Predicate && (Tail->empty() || !Tail->front().isPHI())) { in canConvertIf()
514 for (MachineBasicBlock::iterator I = Tail->begin(), E = Tail->end(); in canConvertIf()
541 if (TBB != Tail && !canPredicateInstrs(TBB)) in canConvertIf()
543 if (FBB != Tail && !canPredicateInstrs(FBB)) in canConvertIf()
546 if (TBB != Tail && !canSpeculateInstrs(TBB)) in canConvertIf()
548 if (FBB != Tail && !canSpeculateInstrs(FBB)) in canConvertIf()
614 assert(Tail->pred_size() == 2 && "Cannot replace PHIs"); in replacePHIInstrs()
685 assert(Head && Tail && TBB && FBB && "Call canConvertIf first."); in convertIf()
694 if (TBB != Tail) { in convertIf()
699 if (FBB != Tail) { in convertIf()
705 bool ExtraPreds = Tail->pred_size() != 2; in convertIf()
714 if (TBB != Tail) in convertIf()
715 TBB->removeSuccessor(Tail, true); in convertIf()
716 if (FBB != Tail) in convertIf()
717 FBB->removeSuccessor(Tail, true); in convertIf()
726 if (TBB != Tail) { in convertIf()
730 if (FBB != Tail) { in convertIf()
736 if (!ExtraPreds && Head->isLayoutSuccessor(Tail)) { in convertIf()
738 LLVM_DEBUG(dbgs() << "Joining tail " << printMBBReference(*Tail) in convertIf()
740 Head->splice(Head->end(), Tail, in convertIf()
741 Tail->begin(), Tail->end()); in convertIf()
742 Head->transferSuccessorsAndUpdatePHIs(Tail); in convertIf()
743 RemovedBlocks.push_back(Tail); in convertIf()
744 Tail->eraseFromParent(); in convertIf()
749 TII->insertBranch(*Head, Tail, nullptr, EmptyCond, HeadDL); in convertIf()
750 Head->addSuccessor(Tail); in convertIf()
819 assert(Node->getBlock() == IfConv.Tail && "Unexpected children"); in updateDomTree()
840 Traces->invalidate(IfConv.Tail); in invalidateTraces()
923 if (IfConv.TBB != IfConv.Tail) in shouldConvertIf()
954 MachineTraceMetrics::Trace TailTrace = MinInstr->getTrace(IfConv.Tail); in shouldConvertIf()
1163 (IfConv.TBB == IfConv.Tail) ? *IfConv.FBB : *IfConv.TBB; in shouldConvertIf()