[llvm-commits] [llvm] r107234 - /llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Tue Jun 29 17:30:36 PDT 2010


Author: stoklund
Date: Tue Jun 29 19:30:36 2010
New Revision: 107234

URL: http://llvm.org/viewvc/llvm-project?rev=107234&view=rev
Log:
Use skipInstruction() as a simpler way of iterating over instructions using SrcReg

Modified:
    llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp

Modified: llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp?rev=107234&r1=107233&r2=107234&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp (original)
+++ llvm/trunk/lib/CodeGen/SimpleRegisterCoalescing.cpp Tue Jun 29 19:30:36 2010
@@ -742,16 +742,8 @@
   unsigned DstReg = CP.getDstReg();
   unsigned SubIdx = CP.getSubIdx();
 
-  // Collect all the instructions using SrcReg.
-  SmallPtrSet<MachineInstr*, 32> Instrs;
-  for (MachineRegisterInfo::reg_iterator I = mri_->reg_begin(SrcReg),
-         E = mri_->reg_end(); I != E; ++I)
-    Instrs.insert(&*I);
-
-  for (SmallPtrSet<MachineInstr*, 32>::const_iterator I = Instrs.begin(),
-       E = Instrs.end(); I != E; ++I) {
-    MachineInstr *UseMI = *I;
-
+  for (MachineRegisterInfo::reg_iterator I = mri_->reg_begin(SrcReg);
+       MachineInstr *UseMI = I.skipInstruction();) {
     // A PhysReg copy that won't be coalesced can perhaps be rematerialized
     // instead.
     if (DstIsPhys) {





More information about the llvm-commits mailing list