From e2cb8d198f54b84187419a23b3f3e1d05015e5e7 Mon Sep 17 00:00:00 2001 From: David Majnemer Date: Mon, 7 Jul 2014 06:20:47 +0000 Subject: 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 --- clang/lib/CodeGen/CodeGenModule.h | 9 --------- 1 file changed, 9 deletions(-) (limited to 'clang/lib/CodeGen/CodeGenModule.h') 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); -- cgit v1.2.3