[Mlir-commits] [mlir] [mlir][linalg] Extend Linalg elemwise named ops semantics (PR #122753)
Andrzej WarzyĆski
llvmlistbot at llvm.org
Wed Jan 15 07:55:32 PST 2025
================
@@ -0,0 +1,39 @@
+// RUN: mlir-opt %s -split-input-file -verify-diagnostics
+
+func.func @misspelt_op_div(%A : memref<16x8xf32>, %B: memref<16x8xf32>, %C: memref<16x8xf32>) {
+ // expected-error at +3 {{expected ::mlir::linalg::ElemwiseFn to be one of: exp, log, abs, ceil, floor}}
+ // expected-error at +2 {{failed to parse ElemwiseFnAttr parameter}}
+ // expected-error at +1 {{custom op 'linalg.elemwise' expected 'func_type' attribute}}
+ linalg.elemwise func_type=#linalg.elemwise_fn<dive> ins(%A, %B: memref<16x8xf32>, memref<16x8xf32>) outs(%C: memref<16x8xf32>)
+ return
+}
+
+// -----
+
+#map = affine_map<(d0, d1) -> (d0, d1)>
+func.func @fewer_indexing_map(%A : memref<16x8xf32>, %B: memref<16x8xf32>, %C: memref<16x8xf32>) {
+ // expected-error at +1 {{'linalg.elemwise' op expected the number of indexing_map (2) to be equal to the number of input/output operands (3)}}
+ linalg.elemwise func_type=#linalg.elemwise_fn<div> indexing_maps = [#map, #map] ins(%A, %B: memref<16x8xf32>, memref<16x8xf32>) outs(%C: memref<16x8xf32>)
+ return
+}
+
+// -----
+
+#map = affine_map<(d0, d1) -> (d0, d1)>
+func.func @incorrect_transpose_map(%A : memref<8x16xf32>, %B: memref<16x8xf32>, %C: memref<16x8xf32>) {
----------------
banach-space wrote:
[nit]
```suggestion
func.func @identitiy_map_when_transpose_expected(%A : memref<8x16xf32>, %B: memref<16x8xf32>, %C: memref<16x8xf32>) {
```
https://github.com/llvm/llvm-project/pull/122753
More information about the Mlir-commits
mailing list