Lines Matching refs:Head

89   MachineBasicBlock *Head;  member in __anon14b9c9000111::SSAIfConv
105 MachineBasicBlock *getTPred() const { return TBB == Tail ? Head : TBB; } in getTPred()
108 MachineBasicBlock *getFPred() const { return FBB == Tail ? Head : FBB; } in getFPred()
272 if (!DefMI || DefMI->getParent() != Head) in InstrDependenciesAllowIfConv()
375 MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator(); in findInsertionPoint()
376 MachineBasicBlock::iterator I = Head->end(); in findInsertionPoint()
377 MachineBasicBlock::iterator B = Head->begin(); in findInsertionPoint()
439 Head = MBB; in canConvertIf()
442 if (Head->succ_size() != 2) in canConvertIf()
444 MachineBasicBlock *Succ0 = Head->succ_begin()[0]; in canConvertIf()
445 MachineBasicBlock *Succ1 = Head->succ_begin()[1]; in canConvertIf()
462 LLVM_DEBUG(dbgs() << "\nDiamond: " << printMBBReference(*Head) << " -> " in canConvertIf()
473 LLVM_DEBUG(dbgs() << "\nTriangle: " << printMBBReference(*Head) << " -> " in canConvertIf()
488 if (TII->analyzeBranch(*Head, TBB, FBB, Cond)) { in canConvertIf()
529 if (!TII->canInsertSelect(*Head, Cond, PI.PHI->getOperand(0).getReg(), in canConvertIf()
615 MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator(); in replacePHIInstrs()
616 assert(FirstTerm != Head->end() && "No terminators"); in replacePHIInstrs()
626 BuildMI(*Head, FirstTerm, HeadDL, TII->get(TargetOpcode::COPY), DstReg) in replacePHIInstrs()
629 TII->insertSelect(*Head, FirstTerm, HeadDL, DstReg, Cond, PI.TReg, in replacePHIInstrs()
642 MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator(); in rewritePHIOperands()
643 assert(FirstTerm != Head->end() && "No terminators"); in rewritePHIOperands()
658 TII->insertSelect(*Head, FirstTerm, HeadDL, in rewritePHIOperands()
667 PI.PHI->getOperand(i-1).setMBB(Head); in rewritePHIOperands()
685 assert(Head && Tail && TBB && FBB && "Call canConvertIf first."); in convertIf()
697 Head->splice(InsertionPoint, TBB, TBB->begin(), TBB->getFirstTerminator()); in convertIf()
702 Head->splice(InsertionPoint, FBB, FBB->begin(), FBB->getFirstTerminator()); in convertIf()
712 Head->removeSuccessor(TBB); in convertIf()
713 Head->removeSuccessor(FBB, true); in convertIf()
721 DebugLoc HeadDL = Head->getFirstTerminator()->getDebugLoc(); in convertIf()
722 TII->removeBranch(*Head); in convertIf()
735 assert(Head->succ_empty() && "Additional head successors?"); in convertIf()
736 if (!ExtraPreds && Head->isLayoutSuccessor(Tail)) { in convertIf()
739 << " into head " << printMBBReference(*Head) << '\n'); in convertIf()
740 Head->splice(Head->end(), Tail, in convertIf()
742 Head->transferSuccessorsAndUpdatePHIs(Tail); in convertIf()
749 TII->insertBranch(*Head, Tail, nullptr, EmptyCond, HeadDL); in convertIf()
750 Head->addSuccessor(Tail); in convertIf()
752 LLVM_DEBUG(dbgs() << *Head); in convertIf()
814 MachineDomTreeNode *HeadNode = DomTree->getNode(IfConv.Head); in updateDomTree()
839 Traces->invalidate(IfConv.Head); in invalidateTraces()
874 MachineLoop *CurrentLoop = Loops->getLoopFor(IfConv.Head); in shouldConvertIf()
916 MachineBasicBlock &MBB = *IfConv.Head; in shouldConvertIf()
947 MachineTraceMetrics::Trace HeadTrace = MinInstr->getTrace(IfConv.Head); in shouldConvertIf()
949 HeadTrace.getInstrCycles(*IfConv.Head->getFirstTerminator()).Depth; in shouldConvertIf()
1160 auto TrueProbability = MBPI->getEdgeProbability(IfConv.Head, IfConv.TBB); in shouldConvertIf()