Lines Matching defs:BB

69 bool MachineSSAUpdater::HasValueForBlock(MachineBasicBlock *BB) const {
70 return getAvailableVals(AV).count(BB);
75 void MachineSSAUpdater::AddAvailableValue(MachineBasicBlock *BB, Register V) {
76 getAvailableVals(AV)[BB] = V;
81 Register MachineSSAUpdater::GetValueAtEndOfBlock(MachineBasicBlock *BB) {
82 return GetValueAtEndOfBlockInternal(BB);
86 Register LookForIdenticalPHI(MachineBasicBlock *BB,
88 if (BB->empty())
91 MachineBasicBlock::iterator I = BB->begin();
98 while (I != BB->end() && I->isPHI()) {
120 MachineBasicBlock *BB, MachineBasicBlock::iterator I,
125 return BuildMI(*BB, I, DebugLoc(), TII->get(Opcode), NewVR);
135 /// 'use' in BB. Consider code like this:
148 Register MachineSSAUpdater::GetValueInMiddleOfBlock(MachineBasicBlock *BB,
152 if (!HasValueForBlock(BB))
153 return GetValueAtEndOfBlockInternal(BB, ExistingValueOnly);
156 if (BB->pred_empty()) {
162 BB, BB->getFirstTerminator(),
173 for (MachineBasicBlock *PredBB : BB->predecessors()) {
189 // If an identical PHI is already in BB, just reuse it.
190 Register DupPHI = LookForIdenticalPHI(BB, PredValues);
199 MachineBasicBlock::iterator Loc = BB->empty() ? BB->end() : BB->begin();
200 MachineInstrBuilder InsertedPHI = InsertNewDef(TargetOpcode::PHI, BB,
259 static BlkSucc_iterator BlkSucc_begin(BlkT *BB) { return BB->succ_begin(); }
260 static BlkSucc_iterator BlkSucc_end(BlkT *BB) { return BB->succ_end(); }
291 /// FindPredecessorBlocks - Put the predecessors of BB into the Preds
293 static void FindPredecessorBlocks(MachineBasicBlock *BB,
295 append_range(*Preds, BB->predecessors());
300 static Register GetUndefVal(MachineBasicBlock *BB,
304 BB, BB->getFirstNonPHI(),
312 static Register CreateEmptyPHI(MachineBasicBlock *BB, unsigned NumPreds,
314 MachineBasicBlock::iterator Loc = BB->empty() ? BB->end() : BB->begin();
315 MachineInstr *PHI = InsertNewDef(TargetOpcode::PHI, BB, Loc,
360 /// for the specified BB and if so, return it. If not, construct SSA form by
364 MachineSSAUpdater::GetValueAtEndOfBlockInternal(MachineBasicBlock *BB,
367 Register ExistingVal = AvailableVals.lookup(BB);
372 return Impl.GetValue(BB);