remove temporary vectors.
authorChris Lattner <sabre@nondot.org>
Wed, 31 Jan 2007 20:08:52 +0000 (20:08 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 31 Jan 2007 20:08:52 +0000 (20:08 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33715 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/IndVarSimplify.cpp
lib/Transforms/Scalar/InstructionCombining.cpp
lib/Transforms/Scalar/LowerGC.cpp

index c11d249f1f50bb63ced7f595f16b960b55eb123d..30435df86052f5ecedf6e129db241a6b4f50099c 100644 (file)
@@ -197,8 +197,7 @@ void IndVarSimplify::EliminatePointerRecurrence(PHINode *PN,
         std::string Name = PN->getName(); PN->setName("");
         Value *PreInc =
           new GetElementPtrInst(PN->getIncomingValue(PreheaderIdx),
-                                std::vector<Value*>(1, NewPhi), Name,
-                                InsertPos);
+                                NewPhi, Name, InsertPos);
         PN->replaceAllUsesWith(PreInc);
       }
 
index a47ecd002316417bf7ab7b9eea1353c9017be4de..aec61ab07672d9d22a0ff055da638b10209d84c7 100644 (file)
@@ -6418,8 +6418,8 @@ Instruction *InstCombiner::visitBitCast(CastInst &CI) {
 
       // If we found a path from the src to dest, create the getelementptr now.
       if (SrcElTy == DstElTy) {
-        std::vector<Value*> Idxs(NumZeros+1, ZeroUInt);
-        return new GetElementPtrInst(Src, Idxs);
+        SmallVector<Value*, 8> Idxs(NumZeros+1, ZeroUInt);
+        return new GetElementPtrInst(Src, &Idxs[0], Idxs.size());
       }
     }
   }
index a98981359d17de7f9dc46de2e26ffbd073a90e99..7c88aa29026dca45f70dc4b72f2aafa2c3852606 100644 (file)
@@ -229,10 +229,7 @@ bool LowerGC::runOnFunction(Function &F) {
   Constant *One  = ConstantInt::get(Type::Int32Ty, 1);
 
   // Get a pointer to the prev pointer.
-  std::vector<Value*> Par;
-  Par.push_back(Zero);
-  Par.push_back(Zero);
-  Value *PrevPtrPtr = new GetElementPtrInst(AI, Par, "prevptrptr", IP);
+  Value *PrevPtrPtr = new GetElementPtrInst(AI, Zero, Zero, "prevptrptr", IP);
 
   // Load the previous pointer.
   Value *PrevPtr = new LoadInst(RootChain, "prevptr", IP);
@@ -240,12 +237,12 @@ bool LowerGC::runOnFunction(Function &F) {
   new StoreInst(PrevPtr, PrevPtrPtr, IP);
 
   // Set the number of elements in this record.
-  Par[1] = ConstantInt::get(Type::Int32Ty, 1);
-  Value *NumEltsPtr = new GetElementPtrInst(AI, Par, "numeltsptr", IP);
+  Value *NumEltsPtr = new GetElementPtrInst(AI, Zero, One, "numeltsptr", IP);
   new StoreInst(ConstantInt::get(Type::Int32Ty, GCRoots.size()), NumEltsPtr,IP);
 
+  Value* Par[4];
+  Par[0] = Zero;
   Par[1] = ConstantInt::get(Type::Int32Ty, 2);
-  Par.resize(4);
 
   const PointerType *PtrLocTy =
     cast<PointerType>(GCRootInt->getFunctionType()->getParamType(0));
@@ -256,13 +253,13 @@ bool LowerGC::runOnFunction(Function &F) {
     // Initialize the meta-data pointer.
     Par[2] = ConstantInt::get(Type::Int32Ty, i);
     Par[3] = One;
-    Value *MetaDataPtr = new GetElementPtrInst(AI, Par, "MetaDataPtr", IP);
+    Value *MetaDataPtr = new GetElementPtrInst(AI, Par, 4, "MetaDataPtr", IP);
     assert(isa<Constant>(GCRoots[i]->getOperand(2)) && "Must be a constant");
     new StoreInst(GCRoots[i]->getOperand(2), MetaDataPtr, IP);
 
     // Initialize the root pointer to null on entry to the function.
     Par[3] = Zero;
-    Value *RootPtrPtr = new GetElementPtrInst(AI, Par, "RootEntPtr", IP);
+    Value *RootPtrPtr = new GetElementPtrInst(AI, Par, 4, "RootEntPtr", IP);
     new StoreInst(Null, RootPtrPtr, IP);
 
     // Each occurrance of the llvm.gcroot intrinsic now turns into an