Phase 2 of the great MachineRegisterInfo cleanup. This time, we're changing

operator* on the by-operand iterators to return a MachineOperand& rather than
a MachineInstr&.  At this point they almost behave like normal iterators!

Again, this requires making some existing loops more verbose, but should pave
the way for the big range-based for-loop cleanups in the future.

llvm-svn: 203865
This commit is contained in:
Owen Anderson
2014-03-13 23:12:04 +00:00
parent b00cc1f92f
commit 16c6bf49b7
35 changed files with 255 additions and 150 deletions

View File

@@ -34,11 +34,11 @@ llvm::findPHICopyInsertPoint(MachineBasicBlock* MBB, MachineBasicBlock* SuccMBB,
// Discover any defs/uses in this basic block.
SmallPtrSet<MachineInstr*, 8> DefUsesInMBB;
MachineRegisterInfo& MRI = MBB->getParent()->getRegInfo();
for (MachineRegisterInfo::reg_iterator RI = MRI.reg_begin(SrcReg),
RE = MRI.reg_end(); RI != RE; ++RI) {
MachineInstr* DefUseMI = &*RI;
if (DefUseMI->getParent() == MBB)
DefUsesInMBB.insert(DefUseMI);
for (MachineRegisterInfo::reg_instr_iterator
RI = MRI.reg_instr_begin(SrcReg), RE = MRI.reg_instr_end();
RI != RE; ++RI) {
if (RI->getParent() == MBB)
DefUsesInMBB.insert(&*RI);
}
MachineBasicBlock::iterator InsertPoint;