Lines Matching refs:MachineBasicBlock
96 SmallSet<std::pair<MachineBasicBlock*, MachineBasicBlock*>, 8>
101 SetVector<std::pair<MachineBasicBlock *, MachineBasicBlock *>> ToSplit;
106 std::map<MachineBasicBlock *, SmallVector<MachineBasicBlock *, 4>>;
137 bool ProcessBlock(MachineBasicBlock &MBB);
139 MachineBasicBlock *From,
140 MachineBasicBlock *To);
155 MachineBasicBlock *From,
156 MachineBasicBlock *To,
161 bool AllUsesDominatedByBlock(unsigned Reg, MachineBasicBlock *MBB,
162 MachineBasicBlock *DefMBB,
164 MachineBasicBlock *FindSuccToSinkTo(MachineInstr &MI, MachineBasicBlock *MBB,
167 MachineBasicBlock *MBB,
168 MachineBasicBlock *SuccToSinkTo,
172 MachineBasicBlock *MBB);
174 SmallVector<MachineBasicBlock *, 4> &
175 GetAllSortedSuccessors(MachineInstr &MI, MachineBasicBlock *MBB,
195 MachineBasicBlock *MBB) { in INITIALIZE_PASS_DEPENDENCY()
233 MachineBasicBlock *MBB, in AllUsesDominatedByBlock()
234 MachineBasicBlock *DefMBB, in AllUsesDominatedByBlock()
263 MachineBasicBlock *UseBlock = UseInst->getParent(); in AllUsesDominatedByBlock()
277 MachineBasicBlock *UseBlock = UseInst->getParent(); in AllUsesDominatedByBlock()
348 bool MachineSinking::ProcessBlock(MachineBasicBlock &MBB) { in ProcessBlock()
363 MachineBasicBlock::iterator I = MBB.end(); in ProcessBlock()
396 MachineBasicBlock *From, in isWorthBreakingCriticalEdge()
397 MachineBasicBlock *To) { in isWorthBreakingCriticalEdge()
447 MachineBasicBlock *FromBB, in PostponeSplitCriticalEdge()
448 MachineBasicBlock *ToBB, in PostponeSplitCriticalEdge()
502 for (MachineBasicBlock::pred_iterator PI = ToBB->pred_begin(), in PostponeSplitCriticalEdge()
518 MachineBasicBlock *MBB, in isProfitableToSinkTo()
519 MachineBasicBlock *SuccToSinkTo, in isProfitableToSinkTo()
538 MachineBasicBlock *UseBlock = UseInst.getParent(); in isProfitableToSinkTo()
549 if (MachineBasicBlock *MBB2 = in isProfitableToSinkTo()
560 SmallVector<MachineBasicBlock *, 4> &
561 MachineSinking::GetAllSortedSuccessors(MachineInstr &MI, MachineBasicBlock *MBB, in GetAllSortedSuccessors()
568 SmallVector<MachineBasicBlock *, 4> AllSuccs(MBB->succ_begin(), in GetAllSortedSuccessors()
590 [this](const MachineBasicBlock *L, const MachineBasicBlock *R) { in GetAllSortedSuccessors()
604 MachineBasicBlock *
605 MachineSinking::FindSuccToSinkTo(MachineInstr &MI, MachineBasicBlock *MBB, in FindSuccToSinkTo()
615 MachineBasicBlock *SuccToSinkTo = nullptr; in FindSuccToSinkTo()
659 for (MachineBasicBlock *SuccBlock : in FindSuccToSinkTo()
742 static void performSink(MachineInstr &MI, MachineBasicBlock &SuccToSinkTo, in performSink()
743 MachineBasicBlock::iterator InsertPos, in performSink()
763 MachineBasicBlock *ParentBlock = MI.getParent(); in performSink()
765 ++MachineBasicBlock::iterator(MI)); in performSink()
773 ++MachineBasicBlock::iterator(DbgMI)); in performSink()
808 MachineBasicBlock *ParentBlock = MI.getParent(); in SinkInstruction()
809 MachineBasicBlock *SuccToSinkTo = in SinkInstruction()
886 MachineBasicBlock::iterator InsertPos = SuccToSinkTo->begin(); in SinkInstruction()
968 bool tryToSinkCopy(MachineBasicBlock &BB, MachineFunction &MF,
979 static bool aliasWithRegsInLiveIn(MachineBasicBlock &MBB, unsigned Reg, in aliasWithRegsInLiveIn()
986 static MachineBasicBlock *
987 getSingleLiveInSuccBB(MachineBasicBlock &CurBB, in getSingleLiveInSuccBB()
988 const SmallPtrSetImpl<MachineBasicBlock *> &SinkableBBs, in getSingleLiveInSuccBB()
991 MachineBasicBlock *BB = nullptr; in getSingleLiveInSuccBB()
1013 static MachineBasicBlock *
1014 getSingleLiveInSuccBB(MachineBasicBlock &CurBB, in getSingleLiveInSuccBB()
1015 const SmallPtrSetImpl<MachineBasicBlock *> &SinkableBBs, in getSingleLiveInSuccBB()
1018 MachineBasicBlock *SingleBB = nullptr; in getSingleLiveInSuccBB()
1020 MachineBasicBlock *BB = in getSingleLiveInSuccBB()
1029 static void clearKillFlags(MachineInstr *MI, MachineBasicBlock &CurBB, in clearKillFlags()
1037 MachineBasicBlock::iterator NI = std::next(MI->getIterator()); in clearKillFlags()
1049 static void updateLiveIn(MachineInstr *MI, MachineBasicBlock *SuccBB, in updateLiveIn()
1099 bool PostRAMachineSinking::tryToSinkCopy(MachineBasicBlock &CurBB, in tryToSinkCopy()
1103 SmallPtrSet<MachineBasicBlock *, 2> SinkableBBs; in tryToSinkCopy()
1107 for (MachineBasicBlock *SI : CurBB.successors()) in tryToSinkCopy()
1170 MachineBasicBlock *SuccBB = in tryToSinkCopy()
1195 MachineBasicBlock::iterator InsertPos = SuccBB->getFirstNonPHI(); in tryToSinkCopy()