reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/CodeGen/EarlyIfConversion.cpp
  104   MachineBasicBlock *getTPred() const { return TBB == Tail ? Head : TBB; }
  107   MachineBasicBlock *getFPred() const { return FBB == Tail ? Head : FBB; }
  272     if (!DefMI || DefMI->getParent() != Head)
  366   MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator();
  367   MachineBasicBlock::iterator I = Head->end();
  368   MachineBasicBlock::iterator B = Head->begin();
  432   Head = MBB;
  435   if (Head->succ_size() != 2)
  437   MachineBasicBlock *Succ0 = Head->succ_begin()[0];
  438   MachineBasicBlock *Succ1 = Head->succ_begin()[1];
  455     LLVM_DEBUG(dbgs() << "\nDiamond: " << printMBBReference(*Head) << " -> "
  466     LLVM_DEBUG(dbgs() << "\nTriangle: " << printMBBReference(*Head) << " -> "
  481   if (TII->analyzeBranch(*Head, TBB, FBB, Cond)) {
  522     if (!TII->canInsertSelect(*Head, Cond, PI.TReg, PI.FReg,
  561   MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator();
  562   assert(FirstTerm != Head->end() && "No terminators");
  570     TII->insertSelect(*Head, FirstTerm, HeadDL, DstReg, Cond, PI.TReg, PI.FReg);
  581   MachineBasicBlock::iterator FirstTerm = Head->getFirstTerminator();
  582   assert(FirstTerm != Head->end() && "No terminators");
  598       TII->insertSelect(*Head, FirstTerm, HeadDL,
  607         PI.PHI->getOperand(i-1).setMBB(Head);
  625   assert(Head && Tail && TBB && FBB && "Call canConvertIf first.");
  637     Head->splice(InsertionPoint, TBB, TBB->begin(), TBB->getFirstTerminator());
  642     Head->splice(InsertionPoint, FBB, FBB->begin(), FBB->getFirstTerminator());
  652   Head->removeSuccessor(TBB);
  653   Head->removeSuccessor(FBB, true);
  661   DebugLoc HeadDL = Head->getFirstTerminator()->getDebugLoc();
  662   TII->removeBranch(*Head);
  675   assert(Head->succ_empty() && "Additional head successors?");
  676   if (!ExtraPreds && Head->isLayoutSuccessor(Tail)) {
  679                       << " into head " << printMBBReference(*Head) << '\n');
  680     Head->splice(Head->end(), Tail,
  680     Head->splice(Head->end(), Tail,
  682     Head->transferSuccessorsAndUpdatePHIs(Tail);
  689     TII->insertBranch(*Head, Tail, nullptr, EmptyCond, HeadDL);
  690     Head->addSuccessor(Tail);
  692   LLVM_DEBUG(dbgs() << *Head);
  754   MachineDomTreeNode *HeadNode = DomTree->getNode(IfConv.Head);
  781   Traces->invalidate(IfConv.Head);
  832   MachineTraceMetrics::Trace HeadTrace = MinInstr->getTrace(IfConv.Head);
  834       HeadTrace.getInstrCycles(*IfConv.Head->getFirstTerminator()).Depth;