From 90f76fbb54f46e566ac9705be6cebdad156640fe Mon Sep 17 00:00:00 2001 From: Rui Ueyama Date: Thu, 21 Jan 2016 03:07:38 +0000 Subject: Return early before iterating over local symbols. NFC. llvm-svn: 258385 --- lld/ELF/Writer.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp index a8a5aca6b51..bc2c7ad43f9 100644 --- a/lld/ELF/Writer.cpp +++ b/lld/ELF/Writer.cpp @@ -363,6 +363,8 @@ static void reportUndefined(SymbolTable &Symtab, SymbolBody *Sym) { // 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 void Writer::copyLocalSymbols() { + if (!Out::SymTab) + return; for (const std::unique_ptr> &F : Symtab.getObjectFiles()) { for (const Elf_Sym &Sym : F->getLocalSymbols()) { ErrorOr SymNameOrErr = Sym.getName(F->getStringTable()); @@ -370,8 +372,7 @@ template void Writer::copyLocalSymbols() { StringRef SymName = *SymNameOrErr; if (!shouldKeepInSymtab(*F, SymName, Sym)) continue; - if (Out::SymTab) - Out::SymTab->addLocalSymbol(SymName); + Out::SymTab->addLocalSymbol(SymName); } } } -- cgit v1.2.3