diff options
author | Devang Patel <dpatel@apple.com> | 2010-10-22 18:56:27 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2010-10-22 18:56:27 +0000 |
commit | 401c916c8aba7f48d8ed153be07fa9baac7b88f8 (patch) | |
tree | 58a4544e7bc00ee209c650310f623594f3b62357 /clang | |
parent | f48719f1b52e077363027030bde8a0aded1c3995 (diff) | |
download | bcm5719-llvm-401c916c8aba7f48d8ed153be07fa9baac7b88f8.tar.gz bcm5719-llvm-401c916c8aba7f48d8ed153be07fa9baac7b88f8.zip |
Delay record type's debug info emission, in -flimit-debug-info mode, if member expression's base is call expr.
llvm-svn: 117127
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/CodeGen/CGExprCXX.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGExprCXX.cpp b/clang/lib/CodeGen/CGExprCXX.cpp index 478b95ae399..2a88d339978 100644 --- a/clang/lib/CodeGen/CGExprCXX.cpp +++ b/clang/lib/CodeGen/CGExprCXX.cpp @@ -90,7 +90,8 @@ RValue CodeGenFunction::EmitCXXMemberCallExpr(const CXXMemberCallExpr *CE, const CXXMethodDecl *MD = cast<CXXMethodDecl>(ME->getMemberDecl()); CGDebugInfo *DI = getDebugInfo(); - if (DI && CGM.getCodeGenOpts().LimitDebugInfo) { + if (DI && CGM.getCodeGenOpts().LimitDebugInfo + && !isa<CallExpr>(ME->getBase())) { QualType PQTy = ME->getBase()->IgnoreParenImpCasts()->getType(); if (const PointerType * PTy = dyn_cast<PointerType>(PQTy)) { DI->getOrCreateRecordType(PTy->getPointeeType(), |