diff options
author | Bill Wendling <isanbard@gmail.com> | 2009-07-20 01:03:30 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2009-07-20 01:03:30 +0000 |
commit | a3c6f6bffaabc3e514cd9e46d16c5f9d93c6b4af (patch) | |
tree | 786729b22c11a5594587611ce98238d93cfe473c /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | 88f35c870b71eeb6b58da955007d2c3b5dc0cd00 (diff) | |
download | bcm5719-llvm-a3c6f6bffaabc3e514cd9e46d16c5f9d93c6b4af.tar.gz bcm5719-llvm-a3c6f6bffaabc3e514cd9e46d16c5f9d93c6b4af.zip |
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.
llvm-svn: 76385
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
-rw-r--r-- | llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp index e4d3c5e1ade..bc1eba01e2d 100644 --- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp @@ -60,19 +60,20 @@ static bool ConvertToString(SmallVector<uint64_t, 64> &Record, unsigned Idx, static GlobalValue::LinkageTypes GetDecodedLinkage(unsigned Val) { switch (Val) { default: // Map unknown/new linkages to external - case 0: return GlobalValue::ExternalLinkage; - case 1: return GlobalValue::WeakAnyLinkage; - case 2: return GlobalValue::AppendingLinkage; - case 3: return GlobalValue::InternalLinkage; - case 4: return GlobalValue::LinkOnceAnyLinkage; - case 5: return GlobalValue::DLLImportLinkage; - case 6: return GlobalValue::DLLExportLinkage; - case 7: return GlobalValue::ExternalWeakLinkage; - case 8: return GlobalValue::CommonLinkage; - case 9: return GlobalValue::PrivateLinkage; + case 0: return GlobalValue::ExternalLinkage; + case 1: return GlobalValue::WeakAnyLinkage; + case 2: return GlobalValue::AppendingLinkage; + case 3: return GlobalValue::InternalLinkage; + case 4: return GlobalValue::LinkOnceAnyLinkage; + case 5: return GlobalValue::DLLImportLinkage; + case 6: return GlobalValue::DLLExportLinkage; + case 7: return GlobalValue::ExternalWeakLinkage; + case 8: return GlobalValue::CommonLinkage; + case 9: return GlobalValue::PrivateLinkage; case 10: return GlobalValue::WeakODRLinkage; case 11: return GlobalValue::LinkOnceODRLinkage; case 12: return GlobalValue::AvailableExternallyLinkage; + case 13: return GlobalValue::LinkerPrivateLinkage; } } |