@@ -630,7 +630,7 @@ def DistributeOp : OpenMP_Op<"distribute", traits = [
630630 will be executed in parallel by threads in the current context. These
631631 iterations are spread across threads that already exist in the enclosing
632632 region.
633-
633+
634634 The body region can only contain a single block which must contain a single
635635 operation. This operation must be another compatible loop wrapper or an
636636 `omp.loop_nest`.
@@ -1692,28 +1692,32 @@ def CancellationPointOp : OpenMP_Op<"cancellation_point", clauses = [
16921692//===----------------------------------------------------------------------===//
16931693// 2.19.7.3 Declare Mapper Directive
16941694//===----------------------------------------------------------------------===//
1695- def DeclareMapperOp : OpenMP_Op<"declare_mapper", traits = [
1696- Symbol], clauses = [
1697- OpenMP_MapClause
1698- ]> {
1695+ def DeclareMapperOp : OpenMP_Op<"declare_mapper", singleRegion = 1> {
16991696 let summary = "declare mapper directive";
17001697 let description = [{
17011698 The declare mapper directive declares a user-defined mapper for a given
17021699 type, and defines a mapper-identifier that can be used in a map clause.
17031700 }] # clausesDescription;
17041701
1705- let arguments = !con((ins SymbolNameAttr:$sym_name,
1706- OpenMP_PointerLikeType:$var_ptr,
1707- TypeAttr:$var_type), clausesArgs);
1702+ let arguments = (ins SymbolNameAttr:$sym_name,
1703+ TypeAttr:$var_type);
1704+
1705+ let assemblyFormat = "$sym_name `:` $var_type $region attr-dict";
1706+ }
1707+
1708+ def DeclareMapperInfoOp : OpenMP_Op<"declare_mapper_info", clauses = [
1709+ OpenMP_MapClause
1710+ ]> {
1711+ let summary = "declare mapper info";
1712+ let description = [{
1713+ This Op is used to capture the map information related to it's
1714+ parent DeclareMapperOp.]>
1715+ }] # clausesDescription;
17081716
17091717 let builders = [
1710- OpBuilder<(ins CArg<"const DeclareMapperOperands &">:$clauses)>
1718+ OpBuilder<(ins CArg<"const DeclareMapperInfoOperands &">:$clauses)>
17111719 ];
17121720
1713- // Override clause-based assemblyFormat.
1714- let assemblyFormat = "$sym_name `:` $var_ptr `:` type($var_ptr) `:` $var_type" # " oilist(" #
1715- clausesOptAssemblyFormat # ") attr-dict";
1716-
17171721 let hasVerifier = 1;
17181722}
17191723
@@ -1829,7 +1833,7 @@ def MaskedOp : OpenMP_Op<"masked", clauses = [
18291833 ], singleRegion = 1> {
18301834 let summary = "masked construct";
18311835 let description = [{
1832- Masked construct allows to specify a structured block to be executed by a subset of
1836+ Masked construct allows to specify a structured block to be executed by a subset of
18331837 threads of the current team.
18341838 }] # clausesDescription;
18351839
0 commit comments