Lines Matching defs:MachineBasicBlock
105 MachineBasicBlock *getElseTarget(MachineBasicBlock *MBB) const;
107 void collectElseRegionBlocks(MachineBasicBlock *Flow,
108 MachineBasicBlock *Endif,
109 SmallSetVector<MachineBasicBlock *, 16> &) const;
112 collectCandidateRegisters(MachineBasicBlock *If, MachineBasicBlock *Flow,
113 MachineBasicBlock *Endif,
114 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks,
118 MachineBasicBlock *LoopHeader, MachineBasicBlock *LoopEnd,
120 SmallSetVector<MachineBasicBlock *, 2> &Blocks,
123 void findNonPHIUsesInBlock(Register Reg, MachineBasicBlock *MBB,
126 void updateLiveRangeInThenRegion(Register Reg, MachineBasicBlock *If,
127 MachineBasicBlock *Flow) const;
130 Register Reg, Register NewReg, MachineBasicBlock *Flow,
131 MachineBasicBlock *Endif,
132 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks) const;
135 optimizeLiveRange(Register Reg, MachineBasicBlock *If,
136 MachineBasicBlock *Flow, MachineBasicBlock *Endif,
137 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks) const;
140 Register Reg, MachineBasicBlock *LoopHeader,
141 SmallSetVector<MachineBasicBlock *, 2> &LoopBlocks,
183 MachineBasicBlock *
184 SIOptimizeVGPRLiveRange::getElseTarget(MachineBasicBlock *MBB) const {
193 MachineBasicBlock *Flow, MachineBasicBlock *Endif,
194 SmallSetVector<MachineBasicBlock *, 16> &Blocks) const {
197 MachineBasicBlock *MBB = Endif;
221 Register Reg, MachineBasicBlock *MBB,
232 MachineBasicBlock *If, MachineBasicBlock *Flow, MachineBasicBlock *Endif,
233 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks,
254 const MachineBasicBlock *DefMBB = MRI->getVRegDef(MOReg)->getParent();
302 const MachineBasicBlock *DefMBB = MRI->getVRegDef(Reg)->getParent();
340 MachineBasicBlock *LoopHeader, MachineBasicBlock *LoopEnd,
342 SmallSetVector<MachineBasicBlock *, 2> &Blocks,
379 MachineBasicBlock *DefMBB = MRI->getVRegDef(MOReg)->getParent();
410 Register Reg, MachineBasicBlock *If, MachineBasicBlock *Flow) const {
411 SetVector<MachineBasicBlock *> Blocks;
412 SmallVector<MachineBasicBlock *> WorkList({If});
425 for (MachineBasicBlock *MBB : Blocks) {
432 SmallPtrSet<MachineBasicBlock *, 4> PHIIncoming;
444 for (MachineBasicBlock *MBB : Blocks) {
477 Register Reg, Register NewReg, MachineBasicBlock *Flow,
478 MachineBasicBlock *Endif,
479 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks) const {
507 Register Reg, MachineBasicBlock *If, MachineBasicBlock *Flow,
508 MachineBasicBlock *Endif,
509 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks) const {
560 Register Reg, MachineBasicBlock *LoopHeader,
561 SmallSetVector<MachineBasicBlock *, 2> &Blocks,
604 MachineBasicBlock *KillBlock = Kill->getParent();
681 for (MachineBasicBlock &MBB : MF) {
685 MachineBasicBlock *IfTarget = MI.getOperand(2).getMBB();
694 SmallSetVector<MachineBasicBlock *, 16> ElseBlocks;
721 SmallSetVector<MachineBasicBlock *, 2> Blocks;