svn commit: r326957 - head/contrib/llvm/tools/lld/ELF
Ed Maste
emaste at FreeBSD.org
Tue Dec 19 03:15:21 UTC 2017
Author: emaste
Date: Tue Dec 19 03:15:20 2017
New Revision: 326957
URL: https://svnweb.freebsd.org/changeset/base/326957
Log:
lld: Don't write preemptible symbol values to the .got.
It is not necessary and matches what bfd and gold do.
This was a regression from [LLVM] r315658.
Obtained from: LLVM r321023 by Rafael Espíndola
Modified:
head/contrib/llvm/tools/lld/ELF/Relocations.cpp
Modified: head/contrib/llvm/tools/lld/ELF/Relocations.cpp
==============================================================================
--- head/contrib/llvm/tools/lld/ELF/Relocations.cpp Tue Dec 19 02:49:11 2017 (r326956)
+++ head/contrib/llvm/tools/lld/ELF/Relocations.cpp Tue Dec 19 03:15:20 2017 (r326957)
@@ -812,7 +812,7 @@ static void addGotEntry(SymbolBody &Sym, bool Preempti
//
// This is ugly -- the difference between REL and RELA should be
// handled in a better way. It's a TODO.
- if (!Config->IsRela)
+ if (!Config->IsRela && !Preemptible)
InX::Got->Relocations.push_back({R_ABS, Target->GotRel, Off, 0, &Sym});
}
}
More information about the svn-src-all
mailing list