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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203865 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson
2014-03-13 23:12:04 +00:00
parent d3fc1be4f6
commit bf63022492
35 changed files with 255 additions and 150 deletions
+3 -3
View File
@@ -418,9 +418,9 @@ void VirtRegRewriter::rewrite() {
// Check if this register has a use that will impact the rest of the
// code. Uses in debug and noreturn instructions do not impact the
// generated code.
for (MachineRegisterInfo::reg_nodbg_iterator It =
MRI->reg_nodbg_begin(Reg),
EndIt = MRI->reg_nodbg_end(); It != EndIt; ++It) {
for (MachineRegisterInfo::reg_instr_nodbg_iterator It =
MRI->reg_instr_nodbg_begin(Reg),
EndIt = MRI->reg_instr_nodbg_end(); It != EndIt; ++It) {
if (!NoReturnInsts.count(&(*It))) {
MRI->setPhysRegUsed(Reg);
break;