[lld] r296773 - Simplify. NFC.

Rui Ueyama via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 2 09:55:29 PST 2017


Author: ruiu
Date: Thu Mar  2 11:55:29 2017
New Revision: 296773

URL: http://llvm.org/viewvc/llvm-project?rev=296773&view=rev
Log:
Simplify. NFC.

Modified:
    lld/trunk/ELF/GdbIndex.cpp

Modified: lld/trunk/ELF/GdbIndex.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/GdbIndex.cpp?rev=296773&r1=296772&r2=296773&view=diff
==============================================================================
--- lld/trunk/ELF/GdbIndex.cpp (original)
+++ lld/trunk/ELF/GdbIndex.cpp Thu Mar  2 11:55:29 2017
@@ -77,22 +77,17 @@ std::pair<bool, GdbSymbol *> GdbHashTab:
 }
 
 void GdbHashTab::finalizeContents() {
-  Table.resize(std::max<uint64_t>(1024, NextPowerOf2(Map.size() * 4 / 3)));
+  uint32_t Size = std::max<uint32_t>(1024, NextPowerOf2(Map.size() * 4 / 3));
+  uint32_t Mask = Size - 1;
+  Table.resize(Size);
 
   for (auto &P : Map) {
     GdbSymbol *Sym = P.second;
+    uint32_t I = Sym->NameHash & Mask;
+    uint32_t Step = ((Sym->NameHash * 17) & Mask) | 1;
 
-    uint32_t I = Sym->NameHash & (Table.size() - 1);
-    uint32_t Step = ((Sym->NameHash * 17) & (Table.size() - 1)) | 1;
-
-    for (;;) {
-      if (Table[I]) {
-        I = (I + Step) & (Table.size() - 1);
-        continue;
-      }
-
-      Table[I] = Sym;
-      break;
-    }
+    while (Table[I])
+      I = (I + Step) & Mask;
+    Table[I] = Sym;
   }
 }




More information about the llvm-commits mailing list