diff options
author | Douglas Gregor <dgregor@apple.com> | 2010-10-30 00:23:06 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2010-10-30 00:23:06 +0000 |
commit | 295a2a617ac335f590e430ab7fcd98f8ce109251 (patch) | |
tree | f99afd1bb537d0c93b87cd955cefe6e810cc36e0 /include/clang/Lex/ExternalPreprocessorSource.h | |
parent | 20e047abc5f19dc948436c0fb891450d9cd40667 (diff) |
Make the deserialization of macro definitions lazy, so that we can
load identifiers without loading their corresponding macro
definitions. This is likely to improve PCH performance slightly, and
reduces deserialization stack depth considerably when using
preprocessor metaprogramming.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117750 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Lex/ExternalPreprocessorSource.h')
-rw-r--r-- | include/clang/Lex/ExternalPreprocessorSource.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/clang/Lex/ExternalPreprocessorSource.h b/include/clang/Lex/ExternalPreprocessorSource.h index 791d3fe304..dbf7389033 100644 --- a/include/clang/Lex/ExternalPreprocessorSource.h +++ b/include/clang/Lex/ExternalPreprocessorSource.h @@ -27,6 +27,9 @@ public: /// \brief Read the set of macros defined by this external macro source. virtual void ReadDefinedMacros() = 0; + + /// \brief Read the definition for the given macro. + virtual void LoadMacroDefinition(IdentifierInfo *II) = 0; }; } |