The lastOp operand is never used
authorChris Lattner <sabre@nondot.org>
Tue, 21 Oct 2003 16:06:07 +0000 (16:06 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 21 Oct 2003 16:06:07 +0000 (16:06 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9331 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/SparcV9/SparcV9PreSelection.cpp

index 1ab71b66f5820579cee462189c5cad4fc26e6042..014725a73f159e9f9c9231c5436523e01c607427 100644 (file)
@@ -81,7 +81,7 @@ namespace {
     // 
     // visitOneOperand() does all the work for one operand.
     // 
     // 
     // visitOneOperand() does all the work for one operand.
     // 
-    void visitOperands(Instruction &I, int firstOp=0, int lastOp=0);
+    void visitOperands(Instruction &I, int firstOp=0);
     void visitOneOperand(Instruction &I, Value* Op, unsigned opNum,
                          Instruction& insertBefore);
   };
     void visitOneOperand(Instruction &I, Value* Op, unsigned opNum,
                          Instruction& insertBefore);
   };
@@ -208,30 +208,21 @@ PreSelection::visitOneOperand(Instruction &I, Value* Op, unsigned opNum,
 // firstOp and lastOp can be used to skip leading and trailing operands.
 // If lastOp is 0, it defaults to #operands or #incoming Phi values.
 //  
 // firstOp and lastOp can be used to skip leading and trailing operands.
 // If lastOp is 0, it defaults to #operands or #incoming Phi values.
 //  
-inline void
-PreSelection::visitOperands(Instruction &I, int firstOp, int lastOp)
-{
+inline void PreSelection::visitOperands(Instruction &I, int firstOp) {
   // For any instruction other than PHI, copies go just before the instr.
   // For a PHI, operand copies must be before the terminator of the
   // appropriate predecessor basic block.  Remaining logic is simple
   // so just handle PHIs and other instructions separately.
   // 
   // For any instruction other than PHI, copies go just before the instr.
   // For a PHI, operand copies must be before the terminator of the
   // appropriate predecessor basic block.  Remaining logic is simple
   // so just handle PHIs and other instructions separately.
   // 
-  if (PHINode* phi = dyn_cast<PHINode>(&I))
-    {
-      if (lastOp == 0)
-        lastOp = phi->getNumIncomingValues();
-      for (unsigned i=firstOp, N=lastOp; i < N; ++i)
-        this->visitOneOperand(I, phi->getIncomingValue(i),
-                              phi->getOperandNumForIncomingValue(i),
-                              * phi->getIncomingBlock(i)->getTerminator());
-    }
-  else
-    {
-      if (lastOp == 0)
-        lastOp = I.getNumOperands();
-      for (unsigned i=firstOp, N=lastOp; i < N; ++i)
-        this->visitOneOperand(I, I.getOperand(i), i, I);
-    }
+  if (PHINode* phi = dyn_cast<PHINode>(&I)) {
+    for (unsigned i=firstOp, N=phi->getNumIncomingValues(); i != N; ++i)
+      visitOneOperand(I, phi->getIncomingValue(i),
+                      phi->getOperandNumForIncomingValue(i),
+                      * phi->getIncomingBlock(i)->getTerminator());
+  } else {
+    for (unsigned i=firstOp, N=lastOp; i != I.getNumOperands(); ++i)
+      visitOneOperand(I, I.getOperand(i), i, I);
+  }
 }
 
 
 }