[lld] r240859 - COFF: Avoid vector reallocation. NFC.

Rui Ueyama ruiu at google.com
Fri Jun 26 16:51:45 PDT 2015


Author: ruiu
Date: Fri Jun 26 18:51:45 2015
New Revision: 240859

URL: http://llvm.org/viewvc/llvm-project?rev=240859&view=rev
Log:
COFF: Avoid vector reallocation. NFC.

Modified:
    lld/trunk/COFF/InputFiles.cpp

Modified: lld/trunk/COFF/InputFiles.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/COFF/InputFiles.cpp?rev=240859&r1=240858&r2=240859&view=diff
==============================================================================
--- lld/trunk/COFF/InputFiles.cpp (original)
+++ lld/trunk/COFF/InputFiles.cpp Fri Jun 26 18:51:45 2015
@@ -57,8 +57,10 @@ std::error_code ArchiveFile::parse() {
   File = std::move(ArchiveOrErr.get());
 
   // Allocate a buffer for Lazy objects.
-  size_t BufSize = File->getNumberOfSymbols() * sizeof(Lazy);
+  size_t NumSyms = File->getNumberOfSymbols();
+  size_t BufSize = NumSyms * sizeof(Lazy);
   Lazy *Buf = (Lazy *)Alloc.Allocate(BufSize, llvm::alignOf<Lazy>());
+  SymbolBodies.reserve(NumSyms);
 
   // Read the symbol table to construct Lazy objects.
   uint32_t I = 0;





More information about the llvm-commits mailing list