[Mlir-commits] [mlir] [mlir][async]: Make async.execute operation pure (PR #116544)
Aviad Cohen
llvmlistbot at llvm.org
Sun Nov 17 05:42:42 PST 2024
https://github.com/AviadCo created https://github.com/llvm/llvm-project/pull/116544
None
>From 22ac2cb252f2944db8c4e7fd87e1c04704173457 Mon Sep 17 00:00:00 2001
From: Aviad Cohen <aviad.cohen2 at mobileye.com>
Date: Sun, 17 Nov 2024 15:40:10 +0200
Subject: [PATCH] [mlir][async]: Make async.execute operation pure
---
mlir/include/mlir/Dialect/Async/IR/AsyncOps.td | 3 ++-
mlir/test/Dialect/Async/canonicalize.mlir | 10 ++++++++++
2 files changed, 12 insertions(+), 1 deletion(-)
create mode 100644 mlir/test/Dialect/Async/canonicalize.mlir
diff --git a/mlir/include/mlir/Dialect/Async/IR/AsyncOps.td b/mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
index 33b67921752346..011bffd02a90c5 100644
--- a/mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
+++ b/mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
@@ -38,7 +38,8 @@ def Async_ExecuteOp :
["getEntrySuccessorOperands",
"areTypesCompatible"]>,
AttrSizedOperandSegments,
- AutomaticAllocationScope]> {
+ AutomaticAllocationScope,
+ Pure]> {
let summary = "Asynchronous execute operation";
let description = [{
The `body` region attached to the `async.execute` operation semantically
diff --git a/mlir/test/Dialect/Async/canonicalize.mlir b/mlir/test/Dialect/Async/canonicalize.mlir
new file mode 100644
index 00000000000000..1a74eaa344e169
--- /dev/null
+++ b/mlir/test/Dialect/Async/canonicalize.mlir
@@ -0,0 +1,10 @@
+// RUN: mlir-opt %s -split-input-file -canonicalize | FileCheck %s
+
+// CHECK-NOT: async.execute
+
+func.func @empty_execute() {
+ %token = async.execute {
+ async.yield
+ }
+ return
+}
More information about the Mlir-commits
mailing list