[lld] r349850 - Simplify. NFC.

Rui Ueyama via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 20 14:54:41 PST 2018


Author: ruiu
Date: Thu Dec 20 14:54:41 2018
New Revision: 349850

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

Modified:
    lld/trunk/ELF/SymbolTable.cpp

Modified: lld/trunk/ELF/SymbolTable.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/SymbolTable.cpp?rev=349850&r1=349849&r2=349850&view=diff
==============================================================================
--- lld/trunk/ELF/SymbolTable.cpp (original)
+++ lld/trunk/ELF/SymbolTable.cpp Thu Dec 20 14:54:41 2018
@@ -494,21 +494,16 @@ void SymbolTable::addShared(StringRef Na
 
   // An undefined symbol with non default visibility must be satisfied
   // in the same DSO.
-  if (WasInserted) {
-    replaceSymbol<SharedSymbol>(S, File, Name, Sym.getBinding(), Sym.st_other,
+  auto Replace = [&](uint8_t Binding) {
+    replaceSymbol<SharedSymbol>(S, File, Name, Binding, Sym.st_other,
                                 Sym.getType(), Sym.st_value, Sym.st_size,
                                 Alignment, VerdefIndex);
-    return;
-  }
+  };
 
-  if ((S->isUndefined() || S->isLazy()) && S->Visibility == STV_DEFAULT) {
-    uint8_t Binding = S->Binding;
-    replaceSymbol<SharedSymbol>(S, File, Name, Sym.getBinding(), Sym.st_other,
-                                Sym.getType(), Sym.st_value, Sym.st_size,
-                                Alignment, VerdefIndex);
-
-    S->Binding = Binding;
-  }
+  if (WasInserted)
+    Replace(Sym.getBinding());
+  else if (S->Visibility == STV_DEFAULT && (S->isUndefined() || S->isLazy()))
+    Replace(S->Binding);
 }
 
 Symbol *SymbolTable::addBitcode(StringRef Name, uint8_t Binding,




More information about the llvm-commits mailing list