diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-04-22 22:34:57 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-04-22 22:34:57 +0000 |
commit | a57c3abf3709f7849154adf78d13cb849cd7e4c2 (patch) | |
tree | 9c040445d1df2437d01d2955876775c09812d733 /clang/lib/Frontend/PCHWriter.cpp | |
parent | 63e29cc99c349e5fcc8828a084978b910615a5ad (diff) | |
download | bcm5719-llvm-a57c3abf3709f7849154adf78d13cb849cd7e4c2.tar.gz bcm5719-llvm-a57c3abf3709f7849154adf78d13cb849cd7e4c2.zip |
Add PCH statistics for the number/percent of lexical/visible declcontexts read
llvm-svn: 69835
Diffstat (limited to 'clang/lib/Frontend/PCHWriter.cpp')
-rw-r--r-- | clang/lib/Frontend/PCHWriter.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/clang/lib/Frontend/PCHWriter.cpp b/clang/lib/Frontend/PCHWriter.cpp index 0aada625994..6557ca5c427 100644 --- a/clang/lib/Frontend/PCHWriter.cpp +++ b/clang/lib/Frontend/PCHWriter.cpp @@ -1616,6 +1616,7 @@ uint64_t PCHWriter::WriteDeclContextLexicalBlock(ASTContext &Context, D != DEnd; ++D) AddDeclRef(*D, Record); + ++NumLexicalDeclContexts; Stream.EmitRecord(pch::DECL_CONTEXT_LEXICAL, Record); return Offset; } @@ -1664,6 +1665,7 @@ uint64_t PCHWriter::WriteDeclContextVisibleBlock(ASTContext &Context, return 0; Stream.EmitRecord(pch::DECL_CONTEXT_VISIBLE, Record); + ++NumVisibleDeclContexts; return Offset; } @@ -1997,7 +1999,8 @@ void PCHWriter::SetIdentifierOffset(const IdentifierInfo *II, uint32_t Offset) { PCHWriter::PCHWriter(llvm::BitstreamWriter &Stream) : Stream(Stream), NextTypeID(pch::NUM_PREDEF_TYPE_IDS), - NumStatements(0), NumMacros(0) { } + NumStatements(0), NumMacros(0), NumLexicalDeclContexts(0), + NumVisibleDeclContexts(0) { } void PCHWriter::WritePCH(Sema &SemaRef) { ASTContext &Context = SemaRef.Context; @@ -2078,6 +2081,8 @@ void PCHWriter::WritePCH(Sema &SemaRef) { Record.clear(); Record.push_back(NumStatements); Record.push_back(NumMacros); + Record.push_back(NumLexicalDeclContexts); + Record.push_back(NumVisibleDeclContexts); Stream.EmitRecord(pch::STATISTICS, Record); Stream.ExitBlock(); } |