aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CodeGenFunction.h
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2009-08-07 23:51:33 +0000
committerFariborz Jahanian <fjahanian@apple.com>2009-08-07 23:51:33 +0000
commitca28361fb0a72c50e0a400fae2fad9520e61c0a5 (patch)
tree48acea71754bc4c2f006a484bcfc8a0281f7d5ab /lib/CodeGen/CodeGenFunction.h
parent112a0a8ddf23f6d25e0920002d5d4c1df0515f86 (diff)
Synthesized copy constructor now generates code for
copying non-virtual base classes which have non-trivial constructor. Work in progress. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78436 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CodeGenFunction.h')
-rw-r--r--lib/CodeGen/CodeGenFunction.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h
index b512d3670b..383f844e93 100644
--- a/lib/CodeGen/CodeGenFunction.h
+++ b/lib/CodeGen/CodeGenFunction.h
@@ -369,7 +369,8 @@ public:
void EmitCtorPrologue(const CXXConstructorDecl *CD);
- void EmitCopyCtorBody(const CXXConstructorDecl *CD);
+ void EmitCopyCtorBody(const CXXConstructorDecl *CD,
+ const FunctionArgList &Args);
/// EmitDtorEpilogue - Emit all code that comes at the end of class's
/// destructor. This is to call destructors on members and base classes
@@ -552,6 +553,10 @@ public:
const CXXRecordDecl *ClassDecl,
const CXXRecordDecl *BaseClassDecl);
+ void EmitClassMemberwiseCopy(llvm::Value *DestValue, llvm::Value *SrcValue,
+ const CXXRecordDecl *ClassDecl,
+ const CXXRecordDecl *BaseClassDecl);
+
void EmitCXXConstructorCall(const CXXConstructorDecl *D, CXXCtorType Type,
llvm::Value *This,
CallExpr::const_arg_iterator ArgBeg,