[Mlir-commits] [mlir] [mlir][TilingInterface] Use `LoopLikeOpInterface` in tiling using SCF to unify tiling with `scf.for` and `scf.forall`. (PR #77874)
Mehdi Amini
llvmlistbot at llvm.org
Wed Jan 17 23:19:04 PST 2024
================
@@ -25,6 +25,28 @@ class RewriterBase;
using NewYieldValuesFn = std::function<SmallVector<Value>(
OpBuilder &b, Location loc, ArrayRef<BlockArgument> newBbArgs)>;
+/// A function that allows returning additional yielded values during
+/// `yieldTiledValuesAndReplace`.
+/// - `ivs` induction variable for the loop.
+/// - `newBbArgs` basic block arguments corresponding to newly added iter_args.
+/// - `tiledValues` the tiled values to return. Must be of same size as
+/// `newbbArgs`, each element of this array is inserted into the corresponding
+/// element in `newbbArgs`.
+/// - `resultOffsets` is of the same size as `tiledValues` and represents
+/// the offsets to use when inserting corresponding element from `tiledValues`
+/// into the element from `newBbArgs`.
+/// - `resultSizes` is of the same size as `tiledValues` and represents
+/// the size of the corresponding element from `tiledValues` inserted into
+/// the element from `newBbArgs`.
+/// - `resultStrides` is of the same size as `tiledValues` and represents
+/// the strides to use when inserting corresponding element from `tiledValues`
+/// into the element from `newBbArgs`.
+using YieldTiledValuesFn = std::function<LogicalResult(
----------------
joker-eph wrote:
It isn't stored, should be a function_ref.
https://github.com/llvm/llvm-project/pull/77874
More information about the Mlir-commits
mailing list