[Mlir-commits] [mlir] [mlir][Interfaces] Document completeness requirement of `RegionBranchOpInterface` (PR #202018)
Matthias Springer
llvmlistbot at llvm.org
Tue Jun 9 02:49:41 PDT 2026
================
@@ -210,6 +211,14 @@ def RegionBranchOpInterface : OpInterface<"RegionBranchOpInterface"> {
Note: The control flow does not necessarily have to enter any region of
this op.
+ The returned successors must be complete with respect to the constant
+ operand information in `operands`: every region successor that could be
+ taken on entry must be included unless it is ruled out by an entry in
+ `operands`. Omitting a successor that is possible is an incorrect
+ implementation and may cause analyses/transformations to produce
+ incorrect results. It is acceptable to over-approximate by reporting
+ successors that turn out to be infeasible at runtime.
----------------
matthias-springer wrote:
Removed this paragraph.
I replaced "the potential ..." to "all potential ..." in all interface method descriptions, as you suggested below. That makes the API clear enough for me.
https://github.com/llvm/llvm-project/pull/202018
More information about the Mlir-commits
mailing list