[Mlir-commits] [mlir] [mlir][transform] Overhaul `RegionBranchOpInterface` implementations. (PR #111408)
Matthias Springer
llvmlistbot at llvm.org
Thu Oct 10 02:10:29 PDT 2024
Ingo =?utf-8?q?Müller?= <ingomueller at google.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/111408 at github.com>
================
@@ -104,16 +104,8 @@ transform::AlternativesOp::getEntrySuccessorOperands(RegionBranchPoint point) {
void transform::AlternativesOp::getSuccessorRegions(
RegionBranchPoint point, SmallVectorImpl<RegionSuccessor> ®ions) {
- for (Region &alternative : llvm::drop_begin(
----------------
matthias-springer wrote:
`In particular and unlike scf.for, transform.foreach does not pass control from one iteration of its body to the next directly; it rather passes the control back to the parent op, which then passes it back to the body for the next iteration. That can be seen by the fact that the body always gets arguments of the same type as the operands of the parent op (and none of the yielded types) and the types that are yielded correspond exactly to the result types of the parent op.`
I don't follow this part. Where is the type mismatch here?
https://github.com/llvm/llvm-project/pull/111408
More information about the Mlir-commits
mailing list