[clang-tools-extra] [modularize] Avoid repeated hash lookups (NFC) (PR #109508)
Kazu Hirata via cfe-commits
cfe-commits at lists.llvm.org
Fri Sep 20 20:40:34 PDT 2024
https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/109508
None
>From d50b829fd1277736b7e65886879fcfe9a45714f2 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Fri, 20 Sep 2024 13:31:12 -0700
Subject: [PATCH] [modularize] Avoid repeated hash lookups (NFC)
---
clang-tools-extra/modularize/Modularize.cpp | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/clang-tools-extra/modularize/Modularize.cpp b/clang-tools-extra/modularize/Modularize.cpp
index f3e7dfc20b027d..92e4792526d6f3 100644
--- a/clang-tools-extra/modularize/Modularize.cpp
+++ b/clang-tools-extra/modularize/Modularize.cpp
@@ -508,13 +508,11 @@ class EntityMap : public std::map<std::string, SmallVector<Entry, 2>> {
// Sort contents.
llvm::sort(H->second);
- // Check whether we've seen this header before.
- auto KnownH = AllHeaderContents.find(H->first);
- if (KnownH == AllHeaderContents.end()) {
- // We haven't seen this header before; record its contents.
- AllHeaderContents.insert(*H);
+ // Record this header and its contents if we haven't seen it before.
+ auto [KnownH, Inserted] =
+ AllHeaderContents.try_emplace(H->first, H->second);
+ if (Inserted)
continue;
- }
// If the header contents are the same, we're done.
if (H->second == KnownH->second)
More information about the cfe-commits
mailing list