Preallocate vector, avoid unnecessary vector growth.
authorBenjamin Kramer <benny.kra@googlemail.com>
Sun, 1 Aug 2010 11:43:26 +0000 (11:43 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Sun, 1 Aug 2010 11:43:26 +0000 (11:43 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109971 91177308-0d34-0410-b5e6-96231b3b80d8

lib/VMCore/Constants.cpp

index b833c4eaa47ff2a61c1c0b608bf49c56e5e4c689..e9a95c9900ddc7dd820ee831b91acd6c02a8f788 100644 (file)
@@ -526,6 +526,7 @@ Constant* ConstantArray::get(const ArrayType* T, Constant* const* Vals,
 Constant* ConstantArray::get(LLVMContext &Context, StringRef Str,
                              bool AddNull) {
   std::vector<Constant*> ElementVals;
+  ElementVals.reserve(Str.size() + size_t(AddNull));
   for (unsigned i = 0; i < Str.size(); ++i)
     ElementVals.push_back(ConstantInt::get(Type::getInt8Ty(Context), Str[i]));