[llvm] [LAA] Collect no-wrap predicates separately in getPtrStride/isNoWrap. (PR #203787)
Ramkumar Ramachandra via llvm-commits
llvm-commits at lists.llvm.org
Sun Jun 14 14:15:36 PDT 2026
================
@@ -2653,19 +2653,15 @@ class PredicatedScalarEvolution {
getAsAddRec(Value *V,
SmallVectorImpl<const SCEVPredicate *> *WrapPredsAdded = nullptr);
- /// Proves that V doesn't overflow by adding SCEV predicate.
- LLVM_ABI void setNoOverflow(Value *V,
- SCEVWrapPredicate::IncrementWrapFlags Flags);
-
- /// Returns true if we've proved that V doesn't wrap by means of a SCEV
- /// predicate.
+ /// Returns true if we've statically proved that V doesn't wrap.
LLVM_ABI bool hasNoOverflow(Value *V,
SCEVWrapPredicate::IncrementWrapFlags Flags);
/// Returns the ScalarEvolution analysis used.
ScalarEvolution *getSE() const { return &SE; }
- /// We need to explicitly define the copy constructor because of FlagsMap.
+ /// We need to explicitly define the copy constructor because of the unique
+ /// SCEVUnionPredicate owned by Preds.
----------------
artagnon wrote:
```suggestion
/// We need to explicitly define the copy constructor due to the ownership of the SCEVUnionPredicate Preds.
```
https://github.com/llvm/llvm-project/pull/203787
More information about the llvm-commits
mailing list