diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2015-07-04 00:24:36 +0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2015-07-04 00:24:36 +0300 |
commit | c0ad64543bb64d2a2863c56f34227654ffae57a7 (patch) | |
tree | 0d2c6cfd0221129bb9596e783d88a75b30d37ac3 /lld | |
parent | fdb4d6346a4610dc2ec39eaf241b8dffc6028e5a (diff) |
[ELF/AArch64] Set correct loader name in linking context
This patch reimplements ELFLinkingContext::getDefaultInterpreter for aarch64
with correct loader name. It is required to exclude the loader from DT_NEEDED
in shared library creation.
llvm-svn: 241371
Diffstat (limited to 'lld')
-rw-r--r-- | lld/lib/ReaderWriter/ELF/AArch64/AArch64RelocationPass.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lld/lib/ReaderWriter/ELF/AArch64/AArch64RelocationPass.cpp b/lld/lib/ReaderWriter/ELF/AArch64/AArch64RelocationPass.cpp index 62d3702d7a0a..e2ec319601f3 100644 --- a/lld/lib/ReaderWriter/ELF/AArch64/AArch64RelocationPass.cpp +++ b/lld/lib/ReaderWriter/ELF/AArch64/AArch64RelocationPass.cpp @@ -252,10 +252,10 @@ protected: return got->second; } - /// \brief Create a GOT TPREL entry and change the relocation to a PC32 to - /// the GOT. + /// \brief Create a GOT TPREL entry to local or external TLS variable. std::error_code handleGOTTPREL(const Reference &ref) { - if (isa<DefinedAtom>(ref.target())) + if (isa<DefinedAtom>(ref.target()) || + isa<SharedLibraryAtom>(ref.target())) const_cast<Reference &>(ref).setTarget(getGOTTPREL(ref.target())); return std::error_code(); } |