@@ -622,7 +622,7 @@ def DistributeOp : OpenMP_Op<"distribute", traits = [
622
622
will be executed in parallel by threads in the current context. These
623
623
iterations are spread across threads that already exist in the enclosing
624
624
region.
625
-
625
+
626
626
The body region can only contain a single block which must contain a single
627
627
operation. This operation must be another compatible loop wrapper or an
628
628
`omp.loop_nest`.
@@ -1655,28 +1655,32 @@ def CancellationPointOp : OpenMP_Op<"cancellation_point", clauses = [
1655
1655
//===----------------------------------------------------------------------===//
1656
1656
// 2.19.7.3 Declare Mapper Directive
1657
1657
//===----------------------------------------------------------------------===//
1658
- def DeclareMapperOp : OpenMP_Op<"declare_mapper", traits = [
1659
- Symbol], clauses = [
1660
- OpenMP_MapClause
1661
- ]> {
1658
+ def DeclareMapperOp : OpenMP_Op<"declare_mapper", singleRegion = 1> {
1662
1659
let summary = "declare mapper directive";
1663
1660
let description = [{
1664
1661
The declare mapper directive declares a user-defined mapper for a given
1665
1662
type, and defines a mapper-identifier that can be used in a map clause.
1666
1663
}] # clausesDescription;
1667
1664
1668
- let arguments = !con((ins SymbolNameAttr:$sym_name,
1669
- OpenMP_PointerLikeType:$var_ptr,
1670
- TypeAttr:$var_type), clausesArgs);
1665
+ let arguments = (ins SymbolNameAttr:$sym_name,
1666
+ TypeAttr:$var_type);
1667
+
1668
+ let assemblyFormat = "$sym_name `:` $var_type $region attr-dict";
1669
+ }
1670
+
1671
+ def DeclareMapperInfoOp : OpenMP_Op<"declare_mapper_info", clauses = [
1672
+ OpenMP_MapClause
1673
+ ]> {
1674
+ let summary = "declare mapper info";
1675
+ let description = [{
1676
+ This Op is used to capture the map information related to it's
1677
+ parent DeclareMapperOp.]>
1678
+ }] # clausesDescription;
1671
1679
1672
1680
let builders = [
1673
- OpBuilder<(ins CArg<"const DeclareMapperOperands &">:$clauses)>
1681
+ OpBuilder<(ins CArg<"const DeclareMapperInfoOperands &">:$clauses)>
1674
1682
];
1675
1683
1676
- // Override clause-based assemblyFormat.
1677
- let assemblyFormat = "$sym_name `:` $var_ptr `:` type($var_ptr) `:` $var_type" # " oilist(" #
1678
- clausesOptAssemblyFormat # ") attr-dict";
1679
-
1680
1684
let hasVerifier = 1;
1681
1685
}
1682
1686
@@ -1792,7 +1796,7 @@ def MaskedOp : OpenMP_Op<"masked", clauses = [
1792
1796
], singleRegion = 1> {
1793
1797
let summary = "masked construct";
1794
1798
let description = [{
1795
- Masked construct allows to specify a structured block to be executed by a subset of
1799
+ Masked construct allows to specify a structured block to be executed by a subset of
1796
1800
threads of the current team.
1797
1801
}] # clausesDescription;
1798
1802
0 commit comments