diff --git a/lib/CodeGen/LiveVariables.cpp b/lib/CodeGen/LiveVariables.cpp index 7ec4d32c1e8..358d5d0829d 100644 --- a/lib/CodeGen/LiveVariables.cpp +++ b/lib/CodeGen/LiveVariables.cpp @@ -237,9 +237,9 @@ bool LiveVariables::runOnMachineFunction(MachineFunction &MF) { } // Loop over implicit defs, defining them. - if (const unsigned *ImplicitDefs = MID.ImplicitDefs) - for (unsigned i = 0; ImplicitDefs[i]; ++i) - HandlePhysRegDef(ImplicitDefs[i], MI); + for (const unsigned *ImplicitDefs = MID.ImplicitDefs; + *ImplicitDefs; ++ImplicitDefs) + HandlePhysRegDef(*ImplicitDefs, MI); // Process all explicit defs... for (unsigned i = 0; i != NumOperandsToProcess; ++i) { diff --git a/lib/CodeGen/RegAllocLocal.cpp b/lib/CodeGen/RegAllocLocal.cpp index d1a6df09cc4..4a3eb110c8d 100644 --- a/lib/CodeGen/RegAllocLocal.cpp +++ b/lib/CodeGen/RegAllocLocal.cpp @@ -551,13 +551,13 @@ void RA::AllocateBasicBlock(MachineBasicBlock &MBB) { } // Loop over the implicit defs, spilling them as well. - if (const unsigned *ImplicitDefs = TID.ImplicitDefs) - for (unsigned i = 0; ImplicitDefs[i]; ++i) { - unsigned Reg = ImplicitDefs[i]; - spillPhysReg(MBB, I, Reg); - PhysRegsUseOrder.push_back(Reg); - PhysRegsUsed[Reg] = 0; // It is free and reserved now - } + for (const unsigned *ImplicitDefs = TID.ImplicitDefs; + *ImplicitDefs; ++ImplicitDefs) { + unsigned Reg = *ImplicitDefs; + spillPhysReg(MBB, I, Reg); + PhysRegsUseOrder.push_back(Reg); + PhysRegsUsed[Reg] = 0; // It is free and reserved now + } // Okay, we have allocated all of the source operands and spilled any values // that would be destroyed by defs of this instruction. Loop over the