aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/StackMaps.cpp
diff options
context:
space:
mode:
authorKazu Hirata <kazu@google.com>2025-05-20 21:39:17 -0700
committerGitHub <noreply@github.com>2025-05-20 21:39:17 -0700
commit51b288d9cfb4918cffd915b8654cabf28bb391b2 (patch)
treeb04214b2791d536a880c37e566ff1511211d3a32 /llvm/lib/CodeGen/StackMaps.cpp
parentadbe155eeed6582f85d4c8e2a9268d3df31bf70d (diff)
downloadllvm-51b288d9cfb4918cffd915b8654cabf28bb391b2.zip
llvm-51b288d9cfb4918cffd915b8654cabf28bb391b2.tar.gz
llvm-51b288d9cfb4918cffd915b8654cabf28bb391b2.tar.bz2
[CodeGen] Avoid repeated hash lookups (NFC) (#140838)
Diffstat (limited to 'llvm/lib/CodeGen/StackMaps.cpp')
-rw-r--r--llvm/lib/CodeGen/StackMaps.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/lib/CodeGen/StackMaps.cpp b/llvm/lib/CodeGen/StackMaps.cpp
index eb6dd67..21b6fb0 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) {