summaryrefslogtreecommitdiff
path: root/mlir
diff options
context:
space:
mode:
authorValentin Clement <clementval@gmail.com>2023-05-16 08:43:17 -0700
committerValentin Clement <clementval@gmail.com>2023-05-16 08:43:58 -0700
commit0c4d7d14e94de5130d7747bde70c94bce77bb754 (patch)
treec337b6ee7a3dc99017cb1c738a5025af8ed99af4 /mlir
parent33da608ecc0fddbb38b01415d32464db1d867df1 (diff)
downloadllvm-0c4d7d14e94de5130d7747bde70c94bce77bb754.tar.gz
[mlir][openacc] Add ReturnLike trait to acc.yield operation
Just add the trait as acc.yield is a return like op. Reviewed By: razvanlupusoru, jeanPerier Differential Revision: https://reviews.llvm.org/D150617
Diffstat (limited to 'mlir')
-rw-r--r--mlir/include/mlir/Dialect/OpenACC/OpenACC.h1
-rw-r--r--mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td3
2 files changed, 3 insertions, 1 deletions
diff --git a/mlir/include/mlir/Dialect/OpenACC/OpenACC.h b/mlir/include/mlir/Dialect/OpenACC/OpenACC.h
index 4e7db76bc0a3..aadcfff93238 100644
--- a/mlir/include/mlir/Dialect/OpenACC/OpenACC.h
+++ b/mlir/include/mlir/Dialect/OpenACC/OpenACC.h
@@ -20,6 +20,7 @@
#include "mlir/Dialect/OpenACC/OpenACCOpsDialect.h.inc"
#include "mlir/Dialect/OpenACC/OpenACCOpsEnums.h.inc"
#include "mlir/Dialect/OpenACC/OpenACCTypeInterfaces.h.inc"
+#include "mlir/Interfaces/ControlFlowInterfaces.h"
#include "mlir/Interfaces/SideEffectInterfaces.h"
#define GET_TYPEDEF_CLASSES
diff --git a/mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td b/mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
index 52bbdbb2aee8..f920f7e9b95d 100644
--- a/mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
+++ b/mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
@@ -13,6 +13,7 @@
#ifndef OPENACC_OPS
#define OPENACC_OPS
+include "mlir/Interfaces/ControlFlowInterfaces.td"
include "mlir/Interfaces/SideEffectInterfaces.td"
include "mlir/IR/BuiltinTypes.td"
include "mlir/IR/EnumAttr.td"
@@ -859,7 +860,7 @@ def OpenACC_LoopOp : OpenACC_Op<"loop",
}
// Yield operation for the acc.loop and acc.parallel operations.
-def OpenACC_YieldOp : OpenACC_Op<"yield", [Terminator,
+def OpenACC_YieldOp : OpenACC_Op<"yield", [ReturnLike, Terminator,
ParentOneOf<["ParallelOp, LoopOp, SerialOp"]>]> {
let summary = "Acc yield and termination operation";