[Mlir-commits] [mlir] [mlir][Interfaces] Add `ExecutionProgressOpInterface` + folding pattern (PR #179039)
Matthias Springer
llvmlistbot at llvm.org
Sun Feb 1 06:45:24 PST 2026
matthias-springer wrote:
> I am personally a bit more in favour of `mustProgress` defaulting to false
This makes sense to me, I change the implementation accordingly. "mustProgress = true" enables certain transformations and those may not be correct, e.g., for unregistered ops, where we cannot query the interface.
The default impl of the interface method is still `return true;`. This now behaves like the `MemoryEffectOpInterface` / `isMemoryEffectFree`. If you implement the interface, but do nothing else (i.e., not override the interface method), you get "mustProgress = true".
> but for the common case of having the method return true or false a trait is available
Given that we have the default impl, we'd only need a trait for the "false" case. Something like `MayNotProgress`. Let's add it when we have the first use case for it.
https://github.com/llvm/llvm-project/pull/179039
More information about the Mlir-commits
mailing list