[llvm] ValueTracking: generalize isNonEqualPHIs (PR #108820)
Ramkumar Ramachandra via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 16 06:07:12 PDT 2024
artagnon wrote:
What about the following then?
```diff
diff --git a/llvm/lib/Analysis/ValueTracking.cpp b/llvm/lib/Analysis/ValueTracking.cpp
index c46152f60aab..9e173d89e129 100644
--- a/llvm/lib/Analysis/ValueTracking.cpp
+++ b/llvm/lib/Analysis/ValueTracking.cpp
@@ -3538,7 +3538,8 @@ static bool isNonEqualPHIs(const PHINode *PN1, const PHINode *PN2,
const Value *IV2 = PN2->getIncomingValueForBlock(IncomBB);
SimplifyQuery RecQ = Q.getWithoutCondContext();
RecQ.CxtI = IncomBB->getTerminator();
- if (!isKnownNonEqual(IV1, IV2, DemandedElts, Depth + 1, RecQ))
+ if (!isKnownNonEqual(IV1, IV2, DemandedElts, MaxAnalysisRecursionDepth - 1,
+ RecQ))
return false;
}
return true;
```
https://github.com/llvm/llvm-project/pull/108820
More information about the llvm-commits
mailing list