diff options
author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-05-05 17:38:39 +0000 |
---|---|---|
committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-05-05 17:38:39 +0000 |
commit | 48bc268290952547cc7dc74ce475fe58e6010c41 (patch) | |
tree | 5747856b3a7bdc6fa060abef212ea2dcb988ec1c | |
parent | 595f54205ccb4a5e90dd8687b5a9ff6aa2a3da87 (diff) | |
download | bcm5719-llvm-48bc268290952547cc7dc74ce475fe58e6010c41.tar.gz bcm5719-llvm-48bc268290952547cc7dc74ce475fe58e6010c41.zip |
CodeGen: Cleanup visibility in RTTIBuilder
No functionality change.
llvm-svn: 207978
-rw-r--r-- | clang/lib/CodeGen/CGRTTI.cpp | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/clang/lib/CodeGen/CGRTTI.cpp b/clang/lib/CodeGen/CGRTTI.cpp index 04523bc08ba..53c45cd3e9f 100644 --- a/clang/lib/CodeGen/CGRTTI.cpp +++ b/clang/lib/CodeGen/CGRTTI.cpp @@ -678,18 +678,14 @@ llvm::Constant *RTTIBuilder::BuildTypeInfo(QualType Ty, bool Force) { // Give the type_info object and name the formal visibility of the // type itself. - Visibility formalVisibility = Ty->getVisibility(); - llvm::GlobalValue::VisibilityTypes llvmVisibility = - CodeGenModule::GetLLVMVisibility(formalVisibility); + llvm::GlobalValue::VisibilityTypes llvmVisibility; + if (RTTIUniqueness == CGCXXABI::RUK_NonUniqueHidden) + llvmVisibility = llvm::GlobalValue::HiddenVisibility; + else + llvmVisibility = CodeGenModule::GetLLVMVisibility(Ty->getVisibility()); TypeName->setVisibility(llvmVisibility); GV->setVisibility(llvmVisibility); - // FIXME: integrate this better into the above when we move to trunk - if (RTTIUniqueness == CGCXXABI::RUK_NonUniqueHidden) { - TypeName->setVisibility(llvm::GlobalValue::HiddenVisibility); - GV->setVisibility(llvm::GlobalValue::HiddenVisibility); - } - return llvm::ConstantExpr::getBitCast(GV, CGM.Int8PtrTy); } |