diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-02-02 23:23:47 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-02-02 23:23:47 +0000 |
commit | 541b63b1a9db77e4a8670e9823711c2c12e58afb (patch) | |
tree | 86c239a870fd104bf7ec61da46cfd4bf517028ff /lib/CodeGen/CGObjCMac.cpp | |
parent | a0f02aa2275431e02dd3606b12fe643c5e129e54 (diff) |
Thread CGFunctionInfo construction through CodeGenTypes.
- Inefficient & leaks memory currently, will be cleaned up subsequently.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63567 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGObjCMac.cpp')
-rw-r--r-- | lib/CodeGen/CGObjCMac.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/CodeGen/CGObjCMac.cpp b/lib/CodeGen/CGObjCMac.cpp index d8e873b845..a577bd03cb 100644 --- a/lib/CodeGen/CGObjCMac.cpp +++ b/lib/CodeGen/CGObjCMac.cpp @@ -806,8 +806,9 @@ CodeGen::RValue CGObjCMac::EmitMessageSend(CodeGen::CodeGenFunction &CGF, CGF.getContext().getObjCSelType())); ActualArgs.insert(ActualArgs.end(), CallArgs.begin(), CallArgs.end()); - CGFunctionInfo FnInfo(ResultType, ActualArgs); - const llvm::FunctionType *FTy = CGM.getTypes().GetFunctionType(FnInfo, false); + CodeGenTypes &Types = CGM.getTypes(); + const CGFunctionInfo &FnInfo = Types.getFunctionInfo(ResultType, ActualArgs); + const llvm::FunctionType *FTy = Types.GetFunctionType(FnInfo, false); llvm::Constant *Fn; if (CGM.ReturnTypeUsesSret(FnInfo)) { @@ -1668,9 +1669,9 @@ llvm::Function *CGObjCCommonMac::GenerateMethod(const ObjCMethodDecl *OMD, std::string Name; GetNameForMethod(OMD, CD, Name); + CodeGenTypes &Types = CGM.getTypes(); const llvm::FunctionType *MethodTy = - CGM.getTypes().GetFunctionType(CGFunctionInfo(OMD, CGM.getContext()), - OMD->isVariadic()); + Types.GetFunctionType(Types.getFunctionInfo(OMD), OMD->isVariadic()); llvm::Function *Method = llvm::Function::Create(MethodTy, llvm::GlobalValue::InternalLinkage, |