|
1 |
| -// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-operand=input-output}))' --split-input-file %s | FileCheck %s --check-prefix=INPUT-OUTPUT |
2 |
| -// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-operand=input}))' --split-input-file %s | FileCheck %s --check-prefix=INPUT |
3 |
| -// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-operand=output}))' --split-input-file %s | FileCheck %s --check-prefix=OUTPUT |
4 |
| -// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=1 bufferize-operand=pack-input pack-depth=2}))' --split-input-file %s | FileCheck %s --check-prefix=PACK |
5 |
| -// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-elementwise=true bufferize-operand=input}))' --split-input-file %s | FileCheck %s --check-prefix=ELEMENTWISE-INPUT |
6 |
| -// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-elementwise=true bufferize-operand=input-output}))' --split-input-file %s | FileCheck %s --check-prefix=ELEMENTWISE-INPUT-OUTPUT |
| 1 | +// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-operand=linalg-input-output}))' --split-input-file %s | FileCheck %s --check-prefix=LINALG-INPUT-OUTPUT |
| 2 | +// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-operand=linalg-input}))' --split-input-file %s | FileCheck %s --check-prefix=LINALG-INPUT |
| 3 | +// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-operand=linalg-output}))' --split-input-file %s | FileCheck %s --check-prefix=LINALG-OUTPUT |
| 4 | +// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=1 bufferize-operand=pack-input pack-depth=2}))' --split-input-file %s | FileCheck %s --check-prefix=PACK-INPUT |
| 5 | +// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-elementwise=true bufferize-operand=linalg-input}))' --split-input-file %s | FileCheck %s --check-prefix=ELEMENTWISE-INPUT |
| 6 | +// RUN: iree-opt --pass-pipeline='builtin.module(func.func(iree-amdaie-bufferize-to-allocation{memory-space=2 bufferize-elementwise=true bufferize-operand=linalg-input-output}))' --split-input-file %s | FileCheck %s --check-prefix=ELEMENTWISE-INPUT-OUTPUT |
7 | 7 |
|
8 | 8 | #map = affine_map<(d0, d1, d2, d3, d4, d5, d6, d7, d8) -> (d0, d2, d3, d5, d6, d8)>
|
9 | 9 | #map1 = affine_map<(d0, d1, d2, d3, d4, d5, d6, d7, d8) -> (d2, d1, d5, d4, d7, d8)>
|
@@ -35,61 +35,61 @@ func.func @matmul_static(%arg0 : tensor<1024x2048xi32>, %arg1 : tensor<2048x512x
|
35 | 35 | return %unpack_3 : tensor<1024x512xi32>
|
36 | 36 | }
|
37 | 37 |
|
38 |
| -// INPUT-OUTPUT-NOT: memref.alloc |
39 |
| -// INPUT-OUTPUT: tensor.pack |
40 |
| -// INPUT-OUTPUT-NOT: memref.alloc |
41 |
| -// INPUT-OUTPUT: tensor.pack |
42 |
| -// INPUT-OUTPUT: memref.alloc() : memref<16x32x16x8x4x8xi32, 2 : i32> |
43 |
| -// INPUT-OUTPUT: bufferization.to_tensor |
44 |
| -// INPUT-OUTPUT: tensor.pack |
45 |
| -// INPUT-OUTPUT: memref.alloc() : memref<32x8x8x8x8x8xi32, 2 : i32> |
46 |
| -// INPUT-OUTPUT: bufferization.to_tensor |
47 |
| -// INPUT-OUTPUT: tensor.pack |
48 |
| -// INPUT-OUTPUT: memref.alloc() : memref<16x8x16x8x4x8xi32, 2 : i32> |
49 |
| -// INPUT-OUTPUT: bufferization.to_tensor |
50 |
| -// INPUT-OUTPUT: linalg.fill |
51 |
| -// INPUT-OUTPUT: linalg.generic |
| 38 | +// LINALG-INPUT-OUTPUT-NOT: memref.alloc |
| 39 | +// LINALG-INPUT-OUTPUT: tensor.pack |
| 40 | +// LINALG-INPUT-OUTPUT-NOT: memref.alloc |
| 41 | +// LINALG-INPUT-OUTPUT: tensor.pack |
| 42 | +// LINALG-INPUT-OUTPUT: memref.alloc() : memref<16x32x16x8x4x8xi32, 2 : i32> |
| 43 | +// LINALG-INPUT-OUTPUT: bufferization.to_tensor |
| 44 | +// LINALG-INPUT-OUTPUT: tensor.pack |
| 45 | +// LINALG-INPUT-OUTPUT: memref.alloc() : memref<32x8x8x8x8x8xi32, 2 : i32> |
| 46 | +// LINALG-INPUT-OUTPUT: bufferization.to_tensor |
| 47 | +// LINALG-INPUT-OUTPUT: tensor.pack |
| 48 | +// LINALG-INPUT-OUTPUT: memref.alloc() : memref<16x8x16x8x4x8xi32, 2 : i32> |
| 49 | +// LINALG-INPUT-OUTPUT: bufferization.to_tensor |
| 50 | +// LINALG-INPUT-OUTPUT: linalg.fill |
| 51 | +// LINALG-INPUT-OUTPUT: linalg.generic |
52 | 52 |
|
53 |
| -// INPUT-NOT: memref.alloc |
54 |
| -// INPUT: tensor.pack |
55 |
| -// INPUT-NOT: memref.alloc |
56 |
| -// INPUT: tensor.pack |
57 |
| -// INPUT: memref.alloc() : memref<16x32x16x8x4x8xi32, 2 : i32> |
58 |
| -// INPUT: bufferization.to_tensor |
59 |
| -// INPUT: tensor.pack |
60 |
| -// INPUT: memref.alloc() : memref<32x8x8x8x8x8xi32, 2 : i32> |
61 |
| -// INPUT: bufferization.to_tensor |
62 |
| -// INPUT: tensor.pack |
63 |
| -// INPUT-NOT: memref.alloc |
64 |
| -// INPUT: linalg.fill |
65 |
| -// INPUT: linalg.generic |
| 53 | +// LINALG-INPUT-NOT: memref.alloc |
| 54 | +// LINALG-INPUT: tensor.pack |
| 55 | +// LINALG-INPUT-NOT: memref.alloc |
| 56 | +// LINALG-INPUT: tensor.pack |
| 57 | +// LINALG-INPUT: memref.alloc() : memref<16x32x16x8x4x8xi32, 2 : i32> |
| 58 | +// LINALG-INPUT: bufferization.to_tensor |
| 59 | +// LINALG-INPUT: tensor.pack |
| 60 | +// LINALG-INPUT: memref.alloc() : memref<32x8x8x8x8x8xi32, 2 : i32> |
| 61 | +// LINALG-INPUT: bufferization.to_tensor |
| 62 | +// LINALG-INPUT: tensor.pack |
| 63 | +// LINALG-INPUT-NOT: memref.alloc |
| 64 | +// LINALG-INPUT: linalg.fill |
| 65 | +// LINALG-INPUT: linalg.generic |
66 | 66 |
|
67 |
| -// OUTPUT-NOT: memref.alloc |
68 |
| -// OUTPUT: tensor.pack |
69 |
| -// OUTPUT-NOT: memref.alloc |
70 |
| -// OUTPUT: tensor.pack |
71 |
| -// OUTPUT-NOT: memref.alloc |
72 |
| -// OUTPUT: tensor.pack |
73 |
| -// OUTPUT-NOT: memref.alloc |
74 |
| -// OUTPUT: tensor.pack |
75 |
| -// OUTPUT: memref.alloc() : memref<16x8x16x8x4x8xi32, 2 : i32> |
76 |
| -// OUTPUT: bufferization.to_tensor |
77 |
| -// OUTPUT: linalg.fill |
78 |
| -// OUTPUT: linalg.generic |
| 67 | +// LINALG-OUTPUT-NOT: memref.alloc |
| 68 | +// LINALG-OUTPUT: tensor.pack |
| 69 | +// LINALG-OUTPUT-NOT: memref.alloc |
| 70 | +// LINALG-OUTPUT: tensor.pack |
| 71 | +// LINALG-OUTPUT-NOT: memref.alloc |
| 72 | +// LINALG-OUTPUT: tensor.pack |
| 73 | +// LINALG-OUTPUT-NOT: memref.alloc |
| 74 | +// LINALG-OUTPUT: tensor.pack |
| 75 | +// LINALG-OUTPUT: memref.alloc() : memref<16x8x16x8x4x8xi32, 2 : i32> |
| 76 | +// LINALG-OUTPUT: bufferization.to_tensor |
| 77 | +// LINALG-OUTPUT: linalg.fill |
| 78 | +// LINALG-OUTPUT: linalg.generic |
79 | 79 |
|
80 |
| -// PACK: memref.alloc() : memref<16x32x64x64xi32, 1 : i32> |
81 |
| -// PACK: bufferization.to_tensor |
82 |
| -// PACK: tensor.pack |
83 |
| -// PACK: memref.alloc() : memref<32x8x64x64xi32, 1 : i32> |
84 |
| -// PACK: bufferization.to_tensor |
85 |
| -// PACK: tensor.pack |
86 |
| -// PACK-NOT: memref.alloc |
87 |
| -// PACK: tensor.pack |
88 |
| -// PACK-NOT: memref.alloc |
89 |
| -// PACK: tensor.pack |
90 |
| -// PACK-NOT: memref.alloc |
91 |
| -// PACK: linalg.fill |
92 |
| -// PACK: linalg.generic |
| 80 | +// PACK-INPUT: memref.alloc() : memref<16x32x64x64xi32, 1 : i32> |
| 81 | +// PACK-INPUT: bufferization.to_tensor |
| 82 | +// PACK-INPUT: tensor.pack |
| 83 | +// PACK-INPUT: memref.alloc() : memref<32x8x64x64xi32, 1 : i32> |
| 84 | +// PACK-INPUT: bufferization.to_tensor |
| 85 | +// PACK-INPUT: tensor.pack |
| 86 | +// PACK-INPUT-NOT: memref.alloc |
| 87 | +// PACK-INPUT: tensor.pack |
| 88 | +// PACK-INPUT-NOT: memref.alloc |
| 89 | +// PACK-INPUT: tensor.pack |
| 90 | +// PACK-INPUT-NOT: memref.alloc |
| 91 | +// PACK-INPUT: linalg.fill |
| 92 | +// PACK-INPUT: linalg.generic |
93 | 93 |
|
94 | 94 | // -----
|
95 | 95 |
|
@@ -143,31 +143,31 @@ func.func @matmul_elementwise(%arg0: tensor<1024x512xi8>, %arg1: tensor<512x1024
|
143 | 143 | return %1 : tensor<1024x1024xi32>
|
144 | 144 | }
|
145 | 145 |
|
146 |
| -// ELEMENTWISE-INPUT-COUNT-4: tensor.pack |
147 |
| -// ELEMENTWISE-INPUT: linalg.fill |
148 |
| -// ELEMENTWISE-INPUT: linalg.generic |
149 |
| -// ELEMENTWISE-INPUT-NOT: memref.alloc |
150 |
| -// ELEMENTWISE-INPUT: tensor.pack |
151 |
| -// ELEMENTWISE-INPUT-NOT: memref.alloc |
152 |
| -// ELEMENTWISE-INPUT: tensor.pack |
153 |
| -// ELEMENTWISE-INPUT-NOT: memref.alloc |
154 |
| -// ELEMENTWISE-INPUT: tensor.pack |
155 |
| -// ELEMENTWISE-INPUT: memref.alloc() : memref<1x1x8x16x4x8xi32, 2 : i32> |
156 |
| -// ELEMENTWISE-INPUT: bufferization.to_tensor |
157 |
| -// ELEMENTWISE-INPUT: tensor.pack |
158 |
| -// ELEMENTWISE-INPUT: linalg.generic |
| 146 | +// ELEMENTWISE-INPUT-COUNT-4: tensor.pack |
| 147 | +// ELEMENTWISE-INPUT: linalg.fill |
| 148 | +// ELEMENTWISE-INPUT: linalg.generic |
| 149 | +// ELEMENTWISE-INPUT-NOT: memref.alloc |
| 150 | +// ELEMENTWISE-INPUT: tensor.pack |
| 151 | +// ELEMENTWISE-INPUT-NOT: memref.alloc |
| 152 | +// ELEMENTWISE-INPUT: tensor.pack |
| 153 | +// ELEMENTWISE-INPUT-NOT: memref.alloc |
| 154 | +// ELEMENTWISE-INPUT: tensor.pack |
| 155 | +// ELEMENTWISE-INPUT: memref.alloc() : memref<1x1x8x16x4x8xi32, 2 : i32> |
| 156 | +// ELEMENTWISE-INPUT: bufferization.to_tensor |
| 157 | +// ELEMENTWISE-INPUT: tensor.pack |
| 158 | +// ELEMENTWISE-INPUT: linalg.generic |
159 | 159 |
|
160 | 160 | // ELEMENTWISE-INPUT-OUTPUT-COUNT-4: tensor.pack
|
161 |
| -// ELEMENTWISE-INPUT-OUTPUT: linalg.fill |
162 |
| -// ELEMENTWISE-INPUT-OUTPUT: linalg.generic |
163 |
| -// ELEMENTWISE-INPUT-OUTPUT-NOT: memref.alloc |
164 |
| -// ELEMENTWISE-INPUT-OUTPUT: tensor.pack |
165 |
| -// ELEMENTWISE-INPUT-OUTPUT-NOT: memref.alloc |
166 |
| -// ELEMENTWISE-INPUT-OUTPUT: tensor.pack |
167 |
| -// ELEMENTWISE-INPUT-OUTPUT: memref.alloc() : memref<1x1x8x16x4x8xi32, 2 : i32> |
168 |
| -// ELEMENTWISE-INPUT-OUTPUT: bufferization.to_tensor |
169 |
| -// ELEMENTWISE-INPUT-OUTPUT: tensor.pack |
170 |
| -// ELEMENTWISE-INPUT-OUTPUT: memref.alloc() : memref<1x1x8x16x4x8xi32, 2 : i32> |
171 |
| -// ELEMENTWISE-INPUT-OUTPUT: bufferization.to_tensor |
172 |
| -// ELEMENTWISE-INPUT-OUTPUT: tensor.pack |
173 |
| -// ELEMENTWISE-INPUT-OUTPUT: linalg.generic |
| 161 | +// ELEMENTWISE-INPUT-OUTPUT: linalg.fill |
| 162 | +// ELEMENTWISE-INPUT-OUTPUT: linalg.generic |
| 163 | +// ELEMENTWISE-INPUT-OUTPUT-NOT: memref.alloc |
| 164 | +// ELEMENTWISE-INPUT-OUTPUT: tensor.pack |
| 165 | +// ELEMENTWISE-INPUT-OUTPUT-NOT: memref.alloc |
| 166 | +// ELEMENTWISE-INPUT-OUTPUT: tensor.pack |
| 167 | +// ELEMENTWISE-INPUT-OUTPUT: memref.alloc() : memref<1x1x8x16x4x8xi32, 2 : i32> |
| 168 | +// ELEMENTWISE-INPUT-OUTPUT: bufferization.to_tensor |
| 169 | +// ELEMENTWISE-INPUT-OUTPUT: tensor.pack |
| 170 | +// ELEMENTWISE-INPUT-OUTPUT: memref.alloc() : memref<1x1x8x16x4x8xi32, 2 : i32> |
| 171 | +// ELEMENTWISE-INPUT-OUTPUT: bufferization.to_tensor |
| 172 | +// ELEMENTWISE-INPUT-OUTPUT: tensor.pack |
| 173 | +// ELEMENTWISE-INPUT-OUTPUT: linalg.generic |
0 commit comments