[llvm] [DWARFLinker] Avoid repeated hash lookups (NFC) (PR #109904)

Kazu Hirata via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 24 21:25:30 PDT 2024


https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/109904

None

>From 07a44d53856cd7dec4246865f3a5353374e9e4a6 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Tue, 24 Sep 2024 17:35:16 -0700
Subject: [PATCH] [DWARFLinker] Avoid repeated hash lookups (NFC)

---
 llvm/include/llvm/DWARFLinker/IndexedValuesMap.h | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/llvm/include/llvm/DWARFLinker/IndexedValuesMap.h b/llvm/include/llvm/DWARFLinker/IndexedValuesMap.h
index fadbeb168b5334..5e0779157473e8 100644
--- a/llvm/include/llvm/DWARFLinker/IndexedValuesMap.h
+++ b/llvm/include/llvm/DWARFLinker/IndexedValuesMap.h
@@ -21,11 +21,9 @@ namespace dwarf_linker {
 template <typename T> class IndexedValuesMap {
 public:
   uint64_t getValueIndex(T Value) {
-    typename ValueToIndexMapTy::iterator It = ValueToIndexMap.find(Value);
-    if (It == ValueToIndexMap.end()) {
-      It = ValueToIndexMap.insert(std::make_pair(Value, Values.size())).first;
+    auto [It, Inserted] = ValueToIndexMap.try_emplace(Value, Values.size());
+    if (Inserted)
       Values.push_back(Value);
-    }
     return It->second;
   }
 



More information about the llvm-commits mailing list