summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2010-10-22 18:56:27 +0000
committerDevang Patel <dpatel@apple.com>2010-10-22 18:56:27 +0000
commit401c916c8aba7f48d8ed153be07fa9baac7b88f8 (patch)
tree58a4544e7bc00ee209c650310f623594f3b62357 /clang
parentf48719f1b52e077363027030bde8a0aded1c3995 (diff)
downloadbcm5719-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.cpp3
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(),
OpenPOWER on IntegriCloud