[llvm] [ExecutionEngine] Avoid repeated map lookups (NFC) (PR #135541)

Kazu Hirata via llvm-commits llvm-commits at lists.llvm.org
Sun Apr 13 04:48:01 PDT 2025


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

None

>From d813f1124d02a0b968fc8fa350246f7bf4dfeacc Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Sun, 13 Apr 2025 04:38:37 -0700
Subject: [PATCH] [ExecutionEngine] Avoid repeated map lookups (NFC)

---
 llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp b/llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp
index 80b7452a0b226..15e583ca7685d 100644
--- a/llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp
+++ b/llvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp
@@ -475,8 +475,9 @@ Error DebugObjectManagerPlugin::notifyEmitted(
         FinalizePromise.set_value(MR.withResourceKeyDo([&](ResourceKey K) {
           assert(PendingObjs.count(&MR) && "We still hold PendingObjsLock");
           std::lock_guard<std::mutex> Lock(RegisteredObjsLock);
-          RegisteredObjs[K].push_back(std::move(PendingObjs[&MR]));
-          PendingObjs.erase(&MR);
+          auto It = PendingObjs.find(&MR);
+          RegisteredObjs[K].push_back(std::move(It->second));
+          PendingObjs.erase(It);
         }));
       });
 



More information about the llvm-commits mailing list