Lines Matching refs:MachineBasicBlock
102 MachineBasicBlock *getElseTarget(MachineBasicBlock *MBB) const;
104 void collectElseRegionBlocks(MachineBasicBlock *Flow,
105 MachineBasicBlock *Endif,
106 SmallSetVector<MachineBasicBlock *, 16> &) const;
109 collectCandidateRegisters(MachineBasicBlock *If, MachineBasicBlock *Flow,
110 MachineBasicBlock *Endif,
111 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks,
115 MachineBasicBlock *LoopHeader, MachineBasicBlock *LoopEnd,
117 SmallSetVector<MachineBasicBlock *, 2> &Blocks,
120 void findNonPHIUsesInBlock(Register Reg, MachineBasicBlock *MBB,
123 void updateLiveRangeInThenRegion(Register Reg, MachineBasicBlock *If,
124 MachineBasicBlock *Flow) const;
127 Register Reg, Register NewReg, MachineBasicBlock *Flow,
128 MachineBasicBlock *Endif,
129 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks) const;
132 optimizeLiveRange(Register Reg, MachineBasicBlock *If,
133 MachineBasicBlock *Flow, MachineBasicBlock *Endif,
134 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks) const;
137 Register Reg, MachineBasicBlock *LoopHeader,
138 SmallSetVector<MachineBasicBlock *, 2> &LoopBlocks,
174 MachineBasicBlock *
175 SIOptimizeVGPRLiveRange::getElseTarget(MachineBasicBlock *MBB) const { in getElseTarget()
184 MachineBasicBlock *Flow, MachineBasicBlock *Endif, in collectElseRegionBlocks()
185 SmallSetVector<MachineBasicBlock *, 16> &Blocks) const { in collectElseRegionBlocks() argument
188 MachineBasicBlock *MBB = Endif; in collectElseRegionBlocks()
212 Register Reg, MachineBasicBlock *MBB, in findNonPHIUsesInBlock()
223 MachineBasicBlock *If, MachineBasicBlock *Flow, MachineBasicBlock *Endif, in collectCandidateRegisters()
224 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks, in collectCandidateRegisters() argument
245 const MachineBasicBlock *DefMBB = MRI->getVRegDef(MOReg)->getParent(); in collectCandidateRegisters()
293 const MachineBasicBlock *DefMBB = MRI->getVRegDef(Reg)->getParent(); in collectCandidateRegisters()
331 MachineBasicBlock *LoopHeader, MachineBasicBlock *LoopEnd, in collectWaterfallCandidateRegisters()
333 SmallSetVector<MachineBasicBlock *, 2> &Blocks, in collectWaterfallCandidateRegisters() argument
370 MachineBasicBlock *DefMBB = MRI->getVRegDef(MOReg)->getParent(); in collectWaterfallCandidateRegisters()
401 Register Reg, MachineBasicBlock *If, MachineBasicBlock *Flow) const { in updateLiveRangeInThenRegion()
402 SetVector<MachineBasicBlock *> Blocks; in updateLiveRangeInThenRegion()
403 SmallVector<MachineBasicBlock *> WorkList({If}); in updateLiveRangeInThenRegion()
418 for (MachineBasicBlock *MBB : Blocks) { in updateLiveRangeInThenRegion()
425 SmallPtrSet<MachineBasicBlock *, 4> PHIIncoming; in updateLiveRangeInThenRegion()
437 for (MachineBasicBlock *MBB : Blocks) { in updateLiveRangeInThenRegion()
470 Register Reg, Register NewReg, MachineBasicBlock *Flow, in updateLiveRangeInElseRegion()
471 MachineBasicBlock *Endif, in updateLiveRangeInElseRegion()
472 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks) const { in updateLiveRangeInElseRegion() argument
500 Register Reg, MachineBasicBlock *If, MachineBasicBlock *Flow, in optimizeLiveRange()
501 MachineBasicBlock *Endif, in optimizeLiveRange()
502 SmallSetVector<MachineBasicBlock *, 16> &ElseBlocks) const { in optimizeLiveRange() argument
544 Register Reg, MachineBasicBlock *LoopHeader, in optimizeWaterfallLiveRange()
545 SmallSetVector<MachineBasicBlock *, 2> &Blocks, in optimizeWaterfallLiveRange() argument
588 MachineBasicBlock *KillBlock = Kill->getParent(); in optimizeWaterfallLiveRange()
641 for (MachineBasicBlock &MBB : MF) { in runOnMachineFunction()
645 MachineBasicBlock *IfTarget = MI.getOperand(2).getMBB(); in runOnMachineFunction()
654 SmallSetVector<MachineBasicBlock *, 16> ElseBlocks; in runOnMachineFunction()
681 SmallSetVector<MachineBasicBlock *, 2> Blocks; in runOnMachineFunction()