@@ -279,14 +279,14 @@ module attributes {transform.with_named_sequence} {
279
279
// CHECK-DAG: %[[C2_1:.*]] = arith.constant 2 : index
280
280
// CHECK-DAG: %[[C1:.*]] = arith.constant 1 : index
281
281
// CHECK-DAG: %[[C1_2:.*]] = arith.constant 1 : index
282
- // CHECK: %[[S1:.*]] = scf.for %[[ARG2:.*]] = %[[C0]] to %[[C2]] step %[[C1]]
283
- // CHECK: %[[S2:.*]] = scf.for %[[ARG4:.*]] = %[[C0_0]] to %[[C2_1]] step %[[C1_2]]
282
+ // CHECK: %[[S1:.*]] = scf.for %[[ARG2:.*]] = %[[C0]] to %[[C2]] step %[[C1]] iter_args(%[[ARG5:.*]] = %[[ARG1]]) -> (tensor<2x8x8x2xf32>)
283
+ // CHECK: %[[S2:.*]] = scf.for %[[ARG4:.*]] = %[[C0_0]] to %[[C2_1]] step %[[C1_2]] iter_args(%[[ARG6:.*]] = %[[ARG5]]) -> (tensor<2x8x8x2xf32>)
284
284
// CHECK: %[[EXTRACTED_SLICE:.*]] = tensor.extract_slice %[[ARG0]][0, 0, %[[ARG2]], %[[ARG4]], 0, 0] [6, 6, 1, 1, 2, 2] [1, 1, 1, 1, 1, 1] : tensor<6x6x2x2x2x2xf32> to tensor<6x6x1x1x2x2xf32>
285
285
// CHECK: %[[S3:.*]] = affine.apply #[[$MAP0]](%[[ARG2]])
286
286
// CHECK: %[[S4:.*]] = affine.apply #[[$MAP0]](%[[ARG4]])
287
287
// CHECK: %[[S5:.*]] = affine.apply #[[$MAP1]]()
288
288
// CHECK: %[[S6:.*]] = affine.apply #[[$MAP1]]()
289
- // CHECK: %[[EXTRACTED_SLICE_5:.*]] = tensor.extract_slice %[[ARG1 ]][0, %[[S3]], %[[S4]], 0] [2, %[[S5]], %[[S6]], 2] [1, 1, 1, 1] : tensor<2x8x8x2xf32> to tensor<2x?x?x2xf32>
289
+ // CHECK: %[[EXTRACTED_SLICE_5:.*]] = tensor.extract_slice %[[ARG6 ]][0, %[[S3]], %[[S4]], 0] [2, %[[S5]], %[[S6]], 2] [1, 1, 1, 1] : tensor<2x8x8x2xf32> to tensor<2x?x?x2xf32>
290
290
291
291
// -----
292
292
@@ -321,10 +321,10 @@ module attributes {transform.with_named_sequence} {
321
321
// CHECK-DAG: %[[C2_3:.*]] = arith.constant 2 : index
322
322
// CHECK-DAG: %[[C2_5:.*]] = arith.constant 2 : index
323
323
// CHECK-DAG: %[[C2_7:.*]] = arith.constant 2 : index
324
- // CHECK: %[[S1:.*]] = scf.for %[[ARG2:.*]] = %[[C0]] to %[[C2]] step %[[C2_0]]
325
- // CHECK: %[[S2:.*]] = scf.for %[[ARG4:.*]] = %[[C0_1]] to %[[C2_2]] step %[[C2_3]]
326
- // CHECK: %[[S3:.*]] = scf.for %[[ARG6:.*]] = %[[C0_4]] to %[[C3]] step %[[C2_5]]
327
- // CHECK: %[[S4:.*]] = scf.for %[[ARG8:.*]] = %[[C0_6]] to %[[C5]] step %[[C2_7]]
324
+ // CHECK: %[[S1:.*]] = scf.for %[[ARG2:.*]] = %[[C0]] to %[[C2]] step %[[C2_0]] iter_args(%[[ARG9:.*]] = %[[ARG1]]) -> (tensor<3x8x8x5xf32>)
325
+ // CHECK: %[[S2:.*]] = scf.for %[[ARG4:.*]] = %[[C0_1]] to %[[C2_2]] step %[[C2_3]] iter_args(%[[ARG10:.*]] = %[[ARG9]]) -> (tensor<3x8x8x5xf32>)
326
+ // CHECK: %[[S3:.*]] = scf.for %[[ARG6:.*]] = %[[C0_4]] to %[[C3]] step %[[C2_5]] iter_args(%[[ARG11:.*]] = %[[ARG10]])
327
+ // CHECK: %[[S4:.*]] = scf.for %[[ARG8:.*]] = %[[C0_6]] to %[[C5]] step %[[C2_7]] iter_args(%[[ARG12:.*]] = %[[ARG11]])
328
328
// CHECK: %[[C3_8:.*]] = arith.constant 3 : index
329
329
// CHECK: %[[S5:.*]] = affine.min #[[$MAP0]](%[[ARG6]])
330
330
// CHECK: %[[C5_9:.*]] = arith.constant 5 : index
@@ -334,7 +334,7 @@ module attributes {transform.with_named_sequence} {
334
334
// CHECK: %[[S8:.*]] = affine.apply #[[$MAP2]](%[[ARG4]])
335
335
// CHECK: %[[S9:.*]] = affine.apply #[[$MAP3]]()
336
336
// CHECK: %[[S10:.*]] = affine.apply #[[$MAP3]]()
337
- // CHECK: %[[EXTRACTED_SLICE_12:.*]] = tensor.extract_slice %[[ARG1 ]][%[[ARG6]], %[[S7]], %[[S8]], %[[ARG8]]] [%[[S5]], %[[S9]], %[[S10]], %[[S6]]] [1, 1, 1, 1] : tensor<3x8x8x5xf32> to tensor<?x?x?x?xf32>
337
+ // CHECK: %[[EXTRACTED_SLICE_12:.*]] = tensor.extract_slice %[[ARG12 ]][%[[ARG6]], %[[S7]], %[[S8]], %[[ARG8]]] [%[[S5]], %[[S9]], %[[S10]], %[[S6]]] [1, 1, 1, 1] : tensor<3x8x8x5xf32> to tensor<?x?x?x?xf32>
338
338
339
339
// -----
340
340
@@ -367,14 +367,14 @@ module attributes {transform.with_named_sequence} {
367
367
// CHECK-DAG: %[[C1_2:.*]] = arith.constant 1 : index
368
368
// CHECK-DAG: %[[C1_4:.*]] = arith.constant 1 : index
369
369
// CHECK-DAG: %[[C1_6:.*]] = arith.constant 1 : index
370
- // CHECK: %[[S1:.*]] = scf.for %[[ARG2:.*]] = %[[C0]] to %[[C2]] step %[[C1]]
371
- // CHECK: %[[S2:.*]] = scf.for %[[ARG4:.*]] = %[[C0_0]] to %[[C1_1]] step %[[C1_2]]
372
- // CHECK: %[[S3:.*]] = scf.for %[[ARG6:.*]] = %[[C0_3]] to %[[C3]] step %[[C1_4]]
373
- // CHECK: %[[S4:.*]] = scf.for %[[ARG8:.*]] = %[[C0_5]] to %[[C5]] step %[[C1_6]]
370
+ // CHECK: %[[S1:.*]] = scf.for %[[ARG2:.*]] = %[[C0]] to %[[C2]] step %[[C1]] iter_args(%[[ARG9:.*]] = %[[ARG1]]) -> (tensor<3x8x1x5xf32>)
371
+ // CHECK: %[[S2:.*]] = scf.for %[[ARG4:.*]] = %[[C0_0]] to %[[C1_1]] step %[[C1_2]] iter_args(%[[ARG10:.*]] = %[[ARG9]]) -> (tensor<3x8x1x5xf32>)
372
+ // CHECK: %[[S3:.*]] = scf.for %[[ARG6:.*]] = %[[C0_3]] to %[[C3]] step %[[C1_4]] iter_args(%[[ARG11:.*]] = %[[ARG10]]) -> (tensor<3x8x1x5xf32>)
373
+ // CHECK: %[[S4:.*]] = scf.for %[[ARG8:.*]] = %[[C0_5]] to %[[C5]] step %[[C1_6]] iter_args(%[[ARG12:.*]] = %[[ARG11]]) -> (tensor<3x8x1x5xf32>)
374
374
// CHECK: %[[EXTRACTED_SLICE:.*]] = tensor.extract_slice %[[ARG0]][0, 0, %[[ARG2]], %[[ARG4]], %[[ARG6]], %[[ARG8]]] [6, 1, 1, 1, 1, 1] [1, 1, 1, 1, 1, 1] : tensor<6x1x2x1x3x5xf32> to tensor<6x1x1x1x1x1xf32>
375
375
// CHECK: %[[S5:.*]] = affine.apply #[[$MAP0]](%[[ARG2]])
376
376
// CHECK: %[[S6:.*]] = affine.apply #[[$MAP0]](%[[ARG4]])
377
377
// CHECK: %[[S7:.*]] = affine.apply #[[$MAP1]]()
378
378
// CHECK: %[[S8:.*]] = affine.apply #[[$MAP1]]()
379
- // CHECK: %[[EXTRACTED_SLICE_9:.*]] = tensor.extract_slice %[[ARG1 ]][%[[ARG6]], %[[S5]], 0, %[[ARG8]]] [1, %[[S7]], 1, 1] [1, 1, 1, 1] : tensor<3x8x1x5xf32> to tensor<1x?x1x1xf32>
379
+ // CHECK: %[[EXTRACTED_SLICE_9:.*]] = tensor.extract_slice %[[ARG12 ]][%[[ARG6]], %[[S5]], 0, %[[ARG8]]] [1, %[[S7]], 1, 1] [1, 1, 1, 1] : tensor<3x8x1x5xf32> to tensor<1x?x1x1xf32>
380
380
// CHECK: %[[S9:.*]] = linalg.winograd_output_transform m(4) r(3) ins(%[[EXTRACTED_SLICE]] : tensor<6x1x1x1x1x1xf32>) outs(%[[EXTRACTED_SLICE_9]] : tensor<1x?x1x1xf32>) -> tensor<1x?x1x1xf32>
0 commit comments