[llvm] [ObjectYAML] Avoid repeated hash lookups (NFC) (PR #111938)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 10 20:41:42 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-objectyaml
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/111938.diff
1 Files Affected:
- (modified) llvm/lib/ObjectYAML/COFFEmitter.cpp (+3-6)
``````````diff
diff --git a/llvm/lib/ObjectYAML/COFFEmitter.cpp b/llvm/lib/ObjectYAML/COFFEmitter.cpp
index bb46de4c6f57f4..3811376adebd26 100644
--- a/llvm/lib/ObjectYAML/COFFEmitter.cpp
+++ b/llvm/lib/ObjectYAML/COFFEmitter.cpp
@@ -125,15 +125,12 @@ struct COFFParser {
}
unsigned getStringIndex(StringRef Str) {
- StringMap<unsigned>::iterator i = StringTableMap.find(Str);
- if (i == StringTableMap.end()) {
- unsigned Index = StringTable.size();
+ auto [It, Inserted] = StringTableMap.try_emplace(Str, StringTable.size());
+ if (Inserted) {
StringTable.append(Str.begin(), Str.end());
StringTable.push_back(0);
- StringTableMap[Str] = Index;
- return Index;
}
- return i->second;
+ return It->second;
}
COFFYAML::Object &Obj;
``````````
</details>
https://github.com/llvm/llvm-project/pull/111938
More information about the llvm-commits
mailing list