[llvm] [Transforms] Avoid repeated hash lookups (NFC) (PR #130708)
Kazu Hirata via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 11 07:42:11 PDT 2025
https://github.com/kazutakahirata updated https://github.com/llvm/llvm-project/pull/130708
>From 8fe66774b06579cedcba6030bbd2b146a4755d9d Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Mon, 10 Mar 2025 10:24:12 -0700
Subject: [PATCH 1/2] [Transforms] Avoid repeated hash lookups (NFC)
---
llvm/lib/Transforms/IPO/SampleProfileProbe.cpp | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/llvm/lib/Transforms/IPO/SampleProfileProbe.cpp b/llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
index ec2594b0d9dc1..e40b2cdc37f70 100644
--- a/llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
+++ b/llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
@@ -148,7 +148,8 @@ void PseudoProbeVerifier::verifyProbeFactors(
auto &PrevProbeFactors = FunctionProbeFactors[F->getName()];
for (const auto &I : ProbeFactors) {
float CurProbeFactor = I.second;
- if (PrevProbeFactors.count(I.first)) {
+ auto [It, Inserted] = PrevProbeFactors.try_emplace(I.first);
+ if (!Inserted) {
float PrevProbeFactor = PrevProbeFactors[I.first];
if (std::abs(CurProbeFactor - PrevProbeFactor) >
DistributionFactorVariance) {
@@ -163,7 +164,7 @@ void PseudoProbeVerifier::verifyProbeFactors(
}
// Update
- PrevProbeFactors[I.first] = I.second;
+ It->second = I.second;
}
}
>From 01a61c899cb7ec00db596959382bf81c70a483bf Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Tue, 11 Mar 2025 07:39:03 -0700
Subject: [PATCH 2/2] Address a comment.
---
llvm/lib/Transforms/IPO/SampleProfileProbe.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/llvm/lib/Transforms/IPO/SampleProfileProbe.cpp b/llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
index e40b2cdc37f70..a614e2d169534 100644
--- a/llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
+++ b/llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
@@ -150,7 +150,7 @@ void PseudoProbeVerifier::verifyProbeFactors(
float CurProbeFactor = I.second;
auto [It, Inserted] = PrevProbeFactors.try_emplace(I.first);
if (!Inserted) {
- float PrevProbeFactor = PrevProbeFactors[I.first];
+ float PrevProbeFactor = It->second;
if (std::abs(CurProbeFactor - PrevProbeFactor) >
DistributionFactorVariance) {
if (!BannerPrinted) {
More information about the llvm-commits
mailing list