[llvm] [CodeGen] Avoid repeated hash lookups (NFC) (PR #140838)

Kazu Hirata via llvm-commits llvm-commits at lists.llvm.org
Tue May 20 19:56:57 PDT 2025


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

None

>From 9710e845cb1821b6fc3b389f8bd01a3eeaca6d6d Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Mon, 19 May 2025 08:07:26 -0700
Subject: [PATCH] [CodeGen] Avoid repeated hash lookups (NFC)

---
 llvm/lib/CodeGen/StackMaps.cpp | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/llvm/lib/CodeGen/StackMaps.cpp b/llvm/lib/CodeGen/StackMaps.cpp
index eb6dd67dba576..21b6fb084e494 100644
--- a/llvm/lib/CodeGen/StackMaps.cpp
+++ b/llvm/lib/CodeGen/StackMaps.cpp
@@ -521,11 +521,9 @@ void StackMaps::recordStackMapOpers(const MCSymbol &MILabel,
       MFI.hasVarSizedObjects() || RegInfo->hasStackRealignment(*(AP.MF));
   uint64_t FrameSize = HasDynamicFrameSize ? UINT64_MAX : MFI.getStackSize();
 
-  auto CurrentIt = FnInfos.find(AP.CurrentFnSym);
-  if (CurrentIt != FnInfos.end())
+  auto [CurrentIt, Inserted] = FnInfos.try_emplace(AP.CurrentFnSym, FrameSize);
+  if (!Inserted)
     CurrentIt->second.RecordCount++;
-  else
-    FnInfos.insert(std::make_pair(AP.CurrentFnSym, FunctionInfo(FrameSize)));
 }
 
 void StackMaps::recordStackMap(const MCSymbol &L, const MachineInstr &MI) {



More information about the llvm-commits mailing list