diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2008-11-29 22:49:59 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2008-11-29 22:49:59 +0000 |
commit | 4fd40e884c76ffbf1157ab4ca48a099c55eebb4f (patch) | |
tree | 0113a77c89cee09ab360b1bab20d2e52436324d7 | |
parent | 0ec48ddef20deaa061152d86645972122beef605 (diff) |
Add protected visibility to libLTO.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60257 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm-c/lto.h | 3 | ||||
-rw-r--r-- | tools/lto/LTOModule.cpp | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/include/llvm-c/lto.h b/include/llvm-c/lto.h index c57dfe7306..74a070342e 100644 --- a/include/llvm-c/lto.h +++ b/include/llvm-c/lto.h @@ -30,9 +30,10 @@ typedef enum { LTO_SYMBOL_DEFINITION_TENTATIVE = 0x00000200, LTO_SYMBOL_DEFINITION_WEAK = 0x00000300, LTO_SYMBOL_DEFINITION_UNDEFINED = 0x00000400, - LTO_SYMBOL_SCOPE_MASK = 0x00001800, + LTO_SYMBOL_SCOPE_MASK = 0x00003800, LTO_SYMBOL_SCOPE_INTERNAL = 0x00000800, LTO_SYMBOL_SCOPE_HIDDEN = 0x00001000, + LTO_SYMBOL_SCOPE_PROTECTED = 0x00002000, LTO_SYMBOL_SCOPE_DEFAULT = 0x00001800 } lto_symbol_attributes; diff --git a/tools/lto/LTOModule.cpp b/tools/lto/LTOModule.cpp index 7eb79053ea..6331a59e02 100644 --- a/tools/lto/LTOModule.cpp +++ b/tools/lto/LTOModule.cpp @@ -224,6 +224,8 @@ void LTOModule::addDefinedSymbol(GlobalValue* def, Mangler &mangler, // set scope part if ( def->hasHiddenVisibility() ) attr |= LTO_SYMBOL_SCOPE_HIDDEN; + else if ( def->hasProtectedVisibility() ) + attr |= LTO_SYMBOL_SCOPE_PROTECTED; else if ( def->hasExternalLinkage() || def->hasWeakLinkage() || def->hasLinkOnceLinkage() || def->hasCommonLinkage() ) attr |= LTO_SYMBOL_SCOPE_DEFAULT; |