summaryrefslogtreecommitdiffstats
path: root/lld/ELF/Target.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lld/ELF/Target.cpp')
-rw-r--r--lld/ELF/Target.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lld/ELF/Target.cpp b/lld/ELF/Target.cpp
index 893bb5ee0e1..9672723dceb 100644
--- a/lld/ELF/Target.cpp
+++ b/lld/ELF/Target.cpp
@@ -328,7 +328,8 @@ TargetInfo::PltNeed TargetInfo::needsPlt(uint32_t Type,
// plt. That is identified by special relocation types (R_X86_64_JUMP_SLOT,
// R_386_JMP_SLOT, etc).
if (auto *SS = dyn_cast<SharedSymbol<ELFT>>(&S))
- if (SS->Sym.getType() == STT_FUNC && !refersToGotEntry(Type))
+ if (!Config->Shared && SS->Sym.getType() == STT_FUNC &&
+ !refersToGotEntry(Type))
return Plt_Implicit;
return Plt_No;
OpenPOWER on IntegriCloud