summaryrefslogtreecommitdiffstats
path: root/lld/ELF/Writer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lld/ELF/Writer.cpp')
-rw-r--r--lld/ELF/Writer.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp
index 58fc6fab7c9..dd2cae8e861 100644
--- a/lld/ELF/Writer.cpp
+++ b/lld/ELF/Writer.cpp
@@ -180,9 +180,9 @@ static Defined *addOptionalRegular(StringRef Name, SectionBase *Sec,
if (!S || S->isDefined())
return nullptr;
- return cast<Defined>(Symtab->addSymbol(
- Defined{/*File=*/nullptr, Name, Binding, StOther, STT_NOTYPE, Val,
- /*Size=*/0, Sec}));
+ S->resolve(Defined{/*File=*/nullptr, Name, Binding, StOther, STT_NOTYPE, Val,
+ /*Size=*/0, Sec});
+ return cast<Defined>(S);
}
static Defined *addAbsolute(StringRef Name) {
@@ -239,9 +239,8 @@ void elf::addReservedSymbols() {
if (Config->EMachine == EM_PPC || Config->EMachine == EM_PPC64)
GotOff = 0x8000;
- Symtab->addSymbol(Defined{/*File=*/nullptr, GotSymName, STB_GLOBAL,
- STV_HIDDEN, STT_NOTYPE, GotOff, /*Size=*/0,
- Out::ElfHeader});
+ S->resolve(Defined{/*File=*/nullptr, GotSymName, STB_GLOBAL, STV_HIDDEN,
+ STT_NOTYPE, GotOff, /*Size=*/0, Out::ElfHeader});
ElfSym::GlobalOffsetTable = cast<Defined>(S);
}
OpenPOWER on IntegriCloud