From 699d144a4b726e11d5e72e23ab9b7b665ca9341f Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 31 Jan 2007 19:59:55 +0000 Subject: [PATCH] eliminate temporary vectors git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33712 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/IPO/GlobalOpt.cpp | 11 +++++------ lib/Transforms/IPO/SimplifyLibCalls.cpp | 9 +++------ 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/lib/Transforms/IPO/GlobalOpt.cpp b/lib/Transforms/IPO/GlobalOpt.cpp index f76c152b8ad..342a481af74 100644 --- a/lib/Transforms/IPO/GlobalOpt.cpp +++ b/lib/Transforms/IPO/GlobalOpt.cpp @@ -452,11 +452,11 @@ static GlobalVariable *SRAGlobal(GlobalVariable *GV) { &Idxs[0], Idxs.size()); } else { GetElementPtrInst *GEPI = cast(GEP); - std::vector Idxs; + SmallVector Idxs; Idxs.push_back(NullInt); for (unsigned i = 3, e = GEPI->getNumOperands(); i != e; ++i) Idxs.push_back(GEPI->getOperand(i)); - NewPtr = new GetElementPtrInst(NewPtr, Idxs, + NewPtr = new GetElementPtrInst(NewPtr, &Idxs[0], Idxs.size(), GEPI->getName()+"."+utostr(Val), GEPI); } GEP->replaceAllUsesWith(NewPtr); @@ -684,10 +684,9 @@ static GlobalVariable *OptimizeGlobalAddressOfMalloc(GlobalVariable *GV, MallocInst *NewMI = new MallocInst(NewTy, Constant::getNullValue(Type::Int32Ty), MI->getAlignment(), MI->getName(), MI); - std::vector Indices; - Indices.push_back(Constant::getNullValue(Type::Int32Ty)); - Indices.push_back(Indices[0]); - Value *NewGEP = new GetElementPtrInst(NewMI, Indices, + Value* Indices[2]; + Indices[0] = Indices[1] = Constant::getNullValue(Type::Int32Ty); + Value *NewGEP = new GetElementPtrInst(NewMI, Indices, 2, NewMI->getName()+".el0", MI); MI->replaceAllUsesWith(NewGEP); MI->eraseFromParent(); diff --git a/lib/Transforms/IPO/SimplifyLibCalls.cpp b/lib/Transforms/IPO/SimplifyLibCalls.cpp index e4eb6e42c11..3ace4b365f4 100644 --- a/lib/Transforms/IPO/SimplifyLibCalls.cpp +++ b/lib/Transforms/IPO/SimplifyLibCalls.cpp @@ -505,10 +505,8 @@ public: // Now that we have the destination's length, we must index into the // destination's pointer to get the actual memcpy destination (end of // the string .. we're concatenating). - std::vector idx; - idx.push_back(strlen_inst); GetElementPtrInst* gep = - new GetElementPtrInst(dest,idx,dest->getName()+".indexed",ci); + new GetElementPtrInst(dest, strlen_inst, dest->getName()+".indexed", ci); // We have enough information to now generate the memcpy call to // do the concatenation for us. @@ -596,9 +594,8 @@ public: // strchr(s,c) -> offset_of_in(c,s) // (if c is a constant integer and s is a constant string) if (char_found) { - std::vector indices; - indices.push_back(ConstantInt::get(Type::Int64Ty,offset)); - GetElementPtrInst* GEP = new GetElementPtrInst(ci->getOperand(1),indices, + Value* Idx = ConstantInt::get(Type::Int64Ty,offset); + GetElementPtrInst* GEP = new GetElementPtrInst(ci->getOperand(1), Idx, ci->getOperand(1)->getName()+".strchr",ci); ci->replaceAllUsesWith(GEP); } else {