Skip to content

Commit 2f2295c

Browse files
[Analysis] Avoid repeated hash lookups (NFC) (llvm#127743)
1 parent 3e61c1a commit 2f2295c

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

llvm/lib/Analysis/AssumeBundleQueries.cpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,14 @@ void llvm::fillMapFromAssume(AssumeInst &Assume, RetainedKnowledgeMap &Result) {
8585
if (!CI)
8686
continue;
8787
uint64_t Val = CI->getZExtValue();
88-
auto Lookup = Result.find(Key);
89-
if (Lookup == Result.end() || !Lookup->second.count(&Assume)) {
90-
Result[Key][&Assume] = {Val, Val};
88+
auto [It, Inserted] = Result[Key].try_emplace(&Assume);
89+
if (Inserted) {
90+
It->second = {Val, Val};
9191
continue;
9292
}
93-
Lookup->second[&Assume].Min = std::min(Val, Lookup->second[&Assume].Min);
94-
Lookup->second[&Assume].Max = std::max(Val, Lookup->second[&Assume].Max);
93+
auto &MinMax = It->second;
94+
MinMax.Min = std::min(Val, MinMax.Min);
95+
MinMax.Max = std::max(Val, MinMax.Max);
9596
}
9697
}
9798

0 commit comments

Comments
 (0)