svn commit: r339429 - stable/11/contrib/llvm/tools/lld/ELF
Dimitry Andric
dim at FreeBSD.org
Thu Oct 18 19:19:46 UTC 2018
Author: dim
Date: Thu Oct 18 19:19:45 2018
New Revision: 339429
URL: https://svnweb.freebsd.org/changeset/base/339429
Log:
MFC r339013:
Pull in r329557 from upstream lld trunk (by George Rimar):
[ELF] - Allow LLD to produce file symbols.
This is for PR36716 and
this enables emitting STT_FILE symbols.
Output size affect is minor:
lld binary size changes from 52,883,408 to 52,949,400
clang binary size changes from 83,136,456 to 83,219,600
Differential revision: https://reviews.llvm.org/D45261
This fixes a regression in lld that made it stop emitting STT_FILE
symbols, which ctfmerge relies upon to uniquify function table entries
that reference STB_LOCAL symbols. Consequently, ctfmerge stopped
emitting entries for static functions into the function table, and
dtrace no longer gets type info for them.
Reported by: markj
PR: 230444
Modified:
stable/11/contrib/llvm/tools/lld/ELF/Writer.cpp
Directory Properties:
stable/11/ (props changed)
Modified: stable/11/contrib/llvm/tools/lld/ELF/Writer.cpp
==============================================================================
--- stable/11/contrib/llvm/tools/lld/ELF/Writer.cpp Thu Oct 18 19:07:15 2018 (r339428)
+++ stable/11/contrib/llvm/tools/lld/ELF/Writer.cpp Thu Oct 18 19:19:45 2018 (r339429)
@@ -487,7 +487,7 @@ template <class ELFT> void Writer<ELFT>::run() {
static bool shouldKeepInSymtab(SectionBase *Sec, StringRef SymName,
const Symbol &B) {
- if (B.isFile() || B.isSection())
+ if (B.isSection())
return false;
// If sym references a section in a discarded group, don't keep it.
More information about the svn-src-stable
mailing list