diff options
Diffstat (limited to 'clang/include/clang/Serialization/ModuleManager.h')
-rw-r--r-- | clang/include/clang/Serialization/ModuleManager.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/clang/include/clang/Serialization/ModuleManager.h b/clang/include/clang/Serialization/ModuleManager.h index 70c9d9e5407..fae387cac7e 100644 --- a/clang/include/clang/Serialization/ModuleManager.h +++ b/clang/include/clang/Serialization/ModuleManager.h @@ -24,6 +24,7 @@ namespace clang { class GlobalModuleIndex; +class MemoryBufferCache; class ModuleMap; class PCHContainerReader; @@ -51,6 +52,9 @@ class ModuleManager { /// FileEntry *. FileManager &FileMgr; + /// Cache of PCM files. + IntrusiveRefCntPtr<MemoryBufferCache> PCMCache; + /// \brief Knows how to unwrap module containers. const PCHContainerReader &PCHContainerRdr; @@ -123,7 +127,7 @@ public: ModuleReverseIterator; typedef std::pair<uint32_t, StringRef> ModuleOffset; - explicit ModuleManager(FileManager &FileMgr, + explicit ModuleManager(FileManager &FileMgr, MemoryBufferCache &PCMCache, const PCHContainerReader &PCHContainerRdr); ~ModuleManager(); @@ -290,6 +294,8 @@ public: /// \brief View the graphviz representation of the module graph. void viewGraph(); + + MemoryBufferCache &getPCMCache() const { return *PCMCache; } }; } } // end namespace clang::serialization |