[Mlir-commits] [mlir] [mlir][dataflow] Drop the firstIndex argument of old visitNonControlFlowArguments, add new visitNonControlFlowArguments API and use it in IntegerRangeAnalysis (PR #175210)
Matthias Springer
llvmlistbot at llvm.org
Sat Jan 24 04:43:55 PST 2026
================
@@ -325,16 +332,21 @@ class SparseForwardDataFlowAnalysis
/// operands, and a region successor, compute the lattice values for block
/// arguments that are not accounted for by the branching control flow (ex.
/// the bounds of loops). By default, this method marks all such lattice
- /// elements as having reached a pessimistic fixpoint. `firstIndex` is the
- /// index of the first element of `argLattices` that is set by control-flow.
+ /// elements as having reached a pessimistic fixpoint.
virtual void visitNonControlFlowArguments(Operation *op,
const RegionSuccessor &successor,
ValueRange successorInputs,
- ArrayRef<StateT *> argLattices,
- unsigned firstIndex) {
- setAllToEntryStates(argLattices.take_front(firstIndex));
- setAllToEntryStates(
- argLattices.drop_front(firstIndex + successorInputs.size()));
+ ArrayRef<StateT *> argLattices) {
+ setAllToEntryStates(argLattices);
+ }
+
+ /// Given an operation with region non-control-flow, the lattices of the entry
+ /// block arguments, compute the lattice values for block arguments.(ex. the
+ /// block argument of gpu.launch).
+ virtual void visitNonControlFlowArguments(Operation *op, Region *const region,
----------------
matthias-springer wrote:
Is it correct to say that this function is never called for ops that implement the `RegionBranchOpInterface`?
https://github.com/llvm/llvm-project/pull/175210
More information about the Mlir-commits
mailing list