summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CodeGenModule.h
diff options
context:
space:
mode:
authorDavid Majnemer <david.majnemer@gmail.com>2014-07-07 06:20:47 +0000
committerDavid Majnemer <david.majnemer@gmail.com>2014-07-07 06:20:47 +0000
commite2cb8d198f54b84187419a23b3f3e1d05015e5e7 (patch)
tree77685fab2c6be89c10a2ee4526241996efd07a8e /clang/lib/CodeGen/CodeGenModule.h
parentc358000ed34f074d9393fce692b67b32e370f09a (diff)
downloadbcm5719-llvm-e2cb8d198f54b84187419a23b3f3e1d05015e5e7.tar.gz
bcm5719-llvm-e2cb8d198f54b84187419a23b3f3e1d05015e5e7.zip
CodeGen: Refactor RTTI emission
Let's not expose ABI specific minutia inside of CodeGenModule and Type. Instead, let's abstract it through CXXABI. This gets rid of: CodeGenModule::getCompleteObjectLocator, CodeGenModule::EmitFundamentalTypeDescriptor{s,}, CodeGenModule::getMSTypeDescriptor, CodeGenModule::getMSCompleteObjectLocator, CGCXXABI::shouldRTTIBeUnique, CGCXXABI::classifyRTTIUniqueness. CGRTTI was *almost* entirely centered around providing Itanium-style RTTI information. Instead of providing interfaces that only it consumes, move it to the ItaniumCXXABI implementation file. This allows it to have access to Itanium-specific implementation details without providing useless expansion points for the Microsoft ABI side. Differential Revision: http://reviews.llvm.org/D4261 llvm-svn: 212435
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.h')
-rw-r--r--clang/lib/CodeGen/CodeGenModule.h9
1 files changed, 0 insertions, 9 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h
index c0bfb4c5e6b..8ce4668e032 100644
--- a/clang/lib/CodeGen/CodeGenModule.h
+++ b/clang/lib/CodeGen/CodeGenModule.h
@@ -747,12 +747,6 @@ public:
/// The type of a generic block literal.
llvm::Type *getGenericBlockLiteralType();
- /// \brief Gets or a creats a Microsoft TypeDescriptor.
- llvm::Constant *getMSTypeDescriptor(QualType Ty);
- /// \brief Gets or a creats a Microsoft CompleteObjectLocator.
- llvm::Constant *getMSCompleteObjectLocator(const CXXRecordDecl *RD,
- const VPtrInfo *Info);
-
/// Gets the address of a block which requires no captures.
llvm::Constant *GetAddrOfGlobalBlock(const BlockExpr *BE, const char *);
@@ -973,9 +967,6 @@ public:
F->setLinkage(getFunctionLinkage(GD));
}
- /// \brief Returns the appropriate linkage for the TypeInfo struct for a type.
- llvm::GlobalVariable::LinkageTypes getTypeInfoLinkage(QualType Ty);
-
/// Return the appropriate linkage for the vtable, VTT, and type information
/// of the given class.
llvm::GlobalVariable::LinkageTypes getVTableLinkage(const CXXRecordDecl *RD);
OpenPOWER on IntegriCloud