[clang] [Tooling] Avoid repeated hash lookups (NFC) (PR #111469)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Oct 7 19:46:57 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/111469.diff
1 Files Affected:
- (modified) clang/lib/Tooling/Inclusions/HeaderIncludes.cpp (+3-6)
``````````diff
diff --git a/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp b/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
index 4313da66efc0b7..0cb96097415ea8 100644
--- a/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
+++ b/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
@@ -320,12 +320,9 @@ HeaderIncludes::HeaderIncludes(StringRef FileName, StringRef Code,
// - If CategoryEndOffset[Priority] isn't set, use the next higher value
// that is set, up to CategoryEndOffset[Highest].
auto Highest = Priorities.begin();
- if (CategoryEndOffsets.find(*Highest) == CategoryEndOffsets.end()) {
- if (FirstIncludeOffset >= 0)
- CategoryEndOffsets[*Highest] = FirstIncludeOffset;
- else
- CategoryEndOffsets[*Highest] = MinInsertOffset;
- }
+ auto [It, Inserted] = CategoryEndOffsets.try_emplace(*Highest);
+ if (Inserted)
+ It->second = FirstIncludeOffset >= 0 ? FirstIncludeOffset : MinInsertOffset;
// By this point, CategoryEndOffset[Highest] is always set appropriately:
// - to an appropriate location before/after existing #includes, or
// - to right after the header guard, or
``````````
</details>
https://github.com/llvm/llvm-project/pull/111469
More information about the cfe-commits
mailing list