From a4ca931336adb72a10b41d10f82df2e9345c67a7 Mon Sep 17 00:00:00 2001 From: George Rimar Date: Wed, 18 Oct 2017 08:36:47 +0000 Subject: [PATCH] [ELF] - Remove excessive helper. NFC. Removes addRegular() helper that looks excessive from Writer.cpp. Differential revision: https://reviews.llvm.org/D39006 llvm-svn: 316068 --- lld/ELF/Writer.cpp | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp index 52490d054d55..b368007c2364 100644 --- a/lld/ELF/Writer.cpp +++ b/lld/ELF/Writer.cpp @@ -725,17 +725,6 @@ void PhdrEntry::add(OutputSection *Sec) { Sec->PtLoad = this; } -template -static Symbol *addRegular(StringRef Name, SectionBase *Sec, uint64_t Value, - uint8_t StOther = STV_HIDDEN, - uint8_t Binding = STB_WEAK) { - // The linker generated symbols are added as STB_WEAK to allow user defined - // ones to override them. - return Symtab->addRegular(Name, StOther, STT_NOTYPE, Value, - /*Size=*/0, Binding, Sec, - /*File=*/nullptr); -} - template static DefinedRegular * addOptionalRegular(StringRef Name, SectionBase *Sec, uint64_t Val, @@ -745,8 +734,10 @@ addOptionalRegular(StringRef Name, SectionBase *Sec, uint64_t Val, return nullptr; if (S->isInCurrentDSO()) return nullptr; - return cast( - addRegular(Name, Sec, Val, StOther, Binding)->body()); + Symbol *Sym = Symtab->addRegular(Name, StOther, STT_NOTYPE, Val, + /*Size=*/0, Binding, Sec, + /*File=*/nullptr); + return cast(Sym->body()); } // The beginning and the ending of .rel[a].plt section are marked @@ -1251,7 +1242,9 @@ template void Writer::finalizeSections() { // Even the author of gold doesn't remember why gold behaves that way. // https://sourceware.org/ml/binutils/2002-03/msg00360.html if (InX::DynSymTab) - addRegular("_DYNAMIC", InX::Dynamic, 0); + Symtab->addRegular("_DYNAMIC", STV_HIDDEN, STT_NOTYPE, 0 /*Value*/, + /*Size=*/0, STB_WEAK, InX::Dynamic, + /*File=*/nullptr); // Define __rel[a]_iplt_{start,end} symbols if needed. addRelIpltSymbols();