@@ -206,46 +206,6 @@ module attributes {transform.with_named_sequence} {
206
206
207
207
// -----
208
208
209
- // CHECK-LABEL: func @hoist_vector_transfer_pairs(
210
- // CHECK-SAME: %[[MEMREF5:[a-zA-Z0-9]*]]: memref<?x?xf32>,
211
- // CHECK-SAME: %[[VAL:[a-zA-Z0-9]*]]: index,
212
- // CHECK-SAME: %[[LB:[a-zA-Z0-9]*]]: index,
213
- // CHECK-SAME: %[[UB:[a-zA-Z0-9]*]]: index,
214
- // CHECK-SAME: %[[STEP:[a-zA-Z0-9]*]]: index,
215
- // CHECK-SAME: %[[CMP:[a-zA-Z0-9]*]]: i1
216
- func.func @hoist_vector_transfer_pairs (
217
- %memref5: memref <?x?xf32 >,
218
- %val: index , %lb : index , %ub : index , %step: index , %cmp: i1 ) {
219
- %c0 = arith.constant 0 : index
220
- %cst = arith.constant 0.0 : f32
221
-
222
- // CHECK: scf.for %[[I:.*]] = %[[LB]] to %[[UB]] step %[[STEP]] {
223
- // CHECK: scf.for %[[J:.*]] = %[[LB]] to %[[UB]] step %[[STEP]] {
224
- // CHECK: }
225
- // CHECK: }
226
- scf.for %i = %lb to %ub step %step {
227
- scf.for %j = %lb to %ub step %step {
228
- %r5 = vector.transfer_read %memref5 [%c0 , %c0 ], %cst: memref <?x?xf32 >, vector <6 xf32 >
229
- " some_crippling_use" (%memref5 ) : (memref <?x?xf32 >) -> ()
230
- %u5 = " some_use" (%r5 ) : (vector <6 xf32 >) -> vector <6 xf32 >
231
- vector.transfer_write %u5 , %memref5 [%c0 , %c0 ] : vector <6 xf32 >, memref <?x?xf32 >
232
- }
233
- }
234
- return
235
- }
236
-
237
- module attributes {transform.with_named_sequence } {
238
- transform.named_sequence @__transform_main (%arg1: !transform.any_op {transform.readonly }) {
239
- %0 = transform.structured.match ops {[" func.func" ]} in %arg1
240
- : (!transform.any_op ) -> !transform.any_op
241
- transform.structured.hoist_redundant_vector_transfers %0
242
- : (!transform.any_op ) -> !transform.any_op
243
- transform.yield
244
- }
245
- }
246
-
247
- // -----
248
-
249
209
// CHECK-LABEL: func @hoist_vector_transfer_pairs_disjoint(
250
210
// CHECK-SAME: %[[MEMREF0:[a-zA-Z0-9]*]]: memref<?x?xf32>,
251
211
// CHECK-SAME: %[[MEMREF1:[a-zA-Z0-9]*]]: memref<?x?xf32>,
0 commit comments