[flang-commits] [flang] [mlir] [mlir] [dataflow] unify semantics of program point (PR #110344)
Matthias Springer via flang-commits
flang-commits at lists.llvm.org
Tue Dec 30 02:44:04 PST 2025
================
@@ -542,7 +554,8 @@ void AbstractSparseBackwardDataFlowAnalysis::visitRegionSuccessors(
MutableArrayRef<OpOperand> opoperands = operandsToOpOperands(operands);
ValueRange inputs = successor.getSuccessorInputs();
for (auto [operand, input] : llvm::zip(opoperands, inputs)) {
- meet(getLatticeElement(operand.get()), *getLatticeElementFor(op, input));
+ meet(getLatticeElement(operand.get()),
+ *getLatticeElementFor(getProgramPointAfter(op), input));
----------------
matthias-springer wrote:
@cxy-1993 I looked at this code today. Is this correct? `input` could be a block argument of a region. Is it correct to always use `getProgramPointAfter(op)` or should this distinguish between block argument / op result?
https://github.com/llvm/llvm-project/pull/110344
More information about the flang-commits
mailing list