|
1 | 1 | // RUN: heir-opt --tensor-ext-to-tensor %s | FileCheck %s |
2 | 2 |
|
3 | 3 | // CHECK: @test_rotate |
| 4 | +// CHECK-SAME: (%[[arg0:.*]]: tensor<16xi32>) -> tensor<16xi32> |
4 | 5 | func.func @test_rotate(%0: tensor<16xi32>) -> tensor<16xi32> { |
5 | 6 | // CHECK: tensor.extract_slice |
6 | 7 | // CHECK-SAME: [0] [1] [1] |
7 | 8 | // CHECK: tensor.extract_slice |
8 | 9 | // CHECK-SAME: [1] [15] [1] |
9 | 10 |
|
10 | | - // CHECK: tensor.empty |
11 | | - |
12 | | - // CHECK: tensor.insert_slice |
13 | | - // CHECK-SAME: [15] [1] [1] |
14 | | - // CHECK: tensor.insert_slice |
15 | | - // CHECK-SAME: [0] [15] [1] |
| 11 | + // CHECK: %[[INSERTED:.*]] = tensor.insert_slice %{{.*}} into %[[arg0]][15] [1] [1] |
| 12 | + // CHECK: tensor.insert_slice %{{.*}} into %[[INSERTED]][0] [15] [1] |
16 | 13 | %c1 = arith.constant 1 : i32 |
17 | 14 | %1 = tensor_ext.rotate %0, %c1 : tensor<16xi32>, i32 |
18 | 15 | return %1 : tensor<16xi32> |
19 | 16 | } |
20 | 17 |
|
21 | 18 |
|
22 | 19 | // CHECK: @test_rotate_multidim |
| 20 | +// CHECK-SAME: (%[[arg0:.*]]: tensor<3x4x16xi32>) -> tensor<3x4x16xi32> |
23 | 21 | func.func @test_rotate_multidim(%0: tensor<3x4x16xi32>) -> tensor<3x4x16xi32> { |
24 | 22 | // CHECK: tensor.extract_slice |
25 | 23 | // CHECK-SAME: [0, 0, 0] [3, 4, 3] [1, 1, 1] |
26 | 24 | // CHECK: tensor.extract_slice |
27 | 25 | // CHECK-SAME: [0, 0, 3] [3, 4, 13] [1, 1, 1] |
28 | 26 |
|
29 | | - // CHECK: tensor.empty |
30 | | - |
31 | | - // CHECK: tensor.insert_slice |
32 | | - // CHECK-SAME: [0, 0, 13] [3, 4, 3] [1, 1, 1] |
33 | | - // CHECK: tensor.insert_slice |
34 | | - // CHECK-SAME: [0, 0, 0] [3, 4, 13] [1, 1, 1] |
| 27 | + // CHECK: %[[INSERTED:.*]] = tensor.insert_slice %{{.*}} into %[[arg0]][0, 0, 13] [3, 4, 3] [1, 1, 1] |
| 28 | + // CHECK: tensor.insert_slice %{{.*}} into %[[INSERTED]][0, 0, 0] [3, 4, 13] [1, 1, 1] |
35 | 29 | %c3 = arith.constant 3 : i32 |
36 | 30 | %1 = tensor_ext.rotate %0, %c3 : tensor<3x4x16xi32>, i32 |
37 | 31 | return %1 : tensor<3x4x16xi32> |
|
0 commit comments