brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 41763dd Raw
26 lines · plain
1// RUN: mlir-opt %s -transform-interpreter -split-input-file | FileCheck %s2 3// CHECK-LABEL: func @tile_offset4//  CHECK-SAME:   %[[ARG0:[a-zA-Z0-9_]+]]:5func.func @tile_offset(%arg0 : tensor<9xf32>) -> tensor<6xf32> {6  %empty = tensor.empty() : tensor<6xf32>7  // CHECK: scf.for %[[ITER:[a-zA-Z0-9_]+]] =8  // CHECK: tensor.extract_slice %[[ARG0]][%[[ITER]]] [6] [1]9  %generic = linalg.generic10    {indexing_maps = [affine_map<(d0) -> (d0 + 3)>,11                      affine_map<(d0) -> (d0)>],12     iterator_types = ["parallel"]} ins(%arg0: tensor<9xf32>) outs(%empty : tensor<6xf32>) {13    ^bb0(%in : f32, %out: f32):14      linalg.yield %in : f3215    } -> tensor<6xf32>16  return %generic : tensor<6xf32>17}18 19module attributes {transform.with_named_sequence} {20  transform.named_sequence @__transform_main(%arg1: !transform.any_op {transform.readonly}) {21    %0 = transform.structured.match ops{["linalg.generic"]} in %arg1 : (!transform.any_op) -> !transform.any_op22    %1, %loop = transform.structured.tile_using_for %0 tile_sizes [3] : (!transform.any_op) -> (!transform.any_op, !transform.any_op)23    transform.yield24  }25}26