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/Module.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/Module.h')
-rw-r--r-- | include/clang/Serialization/Module.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/clang/Serialization/Module.h b/include/clang/Serialization/Module.h index a1a47d8b04..2915cfc01c 100644 --- a/include/clang/Serialization/Module.h +++ b/include/clang/Serialization/Module.h @@ -128,6 +128,18 @@ public: /// \brief The first source location in this module. SourceLocation FirstLoc; + // === Input Files === + /// \brief The cursor to the start of the input-files block. + llvm::BitstreamCursor InputFilesCursor; + + /// \brief Offsets for all of the input file entries in the AST file. + const uint32_t *InputFileOffsets; + + /// \brief The input files that have been loaded from this AST file, along + /// with a bool indicating whether this was an overridden buffer. + std::vector<llvm::PointerIntPair<const FileEntry *, 1, bool> > + InputFilesLoaded; + // === Source Locations === /// \brief Cursor used to read source location entries. |