This change allows the SCF LoopPipelining transform to handle ops with
nested regions within the pipelined scf.for body. The op and nested
regions are treated as a single unit from the transform's perspective.
This change also makes explicit the requirement that only ops whose
parent Block is the loop body Block are allowed to be scheduled by the
caller.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
mlir/test/Dialect/SCF/loop-pipelining.mlir | ||
---|---|---|
609 | Can we add a value coming from above (from the loop block) in the test just to confirm that the mapping works fine. |
mlir/test/Dialect/SCF/loop-pipelining.mlir | ||
---|---|---|
609 | You're right, that broke it. I'm making some adjustments now. |
Comment Actions
Handle uses of nested values defined above in same stage / different stage.
May need some additional cleanup.
can those two for be unified into a clone->walk(? This would also support nested regions.