Skip to content

Commit

Permalink
filechecks update.
Browse files Browse the repository at this point in the history
  • Loading branch information
PapyChacal committed Jun 10, 2024
1 parent 70d9a16 commit 95aa0e8
Show file tree
Hide file tree
Showing 3 changed files with 70 additions and 4 deletions.
4 changes: 2 additions & 2 deletions tests/filecheck/dialects/stencil/stencil_ops.mlir
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,7 @@ builtin.module {
}

// CHECK: builtin.module {
// CHECK-NEXT: func.func private @stencil_buffer(%0 : !stencil.field<[-4,68]xf64>, %1 : !stencil.field<[-4,68]xf64>, %2 : !stencil.field<[-4,68]xf64>) {
// CHECK-NEXT: func.func private @stencil_forwarding_store(%0 : !stencil.field<[-4,68]xf64>, %1 : !stencil.field<[-4,68]xf64>, %2 : !stencil.field<[-4,68]xf64>) {
// CHECK-NEXT: %3 = stencil.load %0 : !stencil.field<[-4,68]xf64> -> !stencil.temp<?xf64>
// CHECK-NEXT: %4 = stencil.apply(%5 = %3 : !stencil.temp<?xf64>) -> (!stencil.temp<?xf64>) {
// CHECK-NEXT: %6 = stencil.access %5[0] : !stencil.temp<?xf64>
Expand All @@ -256,4 +256,4 @@ builtin.module {
// CHECK-NEXT: stencil.store %11 to %2 ([0] : [64]) : !stencil.temp<?xf64> to !stencil.field<[-4,68]xf64>
// CHECK-NEXT: func.return
// CHECK-NEXT: }
// CHECK-NEXT: }
// CHECK-NEXT: }
43 changes: 43 additions & 0 deletions tests/filecheck/transforms/convert-stencil-to-ll-mlir.mlir
Original file line number Diff line number Diff line change
Expand Up @@ -840,4 +840,47 @@ func.func @buffered_combine(%115 : !stencil.field<?x?xf64>) {
}

}

// CHECK-NEXT: func.func private @stencil_forwarding_store(%346 : memref<72xf64>, %347 : memref<72xf64>, %348 : memref<72xf64>) {
// CHECK-NEXT: %349 = "memref.subview"(%347) <{"static_offsets" = array<i64: 4>, "static_sizes" = array<i64: 64>, "static_strides" = array<i64: 1>, "operandSegmentSizes" = array<i32: 1, 0, 0, 0>}> : (memref<72xf64>) -> memref<64xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %350 = "memref.subview"(%348) <{"static_offsets" = array<i64: 4>, "static_sizes" = array<i64: 64>, "static_strides" = array<i64: 1>, "operandSegmentSizes" = array<i32: 1, 0, 0, 0>}> : (memref<72xf64>) -> memref<64xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %351 = "memref.subview"(%346) <{"static_offsets" = array<i64: 4>, "static_sizes" = array<i64: 66>, "static_strides" = array<i64: 1>, "operandSegmentSizes" = array<i32: 1, 0, 0, 0>}> : (memref<72xf64>) -> memref<66xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %352 = arith.constant 0 : index
// CHECK-NEXT: %353 = arith.constant 1 : index
// CHECK-NEXT: %354 = arith.constant 64 : index
// CHECK-NEXT: "scf.parallel"(%352, %354, %353) <{"operandSegmentSizes" = array<i32: 1, 1, 1, 0>}> ({
// CHECK-NEXT: ^23(%355 : index):
// CHECK-NEXT: %356 = arith.constant -1 : index
// CHECK-NEXT: %357 = arith.addi %355, %356 : index
// CHECK-NEXT: %358 = memref.load %351[%357] : memref<66xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %359 = memref.load %351[%355] : memref<66xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %360 = arith.constant 1 : index
// CHECK-NEXT: %361 = arith.addi %355, %360 : index
// CHECK-NEXT: %362 = memref.load %351[%361] : memref<66xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %363 = arith.addf %358, %359 : f64
// CHECK-NEXT: %364 = arith.addf %362, %363 : f64
// CHECK-NEXT: memref.store %364, %349[%355] : memref<64xf64, strided<[1], offset: 4>>
// CHECK-NEXT: scf.yield
// CHECK-NEXT: }) : (index, index, index) -> ()
// CHECK-NEXT: %365 = "memref.subview"(%347) <{"static_offsets" = array<i64: 4>, "static_sizes" = array<i64: 64>, "static_strides" = array<i64: 1>, "operandSegmentSizes" = array<i32: 1, 0, 0, 0>}> : (memref<72xf64>) -> memref<64xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %366 = arith.constant 0 : index
// CHECK-NEXT: %367 = arith.constant 1 : index
// CHECK-NEXT: %368 = arith.constant 64 : index
// CHECK-NEXT: "scf.parallel"(%366, %368, %367) <{"operandSegmentSizes" = array<i32: 1, 1, 1, 0>}> ({
// CHECK-NEXT: ^24(%369 : index):
// CHECK-NEXT: %370 = arith.constant -1 : index
// CHECK-NEXT: %371 = arith.addi %369, %370 : index
// CHECK-NEXT: %372 = memref.load %365[%371] : memref<64xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %373 = memref.load %365[%369] : memref<64xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %374 = arith.constant 1 : index
// CHECK-NEXT: %375 = arith.addi %369, %374 : index
// CHECK-NEXT: %376 = memref.load %365[%375] : memref<64xf64, strided<[1], offset: 4>>
// CHECK-NEXT: %377 = arith.addf %372, %373 : f64
// CHECK-NEXT: %378 = arith.addf %376, %377 : f64
// CHECK-NEXT: memref.store %378, %350[%369] : memref<64xf64, strided<[1], offset: 4>>
// CHECK-NEXT: scf.yield
// CHECK-NEXT: }) : (index, index, index) -> ()
// CHECK-NEXT: func.return
// CHECK-NEXT: }

// CHECK-NEXT: }
27 changes: 25 additions & 2 deletions tests/filecheck/transforms/stencil-shape-inference.mlir
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ builtin.module {
// CHECK-NEXT: func.return
// CHECK-NEXT: }

//-----
// -----

builtin.module {
func.func @stencil_hdiff(%0 : !stencil.field<?x?x?xf64>, %1 : !stencil.field<?x?x?xf64>) {
Expand Down Expand Up @@ -355,4 +355,27 @@ builtin.module {
}
}

// CHECK-NEXT: NOPE
// CHECK: builtin.module {
// CHECK-NEXT: func.func private @stencil_forwarding_store(%0 : !stencil.field<[-4,68]xf64>, %1 : !stencil.field<[-4,68]xf64>, %2 : !stencil.field<[-4,68]xf64>) {
// CHECK-NEXT: %3 = stencil.load %0 : !stencil.field<[-4,68]xf64> -> !stencil.temp<[-1,65]xf64>
// CHECK-NEXT: %4 = stencil.apply(%5 = %3 : !stencil.temp<[-1,65]xf64>) -> (!stencil.temp<[0,64]xf64>) {
// CHECK-NEXT: %6 = stencil.access %5[-1] : !stencil.temp<[-1,65]xf64>
// CHECK-NEXT: %7 = stencil.access %5[0] : !stencil.temp<[-1,65]xf64>
// CHECK-NEXT: %8 = stencil.access %5[1] : !stencil.temp<[-1,65]xf64>
// CHECK-NEXT: %9 = arith.addf %6, %7 : f64
// CHECK-NEXT: %10 = arith.addf %8, %9 : f64
// CHECK-NEXT: stencil.return %10 : f64
// CHECK-NEXT: }
// CHECK-NEXT: %11 = stencil.store %4 to %1 ([0] : [64]) : !stencil.temp<[0,64]xf64> to !stencil.field<[-4,68]xf64> with_halo : !stencil.temp<[-1,65]xf64>
// CHECK-NEXT: %12 = stencil.apply(%13 = %11 : !stencil.temp<[-1,65]xf64>) -> (!stencil.temp<[0,64]xf64>) {
// CHECK-NEXT: %14 = stencil.access %13[-1] : !stencil.temp<[-1,65]xf64>
// CHECK-NEXT: %15 = stencil.access %13[0] : !stencil.temp<[-1,65]xf64>
// CHECK-NEXT: %16 = stencil.access %13[1] : !stencil.temp<[-1,65]xf64>
// CHECK-NEXT: %17 = arith.addf %14, %15 : f64
// CHECK-NEXT: %18 = arith.addf %16, %17 : f64
// CHECK-NEXT: stencil.return %18 : f64
// CHECK-NEXT: }
// CHECK-NEXT: stencil.store %12 to %2 ([0] : [64]) : !stencil.temp<[0,64]xf64> to !stencil.field<[-4,68]xf64>
// CHECK-NEXT: func.return
// CHECK-NEXT: }
// CHECK-NEXT: }

0 comments on commit 95aa0e8

Please sign in to comment.