diff options
author | Douglas Gregor <dgregor@apple.com> | 2012-10-22 18:42:04 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2012-10-22 18:42:04 +0000 |
commit | a930dc9b46572cb6e5bb54f3d724e8fe23a6b66e (patch) | |
tree | ce00af15e555bff47fb330c6d117d475cb72ba41 /include/clang/Serialization/ASTWriter.h | |
parent | 2e4e110a727a0d379a8fbd0cc2afba1ff3801091 (diff) |
Eliminate the redundancy between source-file information in the source
manager block and input-file information in the control block. The
source manager entries now point back into the control block. Input
files are now lazily deserialized (if validation is disabled). Reduces
Cocoa's PCH by the ~70k I added when I introduced the redundancy in
r166251.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166429 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Serialization/ASTWriter.h')
-rw-r--r-- | include/clang/Serialization/ASTWriter.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/clang/Serialization/ASTWriter.h b/include/clang/Serialization/ASTWriter.h index 37cf1b3c36..be8e78e7b3 100644 --- a/include/clang/Serialization/ASTWriter.h +++ b/include/clang/Serialization/ASTWriter.h @@ -45,6 +45,7 @@ class ASTContext; class NestedNameSpecifier; class CXXBaseSpecifier; class CXXCtorInitializer; +class FileEntry; class FPOptions; class HeaderSearch; class IdentifierResolver; @@ -121,6 +122,10 @@ private: /// \brief Indicates that the AST contained compiler errors. bool ASTHasCompilerErrors; + /// \brief Mapping from input file entries to the index into the + /// offset table where information about that input file is stored. + llvm::DenseMap<const FileEntry *, uint32_t> InputFileIDs; + /// \brief Stores a declaration or a type to be written to the AST file. class DeclOrType { public: |