diff options
author | Anders Carlsson <andersca@mac.com> | 2010-05-02 23:57:15 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2010-05-02 23:57:15 +0000 |
commit | e089060fd09371febefce42753650e630a0440c9 (patch) | |
tree | 6255a25699b7299aac0a03b766ca814accee6759 /clang/lib/CodeGen/CGClass.cpp | |
parent | 859b3064cb6378a6db5d79de66a724099f649844 (diff) | |
download | bcm5719-llvm-e089060fd09371febefce42753650e630a0440c9.tar.gz bcm5719-llvm-e089060fd09371febefce42753650e630a0440c9.zip |
Get rid of a call to GetAddressOfDirectBaseInCompleteClass.
llvm-svn: 102886
Diffstat (limited to 'clang/lib/CodeGen/CGClass.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGClass.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/clang/lib/CodeGen/CGClass.cpp b/clang/lib/CodeGen/CGClass.cpp index 93b1897583f..634d3177476 100644 --- a/clang/lib/CodeGen/CGClass.cpp +++ b/clang/lib/CodeGen/CGClass.cpp @@ -1020,10 +1020,13 @@ void CodeGenFunction::EmitDtorEpilogue(const CXXDestructorDecl *DD, // Ignore trivial destructors. if (BaseClassDecl->hasTrivialDestructor()) continue; - const CXXDestructorDecl *D = BaseClassDecl->getDestructor(getContext()); - - llvm::Value *V = OldGetAddressOfBaseClass(LoadCXXThis(), - ClassDecl, BaseClassDecl); + + const CXXDestructorDecl *D = BaseClassDecl->getDestructor(getContext()); + llvm::Value *V = + GetAddressOfDirectBaseInCompleteClass(LoadCXXThis(), ClassDecl, + BaseClassDecl, + /*BaseIsVirtual=*/false); + EmitCXXDestructorCall(D, Dtor_Base, /*ForVirtualBase=*/false, V); } } |