aboutsummaryrefslogtreecommitdiff
path: root/include/clang/Serialization/ASTWriter.h
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2012-10-22 18:42:04 +0000
committerDouglas Gregor <dgregor@apple.com>2012-10-22 18:42:04 +0000
commita930dc9b46572cb6e5bb54f3d724e8fe23a6b66e (patch)
treece00af15e555bff47fb330c6d117d475cb72ba41 /include/clang/Serialization/ASTWriter.h
parent2e4e110a727a0d379a8fbd0cc2afba1ff3801091 (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.h5
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: