<p dir="ltr">Thanks! </p>
<div class="gmail_quote">On Oct 11, 2015 1:46 PM, "Rui Ueyama via llvm-commits" <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: ruiu<br>
Date: Sun Oct 11 12:44:22 2015<br>
New Revision: 249987<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=249987&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=249987&view=rev</a><br>
Log:<br>
ELF2: Use SmallPtrSet instead of unordered_set.<br>
<br>
This patch addresses Rafael's review comments to r249955.<br>
<br>
Modified:<br>
    lld/trunk/ELF/Writer.cpp<br>
<br>
Modified: lld/trunk/ELF/Writer.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Writer.cpp?rev=249987&r1=249986&r2=249987&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Writer.cpp?rev=249987&r1=249986&r2=249987&view=diff</a><br>
==============================================================================<br>
--- lld/trunk/ELF/Writer.cpp (original)<br>
+++ lld/trunk/ELF/Writer.cpp Sun Oct 11 12:44:22 2015<br>
@@ -13,8 +13,8 @@<br>
 #include "SymbolTable.h"<br>
 #include "Target.h"<br>
<br>
+#include "llvm/ADT/SmallPtrSet.h"<br>
 #include "llvm/Support/FileOutputBuffer.h"<br>
-#include <unordered_set><br>
<br>
 using namespace llvm;<br>
 using namespace llvm::ELF;<br>
@@ -473,6 +473,9 @@ template <class ELFT> void Writer<ELFT>:<br>
       ++NumPhdrs;<br>
     }<br>
   }<br>
+<br>
+  // Reserve space needed for the program header so that the array<br>
+  // will never be resized.<br>
   Phdrs.reserve(NumPhdrs);<br>
<br>
   // The first Phdr entry is PT_PHDR which describes the program header itself.<br>
@@ -494,7 +497,7 @@ template <class ELFT> void Writer<ELFT>:<br>
   Elf_Phdr *FileHeader = &Phdrs.back();<br>
   phdrSet(FileHeader, PT_LOAD, PF_R, 0, getVAStart(), Target->getPageSize());<br>
<br>
-  std::unordered_set<Elf_Phdr *> Closed;<br>
+  SmallPtrSet<Elf_Phdr *, 8> Closed;<br>
   for (OutputSectionBase<ELFT::Is64Bits> *Sec : OutputSections) {<br>
     if (Sec->getSize()) {<br>
       uintX_t Flags = toPhdrFlags(Sec->getFlags());<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div>