[mlir][openacc] Add async attribute and optional operand
authorValentin Clement <clementval@gmail.com>
Fri, 30 Jun 2023 17:03:24 +0000 (10:03 -0700)
committerValentin Clement <clementval@gmail.com>
Fri, 30 Jun 2023 17:03:48 +0000 (10:03 -0700)
commitecc7adc46ce926d51022ff5ab5ee60eb61b80972
tree0e7e8c298dd361275744d7d82066cb0ff5e056b2
parent905c9c2de742b46c1e0f7f1ca67acc99271996d7
[mlir][openacc] Add async attribute and optional operand

OpenACC 3.2 allowed the async clause to the data construct. This patch
adds a unit attribute and an optional operand to the data operation to model
the data clause in a similar way it was added to other data operation.
The attribute models the presence of the clause without any argument. When
an argument is provided it is placed in the async operand.

Reviewed By: razvanlupusoru

Differential Revision: https://reviews.llvm.org/D154111
flang/lib/Lower/OpenACC.cpp
mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
mlir/test/Dialect/OpenACC/ops.mlir