diff options
author | Davide Italiano <davide@freebsd.org> | 2015-09-26 00:47:56 +0000 |
---|---|---|
committer | Davide Italiano <davide@freebsd.org> | 2015-09-26 00:47:56 +0000 |
commit | 6993ba4d3ec432b661b99111d2bf55da6379e3d5 (patch) | |
tree | 1ce0d40ce6425b8f2a62a200eaad9e51d2e43a6d /lld/ELF/OutputSections.cpp | |
parent | f096e10a472d1752e89133f9565103be9047469f (diff) | |
download | bcm5719-llvm-6993ba4d3ec432b661b99111d2bf55da6379e3d5.tar.gz bcm5719-llvm-6993ba4d3ec432b661b99111d2bf55da6379e3d5.zip |
[ELF2] Don't inline function and define it in OutputSection.cpp. NFC.
Reported/Requested by: Rafael Espindola
llvm-svn: 248643
Diffstat (limited to 'lld/ELF/OutputSections.cpp')
-rw-r--r-- | lld/ELF/OutputSections.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lld/ELF/OutputSections.cpp b/lld/ELF/OutputSections.cpp index 2bc1fa991b9..07e79b1adf1 100644 --- a/lld/ELF/OutputSections.cpp +++ b/lld/ELF/OutputSections.cpp @@ -367,6 +367,14 @@ bool lld::elf2::includeInDynamicSymtab(const SymbolBody &B) { return B.isUsedInDynamicReloc(); } +bool lld::elf2::shouldKeepInSymtab(StringRef SymName) { + if (Config->DiscardNone) + return true; + + // ELF defines dynamic locals as symbols which name starts with ".L". + return !(Config->DiscardLocals && SymName.startswith(".L")); +} + template <class ELFT> SymbolTableSection<ELFT>::SymbolTableSection( SymbolTable &Table, StringTableSection<ELFT::Is64Bits> &StrTabSec, |