[clang] b48b422 - [Serialization] Avoid repeated hash lookups (NFC) (#126429)
via cfe-commits
cfe-commits at lists.llvm.org
Sun Feb 9 13:33:48 PST 2025
Author: Kazu Hirata
Date: 2025-02-09T13:33:46-08:00
New Revision: b48b422c08e85e6afd39aea7341fdf08d07d3e08
URL: https://github.com/llvm/llvm-project/commit/b48b422c08e85e6afd39aea7341fdf08d07d3e08
DIFF: https://github.com/llvm/llvm-project/commit/b48b422c08e85e6afd39aea7341fdf08d07d3e08.diff
LOG: [Serialization] Avoid repeated hash lookups (NFC) (#126429)
Added:
Modified:
clang/lib/Serialization/ASTReader.cpp
Removed:
################################################################################
diff --git a/clang/lib/Serialization/ASTReader.cpp b/clang/lib/Serialization/ASTReader.cpp
index b74bd586e74d7a9..3c64b67503195c3 100644
--- a/clang/lib/Serialization/ASTReader.cpp
+++ b/clang/lib/Serialization/ASTReader.cpp
@@ -645,10 +645,11 @@ collectMacroDefinitions(const PreprocessorOptions &PPOpts,
// For an #undef'd macro, we only care about the name.
if (IsUndef) {
- if (MacroNames && !Macros.count(MacroName))
+ auto [It, Inserted] = Macros.try_emplace(MacroName);
+ if (MacroNames && Inserted)
MacroNames->push_back(MacroName);
- Macros[MacroName] = std::make_pair("", true);
+ It->second = std::make_pair("", true);
continue;
}
@@ -661,9 +662,10 @@ collectMacroDefinitions(const PreprocessorOptions &PPOpts,
MacroBody = MacroBody.substr(0, End);
}
- if (MacroNames && !Macros.count(MacroName))
+ auto [It, Inserted] = Macros.try_emplace(MacroName);
+ if (MacroNames && Inserted)
MacroNames->push_back(MacroName);
- Macros[MacroName] = std::make_pair(MacroBody, false);
+ It->second = std::make_pair(MacroBody, false);
}
}
More information about the cfe-commits
mailing list