Lines Matching refs:Head

88   MachineBasicBlock *Head;  member in __anonfc1f82480111::SSAIfConv
104 MachineBasicBlock *getTPred() const { return TBB == Tail ? Head : TBB; } in getTPred()
107 MachineBasicBlock *getFPred() const { return FBB == Tail ? Head : FBB; } in getFPred()
246 if (!DefMI || DefMI->getParent() != Head) in canSpeculateInstrs()
275 MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator(); in findInsertionPoint()
276 MachineBasicBlock::iterator I = Head->end(); in findInsertionPoint()
277 MachineBasicBlock::iterator B = Head->begin(); in findInsertionPoint()
341 Head = MBB; in canConvertIf()
344 if (Head->succ_size() != 2) in canConvertIf()
346 MachineBasicBlock *Succ0 = Head->succ_begin()[0]; in canConvertIf()
347 MachineBasicBlock *Succ1 = Head->succ_begin()[1]; in canConvertIf()
364 DEBUG(dbgs() << "\nDiamond: BB#" << Head->getNumber() in canConvertIf()
375 DEBUG(dbgs() << "\nTriangle: BB#" << Head->getNumber() in canConvertIf()
389 if (TII->analyzeBranch(*Head, TBB, FBB, Cond)) { in canConvertIf()
423 if (!TII->canInsertSelect(*Head, Cond, PI.TReg, PI.FReg, in canConvertIf()
455 MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator(); in replacePHIInstrs()
456 assert(FirstTerm != Head->end() && "No terminators"); in replacePHIInstrs()
464 TII->insertSelect(*Head, FirstTerm, HeadDL, DstReg, Cond, PI.TReg, PI.FReg); in replacePHIInstrs()
475 MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator(); in rewritePHIOperands()
476 assert(FirstTerm != Head->end() && "No terminators"); in rewritePHIOperands()
492 TII->insertSelect(*Head, FirstTerm, HeadDL, in rewritePHIOperands()
501 PI.PHI->getOperand(i-1).setMBB(Head); in rewritePHIOperands()
518 assert(Head && Tail && TBB && FBB && "Call canConvertIf first."); in convertIf()
528 Head->splice(InsertionPoint, TBB, TBB->begin(), TBB->getFirstTerminator()); in convertIf()
530 Head->splice(InsertionPoint, FBB, FBB->begin(), FBB->getFirstTerminator()); in convertIf()
540 Head->removeSuccessor(TBB); in convertIf()
541 Head->removeSuccessor(FBB, true); in convertIf()
549 DebugLoc HeadDL = Head->getFirstTerminator()->getDebugLoc(); in convertIf()
550 TII->RemoveBranch(*Head); in convertIf()
563 assert(Head->succ_empty() && "Additional head successors?"); in convertIf()
564 if (!ExtraPreds && Head->isLayoutSuccessor(Tail)) { in convertIf()
567 << " into head BB#" << Head->getNumber() << '\n'); in convertIf()
568 Head->splice(Head->end(), Tail, in convertIf()
570 Head->transferSuccessorsAndUpdatePHIs(Tail); in convertIf()
577 TII->InsertBranch(*Head, Tail, nullptr, EmptyCond, HeadDL); in convertIf()
578 Head->addSuccessor(Tail); in convertIf()
580 DEBUG(dbgs() << *Head); in convertIf()
643 MachineDomTreeNode *HeadNode = DomTree->getNode(IfConv.Head); in updateDomTree()
668 Traces->invalidate(IfConv.Head); in invalidateTraces()
719 MachineTraceMetrics::Trace HeadTrace = MinInstr->getTrace(IfConv.Head); in shouldConvertIf()
721 HeadTrace.getInstrCycles(*IfConv.Head->getFirstTerminator()).Depth; in shouldConvertIf()