summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGDebugInfo.h
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2014-08-29 22:44:27 +0000
committerAdrian Prantl <aprantl@apple.com>2014-08-29 22:44:27 +0000
commit21361fb308fa283eeb8cd2ed27a981b276eeaa15 (patch)
tree93eeedd7736397a68a21658d5eec8765c3d41906 /clang/lib/CodeGen/CGDebugInfo.h
parentdaedfda8920080193319ee11334557635369a378 (diff)
downloadbcm5719-llvm-21361fb308fa283eeb8cd2ed27a981b276eeaa15.tar.gz
bcm5719-llvm-21361fb308fa283eeb8cd2ed27a981b276eeaa15.zip
Debug info: Only emit C++ accessibility specifiers when they are diverging
from the default for the containing type. rdar://problem/18154959 llvm-svn: 216800
Diffstat (limited to 'clang/lib/CodeGen/CGDebugInfo.h')
-rw-r--r--clang/lib/CodeGen/CGDebugInfo.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/clang/lib/CodeGen/CGDebugInfo.h b/clang/lib/CodeGen/CGDebugInfo.h
index 55c78eaf512..e34ba5684d7 100644
--- a/clang/lib/CodeGen/CGDebugInfo.h
+++ b/clang/lib/CodeGen/CGDebugInfo.h
@@ -180,20 +180,24 @@ class CGDebugInfo {
llvm::DIType createFieldType(StringRef name, QualType type,
uint64_t sizeInBitsOverride, SourceLocation loc,
- AccessSpecifier AS, uint64_t offsetInBits,
+ AccessSpecifier AS,
+ uint64_t offsetInBits,
llvm::DIFile tunit,
- llvm::DIScope scope);
+ llvm::DIScope scope,
+ const RecordDecl* RD = nullptr);
// Helpers for collecting fields of a record.
void CollectRecordLambdaFields(const CXXRecordDecl *CXXDecl,
SmallVectorImpl<llvm::Value *> &E,
llvm::DIType RecordTy);
llvm::DIDerivedType CreateRecordStaticField(const VarDecl *Var,
- llvm::DIType RecordTy);
+ llvm::DIType RecordTy,
+ const RecordDecl* RD);
void CollectRecordNormalField(const FieldDecl *Field, uint64_t OffsetInBits,
llvm::DIFile F,
SmallVectorImpl<llvm::Value *> &E,
- llvm::DIType RecordTy);
+ llvm::DIType RecordTy,
+ const RecordDecl* RD);
void CollectRecordFields(const RecordDecl *Decl, llvm::DIFile F,
SmallVectorImpl<llvm::Value *> &E,
llvm::DICompositeType RecordTy);
OpenPOWER on IntegriCloud