[llvm] [MCA] Avoid repeated hash lookups (NFC) (PR #109905)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 24 21:26:43 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-tools-llvm-mca
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/109905.diff
1 Files Affected:
- (modified) llvm/lib/MCA/HardwareUnits/ResourceManager.cpp (+3-4)
``````````diff
diff --git a/llvm/lib/MCA/HardwareUnits/ResourceManager.cpp b/llvm/lib/MCA/HardwareUnits/ResourceManager.cpp
index 82030207eee616..e45bd00f1a2929 100644
--- a/llvm/lib/MCA/HardwareUnits/ResourceManager.cpp
+++ b/llvm/lib/MCA/HardwareUnits/ResourceManager.cpp
@@ -322,12 +322,11 @@ uint64_t ResourceManager::checkAvailability(const InstrDesc &Desc) const {
uint64_t ResourceMask = llvm::bit_floor(ReadyMask);
- auto it = AvailableUnits.find(ResourceMask);
- if (it == AvailableUnits.end()) {
+ auto [it, Inserted] = AvailableUnits.try_emplace(ResourceMask);
+ if (Inserted) {
unsigned Index = getResourceStateIndex(ResourceMask);
unsigned NumUnits = llvm::popcount(Resources[Index]->getReadyMask());
- it =
- AvailableUnits.insert(std::make_pair(ResourceMask, NumUnits)).first;
+ it->second = NumUnits;
}
if (!it->second) {
``````````
</details>
https://github.com/llvm/llvm-project/pull/109905
More information about the llvm-commits
mailing list