aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CodeGenFunction.h
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-02-02 22:03:45 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-02-02 22:03:45 +0000
commit88b5396b0897f28d22ae3debf4a0d97b33b6c362 (patch)
tree7838b5a53781e11e09273dad5fdd044b44174b9d /lib/CodeGen/CodeGenFunction.h
parentd671c5a61605ab864768cbbb4feb9cd652609083 (diff)
More ABI API cleanup.
- Lift CGFunctionInfo creation above ReturnTypeUsesSret and EmitFunction{Epi,Pro}log. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63553 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CodeGenFunction.h')
-rw-r--r--lib/CodeGen/CodeGenFunction.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h
index 1bacff2480..9033a65be2 100644
--- a/lib/CodeGen/CodeGenFunction.h
+++ b/lib/CodeGen/CodeGenFunction.h
@@ -70,6 +70,7 @@ public:
// Holds the Decl for the current function or method
const Decl *CurFuncDecl;
+ const CGFunctionInfo *CurFnInfo;
QualType FnRetTy;
llvm::Function *CurFn;
@@ -219,13 +220,13 @@ public:
/// EmitFunctionProlog - Emit the target specific LLVM code to load
/// the arguments for the given function. This is also responsible
/// for naming the LLVM function arguments.
- void EmitFunctionProlog(llvm::Function *Fn, QualType RetTy,
+ void EmitFunctionProlog(const CGFunctionInfo &FI,
+ llvm::Function *Fn,
const FunctionArgList &Args);
/// EmitFunctionEpilog - Emit the target specific LLVM code to
/// return the given temporary.
- void EmitFunctionEpilog(QualType RetTy,
- llvm::Value *ReturnValue);
+ void EmitFunctionEpilog(const CGFunctionInfo &FI, llvm::Value *ReturnValue);
const llvm::Type *ConvertType(QualType T);
@@ -543,8 +544,8 @@ public:
/// given result type, and using the given argument list which
/// specifies both the LLVM arguments and the types they were
/// derived from.
- RValue EmitCall(llvm::Value *Callee,
- const CGFunctionInfo &FnInfo,
+ RValue EmitCall(const CGFunctionInfo &FnInfo,
+ llvm::Value *Callee,
const CallArgList &Args);
RValue EmitCallExpr(const CallExpr *E);