[Mlir-commits] [mlir] [mlir] Allow unroll & jam on SCF loops with results (PR #98887)
Aviad Cohen
llvmlistbot at llvm.org
Mon Jul 15 13:14:46 PDT 2024
================
@@ -336,6 +336,33 @@ module attributes {transform.with_named_sequence} {
// -----
+// CHECK-LABEL: @loop_unroll_and_jam_loop_with_results
+func.func @loop_unroll_and_jam_loop_with_results() -> index {
+ // CHECK: %[[LB:.*]] = arith.constant 0
+ // CHECK: %[[UB:.*]] = arith.constant 40
+ // CHECK: %[[STEP:.*]] = arith.constant 8
+ %c0 = arith.constant 0 : index
+ %c40 = arith.constant 40 : index
+ %c2 = arith.constant 2 : index
+ // CHECK: %[[RES:[a-zA-Z0-9]+]]:4 = scf.for %[[I:.*]] = %[[LB]] to %[[UB]] step %[[STEP]]
+ %sum = scf.for %i = %c0 to %c40 step %c2 iter_args(%does_not_alias_aggregated = %c0) -> (index) {
----------------
AviadCo wrote:
Please add more unit tests with `iter_args`, for example with nest loop that uses this `iter_args`.
In addition, Please change the checks to describe what happens to `iter_args` and to `scf.yield`
https://github.com/llvm/llvm-project/pull/98887
More information about the Mlir-commits
mailing list