summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGClass.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2010-05-01 17:07:40 +0000
committerAnders Carlsson <andersca@mac.com>2010-05-01 17:07:40 +0000
commitb136e626eadaec8a9e3510790392a1cbb6822c43 (patch)
treecf6f43a0aa0b4aca25546663d6cf90f6270b3383 /clang/lib/CodeGen/CGClass.cpp
parentaab3b57359292c449143d55a460d0762244dcb40 (diff)
downloadbcm5719-llvm-b136e626eadaec8a9e3510790392a1cbb6822c43.tar.gz
bcm5719-llvm-b136e626eadaec8a9e3510790392a1cbb6822c43.zip
Simplify EmitCopyCtorCall.
llvm-svn: 102849
Diffstat (limited to 'clang/lib/CodeGen/CGClass.cpp')
-rw-r--r--clang/lib/CodeGen/CGClass.cpp17
1 files changed, 5 insertions, 12 deletions
diff --git a/clang/lib/CodeGen/CGClass.cpp b/clang/lib/CodeGen/CGClass.cpp
index 38b2a67a98e..dd8eec10ce5 100644
--- a/clang/lib/CodeGen/CGClass.cpp
+++ b/clang/lib/CodeGen/CGClass.cpp
@@ -356,23 +356,16 @@ CodeGenFunction::GetAddressOfDerivedClass(llvm::Value *Value,
/// EmitCopyCtorCall - Emit a call to a copy constructor.
static void
-EmitCopyCtorCall(CodeGenFunction &CGF,
- const CXXConstructorDecl *CopyCtor, CXXCtorType CopyCtorType,
- llvm::Value *ThisPtr, llvm::Value *VTT, llvm::Value *Src) {
- llvm::Value *Callee = CGF.CGM.GetAddrOfCXXConstructor(CopyCtor, CopyCtorType);
+EmitCopyCtorCall(CodeGenFunction &CGF, const CXXConstructorDecl *CopyCtor,
+ llvm::Value *ThisPtr, llvm::Value *Src) {
+ llvm::Value *Callee = CGF.CGM.GetAddrOfCXXConstructor(CopyCtor, Ctor_Complete);
CallArgList CallArgs;
// Push the this ptr.
CallArgs.push_back(std::make_pair(RValue::get(ThisPtr),
CopyCtor->getThisType(CGF.getContext())));
-
- // Push the VTT parameter if necessary.
- if (VTT) {
- QualType T = CGF.getContext().getPointerType(CGF.getContext().VoidPtrTy);
- CallArgs.push_back(std::make_pair(RValue::get(VTT), T));
- }
-
+
// Push the Src ptr.
CallArgs.push_back(std::make_pair(RValue::get(Src),
CopyCtor->getParamDecl(0)->getType()));
@@ -593,7 +586,7 @@ void CodeGenFunction::EmitClassMemberwiseCopy(
CXXConstructorDecl *CopyCtor = ClassDecl->getCopyConstructor(getContext(), 0);
assert(CopyCtor && "Did not have copy ctor!");
- EmitCopyCtorCall(*this, CopyCtor, Ctor_Complete, Dest, 0, Src);
+ EmitCopyCtorCall(*this, CopyCtor, Dest, Src);
}
/// EmitClassCopyAssignment - This routine generates code to copy assign a class
OpenPOWER on IntegriCloud