Date: Sat, 29 Sep 2018 14:12:04 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r339013 - head/contrib/llvm/tools/lld/ELF Message-ID: <201809291412.w8TEC4nu022139@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim Date: Sat Sep 29 14:12:03 2018 New Revision: 339013 URL: https://svnweb.freebsd.org/changeset/base/339013 Log: 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. Approved by: re (kib) Reported by: markj PR: 230444 MFC after: 3 days Modified: head/contrib/llvm/tools/lld/ELF/Writer.cpp Modified: head/contrib/llvm/tools/lld/ELF/Writer.cpp ============================================================================== --- head/contrib/llvm/tools/lld/ELF/Writer.cpp Sat Sep 29 13:01:23 2018 (r339012) +++ head/contrib/llvm/tools/lld/ELF/Writer.cpp Sat Sep 29 14:12:03 2018 (r339013) @@ -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.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201809291412.w8TEC4nu022139>