[Mlir-commits] [mlir] [mlir][emitc] Fix `emitc.expression` example (PR #84060)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Tue Mar 5 11:35:21 PST 2024


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-mlir-emitc

Author: Kirill Chibisov (kchibisov)

<details>
<summary>Changes</summary>

Make it use and refer to `emitc.yield` and also fix type issues.

---
Full diff: https://github.com/llvm/llvm-project/pull/84060.diff


1 Files Affected:

- (modified) mlir/include/mlir/Dialect/EmitC/IR/EmitC.td (+7-7) 


``````````diff
diff --git a/mlir/include/mlir/Dialect/EmitC/IR/EmitC.td b/mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
index 5679742bfa16ec..1ab8f6c904a9df 100644
--- a/mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
+++ b/mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
@@ -389,17 +389,17 @@ def EmitC_ExpressionOp : EmitC_Op<"expression",
 
     As the operation is to be emitted as a C expression, the operations within
     its body must form a single Def-Use tree of emitc ops whose result is
-    yielded by a terminating `yield`.
+    yielded by a terminating `emitc.yield`.
 
     Example:
 
     ```mlir
-    %r = emitc.expression : () -> i32 {
+    %r = emitc.expression : i32 {
       %0 = emitc.add %a, %b : (i32, i32) -> i32
-      %1 = emitc.call "foo"(%0) : () -> i32
+      %1 = emitc.call_opaque "foo"(%0) : (i32) -> i32
       %2 = emitc.add %c, %d : (i32, i32) -> i32
       %3 = emitc.mul %1, %2 : (i32, i32) -> i32
-      yield %3
+      emitc.yield %3 : i32
     }
     ```
 
@@ -409,9 +409,9 @@ def EmitC_ExpressionOp : EmitC_Op<"expression",
     int32_t v7 = foo(v1 + v2) * (v3 + v4);
     ```
 
-    The operations allowed within expression body are emitc.add, emitc.apply,
-    emitc.call, emitc.cast, emitc.cmp, emitc.div, emitc.mul, emitc.rem and
-    emitc.sub.
+    The operations allowed within expression body are `emitc.add`,
+    `emitc.apply`, `emitc.call`, `emitc.cast`, `emitc.cmp`, `emitc.div`,
+    `emitc.mul`, `emitc.rem`, and `emitc.sub`.
 
     When specified, the optional `do_not_inline` indicates that the expression is
     to be emitted as seen above, i.e. as the rhs of an EmitC SSA value

``````````

</details>


https://github.com/llvm/llvm-project/pull/84060


More information about the Mlir-commits mailing list