@@ -1656,6 +1656,49 @@ class OMPAtomicDefaultMemOrderClause final : public OMPClause {
16561656 }
16571657};
16581658
1659+ // / This represents 'self_maps' clause in the '#pragma omp requires'
1660+ // / directive.
1661+ // /
1662+ // / \code
1663+ // / #pragma omp requires self_maps
1664+ // / \endcode
1665+ // / In this example directive '#pragma omp requires' has 'self_maps'
1666+ // / clause.
1667+ class OMPSelfMapsClause final : public OMPClause {
1668+ public:
1669+ friend class OMPClauseReader ;
1670+ // / Build 'self_maps' clause.
1671+ // /
1672+ // / \param StartLoc Starting location of the clause.
1673+ // / \param EndLoc Ending location of the clause.
1674+ OMPSelfMapsClause (SourceLocation StartLoc, SourceLocation EndLoc)
1675+ : OMPClause(llvm::omp::OMPC_self_maps, StartLoc, EndLoc) {}
1676+
1677+ // / Build an empty clause.
1678+ OMPSelfMapsClause ()
1679+ : OMPClause(llvm::omp::OMPC_self_maps, SourceLocation(),
1680+ SourceLocation ()) {}
1681+
1682+ child_range children () {
1683+ return child_range (child_iterator (), child_iterator ());
1684+ }
1685+
1686+ const_child_range children () const {
1687+ return const_child_range (const_child_iterator (), const_child_iterator ());
1688+ }
1689+
1690+ child_range used_children () {
1691+ return child_range (child_iterator (), child_iterator ());
1692+ }
1693+ const_child_range used_children () const {
1694+ return const_child_range (const_child_iterator (), const_child_iterator ());
1695+ }
1696+
1697+ static bool classof (const OMPClause *T) {
1698+ return T->getClauseKind () == llvm::omp::OMPC_self_maps;
1699+ }
1700+ };
1701+
16591702// / This represents 'at' clause in the '#pragma omp error' directive
16601703// /
16611704// / \code
@@ -6349,7 +6392,8 @@ class OMPMapClause final : public OMPMappableExprListClause<OMPMapClause>,
63496392 OpenMPMapModifierKind MapTypeModifiers[NumberOfOMPMapClauseModifiers] = {
63506393 OMPC_MAP_MODIFIER_unknown, OMPC_MAP_MODIFIER_unknown,
63516394 OMPC_MAP_MODIFIER_unknown, OMPC_MAP_MODIFIER_unknown,
6352- OMPC_MAP_MODIFIER_unknown, OMPC_MAP_MODIFIER_unknown};
6395+ OMPC_MAP_MODIFIER_unknown, OMPC_MAP_MODIFIER_unknown,
6396+ OMPC_MAP_MODIFIER_unknown};
63536397
63546398 // / Location of map-type-modifiers for the 'map' clause.
63556399 SourceLocation MapTypeModifiersLoc[NumberOfOMPMapClauseModifiers];
0 commit comments