aboutsummaryrefslogtreecommitdiff
path: root/include/clang/Serialization
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2012-01-25 01:14:32 +0000
committerDouglas Gregor <dgregor@apple.com>2012-01-25 01:14:32 +0000
commit8efca6bb688d32fd7c0d91b504ef3307f97ee66a (patch)
tree7a3019a7ca01e77183e7076cddde0d4e414dbc02 /include/clang/Serialization
parent568991b62a29c1919e67438e0ac8216715b2c760 (diff)
Introduce a generation number for selector lookups in the global
method pool, so that we don't perform the same lookups into the same PCH/module file repeatedly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148895 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Serialization')
-rw-r--r--include/clang/Serialization/ASTReader.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/clang/Serialization/ASTReader.h b/include/clang/Serialization/ASTReader.h
index 2f4a5eba7d..91f872bc1b 100644
--- a/include/clang/Serialization/ASTReader.h
+++ b/include/clang/Serialization/ASTReader.h
@@ -424,6 +424,10 @@ private:
/// global selector ID to produce a local ID.
GlobalSelectorMapType GlobalSelectorMap;
+ /// \brief The generation number of the last time we loaded data from the
+ /// global method pool for this selector.
+ llvm::DenseMap<Selector, unsigned> SelectorGeneration;
+
/// \brief Mapping from identifiers that represent macros whose definitions
/// have not yet been deserialized to the global offset where the macro
/// record resides.
@@ -656,7 +660,8 @@ private:
/// loaded once the recursive loading has completed.
std::deque<PendingIdentifierInfo> PendingIdentifierInfos;
- /// \brief The generation number of
+ /// \brief The generation number of each identifier, which keeps track of
+ /// the last time we loaded information about this identifier.
llvm::DenseMap<IdentifierInfo *, unsigned> IdentifierGeneration;
/// \brief Contains declarations and definitions that will be