[mlir] scf::ForOp: provide builders with callbacks for loop body
Thanks to a recent change that made `::build` functions take an instance of `OpBuilder`, it is now possible to build operations within a region attached to the operation about to be created. Exercise this on `scf::ForOp` by taking a callback that populates the loop body while the loop is being created. Additionally, provide helper functions to build perfect nests of `ForOp`s, with support for iteration arguments. These functions provide the same functionality as EDSC LoopNestBuilder with simpler implementation, without relying on edsc::ScopedContext, and using `OpBuilder` in an unambiguous way. Compatibility functions for EDSC are provided, but may be removed in the future. Differential Revision: https://reviews.llvm.org/D79688
Loading
Please sign in to comment