diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2016-07-23 20:44:14 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2016-07-23 20:44:14 +0000 |
| commit | 2b6b257f4e5503a7a2675bdb8735693db769f75c (patch) | |
| tree | e85e046ae7003fe3bcc8b5454cd0fa3f7407b470 /lib/CodeGen/CodeGenABITypes.cpp | |
| parent | b4348ed0b7e90c0831b925fbee00b5f179a99796 (diff) | |
Notes
Diffstat (limited to 'lib/CodeGen/CodeGenABITypes.cpp')
| -rw-r--r-- | lib/CodeGen/CodeGenABITypes.cpp | 52 |
1 files changed, 24 insertions, 28 deletions
diff --git a/lib/CodeGen/CodeGenABITypes.cpp b/lib/CodeGen/CodeGenABITypes.cpp index 643c996e2ec9..166f44f816f3 100644 --- a/lib/CodeGen/CodeGenABITypes.cpp +++ b/lib/CodeGen/CodeGenABITypes.cpp @@ -26,45 +26,41 @@ using namespace clang; using namespace CodeGen; -CodeGenABITypes::CodeGenABITypes(ASTContext &C, llvm::Module &M, - CoverageSourceInfo *CoverageInfo) - : CGO(new CodeGenOptions), HSO(new HeaderSearchOptions), - PPO(new PreprocessorOptions), - CGM(new CodeGen::CodeGenModule(C, *HSO, *PPO, *CGO, M, C.getDiagnostics(), - CoverageInfo)) {} - -// Explicitly out-of-line because ~CodeGenModule() is private but -// CodeGenABITypes.h is part of clang's API. -CodeGenABITypes::~CodeGenABITypes() = default; - const CGFunctionInfo & -CodeGenABITypes::arrangeObjCMessageSendSignature(const ObjCMethodDecl *MD, - QualType receiverType) { - return CGM->getTypes().arrangeObjCMessageSendSignature(MD, receiverType); +CodeGen::arrangeObjCMessageSendSignature(CodeGenModule &CGM, + const ObjCMethodDecl *MD, + QualType receiverType) { + return CGM.getTypes().arrangeObjCMessageSendSignature(MD, receiverType); } const CGFunctionInfo & -CodeGenABITypes::arrangeFreeFunctionType(CanQual<FunctionProtoType> Ty, - const FunctionDecl *FD) { - return CGM->getTypes().arrangeFreeFunctionType(Ty, FD); +CodeGen::arrangeFreeFunctionType(CodeGenModule &CGM, + CanQual<FunctionProtoType> Ty, + const FunctionDecl *FD) { + return CGM.getTypes().arrangeFreeFunctionType(Ty, FD); } const CGFunctionInfo & -CodeGenABITypes::arrangeFreeFunctionType(CanQual<FunctionNoProtoType> Ty) { - return CGM->getTypes().arrangeFreeFunctionType(Ty); +CodeGen::arrangeFreeFunctionType(CodeGenModule &CGM, + CanQual<FunctionNoProtoType> Ty) { + return CGM.getTypes().arrangeFreeFunctionType(Ty); } const CGFunctionInfo & -CodeGenABITypes::arrangeCXXMethodType(const CXXRecordDecl *RD, - const FunctionProtoType *FTP, - const CXXMethodDecl *MD) { - return CGM->getTypes().arrangeCXXMethodType(RD, FTP, MD); +CodeGen::arrangeCXXMethodType(CodeGenModule &CGM, + const CXXRecordDecl *RD, + const FunctionProtoType *FTP, + const CXXMethodDecl *MD) { + return CGM.getTypes().arrangeCXXMethodType(RD, FTP, MD); } -const CGFunctionInfo &CodeGenABITypes::arrangeFreeFunctionCall( - CanQualType returnType, ArrayRef<CanQualType> argTypes, - FunctionType::ExtInfo info, RequiredArgs args) { - return CGM->getTypes().arrangeLLVMFunctionInfo( +const CGFunctionInfo & +CodeGen::arrangeFreeFunctionCall(CodeGenModule &CGM, + CanQualType returnType, + ArrayRef<CanQualType> argTypes, + FunctionType::ExtInfo info, + RequiredArgs args) { + return CGM.getTypes().arrangeLLVMFunctionInfo( returnType, /*IsInstanceMethod=*/false, /*IsChainCall=*/false, argTypes, - info, args); + info, {}, args); } |
