[llvm] [SPIRV] Avoid repeated hash lookups (NFC) (PR #109517)
via llvm-commits
llvm-commits at lists.llvm.org
Sat Sep 21 00:09:39 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-spir-v
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/109517.diff
1 Files Affected:
- (modified) llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp (+3-6)
``````````diff
diff --git a/llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp b/llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
index 4175f766ac69ad..795ddf47c40dab 100644
--- a/llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
+++ b/llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
@@ -412,9 +412,8 @@ Type *SPIRVEmitIntrinsics::deduceElementTypeHelper(
return KnownTy;
// maybe a cycle
- if (Visited.find(I) != Visited.end())
+ if (!Visited.insert(I).second)
return nullptr;
- Visited.insert(I);
// fallback value in case when we fail to deduce a type
Type *Ty = nullptr;
@@ -512,9 +511,8 @@ Type *SPIRVEmitIntrinsics::deduceNestedTypeHelper(
return KnownTy;
// maybe a cycle
- if (Visited.find(U) != Visited.end())
+ if (!Visited.insert(U).second)
return OrigTy;
- Visited.insert(U);
if (dyn_cast<StructType>(OrigTy)) {
SmallVector<Type *> Tys;
@@ -1553,9 +1551,8 @@ Type *SPIRVEmitIntrinsics::deduceFunParamElementType(Function *F,
Type *SPIRVEmitIntrinsics::deduceFunParamElementType(
Function *F, unsigned OpIdx, std::unordered_set<Function *> &FVisited) {
// maybe a cycle
- if (FVisited.find(F) != FVisited.end())
+ if (!FVisited.insert(F).second)
return nullptr;
- FVisited.insert(F);
std::unordered_set<Value *> Visited;
SmallVector<std::pair<Function *, unsigned>> Lookup;
``````````
</details>
https://github.com/llvm/llvm-project/pull/109517
More information about the llvm-commits
mailing list