summaryrefslogtreecommitdiff
path: root/tools/llvm-nm
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2009-07-20 01:03:30 +0000
committerBill Wendling <isanbard@gmail.com>2009-07-20 01:03:30 +0000
commit3d10a5a75794356a0a568ce283713adc3a963200 (patch)
treed2af2edf3eb2da3f5490936f7843f1594e3e95e6 /tools/llvm-nm
parent3f189a3eb40208c75ea33cf75e7183a48087541a (diff)
downloadllvm-3d10a5a75794356a0a568ce283713adc3a963200.tar.gz
llvm-3d10a5a75794356a0a568ce283713adc3a963200.tar.bz2
llvm-3d10a5a75794356a0a568ce283713adc3a963200.tar.xz
Add plumbing for the `linker_private' linkage type. This type is meant for
"private" symbols which the assember shouldn't strip, but which the linker may remove after evaluation. This is mostly useful for Objective-C metadata. This is plumbing, so we don't have a use of it yet. More to come, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76385 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-nm')
-rw-r--r--tools/llvm-nm/llvm-nm.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/llvm-nm/llvm-nm.cpp b/tools/llvm-nm/llvm-nm.cpp
index eef9a66cc3..325b0acf98 100644
--- a/tools/llvm-nm/llvm-nm.cpp
+++ b/tools/llvm-nm/llvm-nm.cpp
@@ -88,7 +88,8 @@ static char TypeCharForSymbol(GlobalValue &GV) {
static void DumpSymbolNameForGlobalValue(GlobalValue &GV) {
// Private linkage and available_externally linkage don't exist in symtab.
- if (GV.hasPrivateLinkage() || GV.hasAvailableExternallyLinkage()) return;
+ if (GV.hasPrivateLinkage() || GV.hasLinkerPrivateLinkage() ||
+ GV.hasAvailableExternallyLinkage()) return;
const std::string SymbolAddrStr = " "; // Not used yet...
char TypeChar = TypeCharForSymbol(GV);