summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CodeGenFunction.h
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2010-01-02 01:01:18 +0000
committerAnders Carlsson <andersca@mac.com>2010-01-02 01:01:18 +0000
commite36a6b3e44915d1305fa578b16ed0d815ec1b19c (patch)
treec926efc1be678dc96621d09c6288cc37c87d6083 /clang/lib/CodeGen/CodeGenFunction.h
parent2e4be2c34042d2f0150a0c92f091043580a8cbaf (diff)
downloadbcm5719-llvm-e36a6b3e44915d1305fa578b16ed0d815ec1b19c.tar.gz
bcm5719-llvm-e36a6b3e44915d1305fa578b16ed0d815ec1b19c.zip
Correctly pass VTT parameters to constructors and destructors. The VTTs aren't yet used in the ctors/dtors, but that will follow.
llvm-svn: 92409
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r--clang/lib/CodeGen/CodeGenFunction.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h
index 273ddcac797..fadb38fcb95 100644
--- a/clang/lib/CodeGen/CodeGenFunction.h
+++ b/clang/lib/CodeGen/CodeGenFunction.h
@@ -728,6 +728,10 @@ public:
/// generating code for an C++ member function.
llvm::Value *LoadCXXThis();
+ /// LoadCXXVTT - Load the VTT parameter to base constructors/destructors have
+ /// virtual bases.
+ llvm::Value *LoadCXXVTT();
+
/// GetAddressOfBaseClass - This function will add the necessary delta to the
/// load of 'this' and returns address of the base class.
// FIXME. This currently only does a derived to non-virtual base conversion.
@@ -1057,6 +1061,7 @@ public:
llvm::Value *Callee,
ReturnValueSlot ReturnValue,
llvm::Value *This,
+ llvm::Value *VTT,
CallExpr::const_arg_iterator ArgBeg,
CallExpr::const_arg_iterator ArgEnd);
RValue EmitCXXMemberCallExpr(const CXXMemberCallExpr *E,
OpenPOWER on IntegriCloud