[MLIR][OpenMP] Allow the single operation to have a region
authorKiran Chandramohan <kiran.chandramohan@arm.com>
Mon, 31 Oct 2022 10:34:39 +0000 (10:34 +0000)
committerKiran Chandramohan <kiran.chandramohan@arm.com>
Mon, 31 Oct 2022 10:48:14 +0000 (10:48 +0000)
commit72e9447e29abf111c742da59afe4152150a2f8e7
tree548d3524b6321ceaa857bdf1111082fb772b7d3c
parentda5ded4fc9d8c8edfd4a79fa0e75c2ac9165fa7b
[MLIR][OpenMP] Allow the single operation to have a region

The OpenMP standard specifies the region inside to be a structured
block. This means that branches into or out of the region is not
permitted but branches are permitted inside the OpenMP single region.
This is currently modeled by having a region of kind `AnyRegion` for
all the OpenMP ops. In future we can have a more strictly defined
region.

Fixes #58396.

Reviewed By: peixin

Differential Revision: https://reviews.llvm.org/D137023
mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
mlir/test/Dialect/OpenMP/ops.mlir