[lld] r258385 - Return early before iterating over local symbols. NFC.

Rui Ueyama via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 20 19:07:38 PST 2016


Author: ruiu
Date: Wed Jan 20 21:07:38 2016
New Revision: 258385

URL: http://llvm.org/viewvc/llvm-project?rev=258385&view=rev
Log:
Return early before iterating over local symbols. NFC.

Modified:
    lld/trunk/ELF/Writer.cpp

Modified: lld/trunk/ELF/Writer.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Writer.cpp?rev=258385&r1=258384&r2=258385&view=diff
==============================================================================
--- lld/trunk/ELF/Writer.cpp (original)
+++ lld/trunk/ELF/Writer.cpp Wed Jan 20 21:07:38 2016
@@ -363,6 +363,8 @@ static void reportUndefined(SymbolTable<
 // Local symbols are not in the linker's symbol table. This function scans
 // each object file's symbol table to copy local symbols to the output.
 template <class ELFT> void Writer<ELFT>::copyLocalSymbols() {
+  if (!Out<ELFT>::SymTab)
+    return;
   for (const std::unique_ptr<ObjectFile<ELFT>> &F : Symtab.getObjectFiles()) {
     for (const Elf_Sym &Sym : F->getLocalSymbols()) {
       ErrorOr<StringRef> SymNameOrErr = Sym.getName(F->getStringTable());
@@ -370,8 +372,7 @@ template <class ELFT> void Writer<ELFT>:
       StringRef SymName = *SymNameOrErr;
       if (!shouldKeepInSymtab<ELFT>(*F, SymName, Sym))
         continue;
-      if (Out<ELFT>::SymTab)
-        Out<ELFT>::SymTab->addLocalSymbol(SymName);
+      Out<ELFT>::SymTab->addLocalSymbol(SymName);
     }
   }
 }




More information about the llvm-commits mailing list